Rx removing 'href' attribute value

Under what conditions does the ePhox control remove the value of an anchor’s ‘href’ attribute ?

As part of our content migration we are updating the content body of one of our content items (an Article content type) and inserting an <a href> link tag that points to some other content in Rhythmyx but we are finding that the value of the ‘href’ attribute we supply is being cleared out.

Rhythmyx was preserving this value before (in some earlier tests) but suddenly no longer is and there’s a strong suspicion that HTML Tidy is modifying the content in some way. We have another support issue open to figure out how to disable HTML Tidy where it does not appear you can do in any reliable way.

Ed, could you reformat this message so that it is readable? You need to escape < as <

Thanks

Dave

Sorry, didn’t realize it looked unreadable as it looks just fine to me. Anyways, here’s my original question - hope it looks better:


Under what conditions does the ePhox control remove the value of an anchor’s ‘href’ attribute ?

As part of our content migration we are updating the content body of one of our content items (an Article content type) and inserting an link tag that points to some other content in Rhythmyx but we are finding that the value of the ‘href’ attribute we supply is being cleared out.

Rhythmyx was preserving this value before (in some earlier tests) but suddenly no longer is and there’s a strong suspicion that HTML Tidy is modifying the content in some way. We have another support issue open to figure out how to disable HTML Tidy where it does not appear you can do in any reliable way.

Ed,

What other attributes does the <a> tag have? I believe that “inline” links usually have a relationship id, which determines how the processing is performed.

There are 2 ways that Tidy can be run: one is inside Ephox itself and the other is as part of the “text cleanup” exit. Do you know which way Tidy in invoked in your case?

Dave

Here’s an example of a link that we create manually:

<a href=“http://localhost:9992/Rhythmyx/assembler/render?sys_revision=1&sys_siteid=305&sys_authtype=0&sys_contentid=1004&sys_variantid=557&sys_folderid=&sys_context=0” inlinetype=“rxhyperlink” rxinlineslot=“103” sys_dependentid=“1004” sys_dependentvariantid=“557” sys_folderid="" sys_relationshipid="" sys_siteid=“305” title="">here is an article link</a>

Even though I have not set the sys_relationshipid I was finding that once I saved the content to Rhythmyx it was actually creating the relationshipid for me (ie. it found the linked content I was referring to with the dependentid).
This was working for a while and then suddenly Rx/Tidy began removing whatever we had in the ‘href’ attribute.

We tried turning off Tidy by editing the sys_Templates.xsl file and removing the psxctl:Dependencies tag for the sys_EditLive control, we’ve added our custom tag to \Rhythmyx\rxW2Ktidy.properties, and we’ve changed the ‘Field data properties’ of the sys_EditLive control to:

Allow inline links (checked)
Clean up broken inline links (unchecked)
May contain identifiers (checked)

To answer your question about when Tidy was being invoked it must have been part of the text cleanup exit. What was strange though was that we thought we were totally disabling Tidy by editing the sys_Templates.xsl file but that was not the case (it was still running anyways).

Ed,

There is a “system extension” called “sys_xdTextCleanup”. When you include an Ephox control in a content editor, this “extension” gets run BEFORE the content editor runs.

The “inline link” processing requires that the contents of a rich text be “well formed” (it uses a SAX parser to find and process the links).

While it’s possible to disable the text cleanup exit, it’s risky, since if the content is not well formed, you will get errors when you try to save an item.

Dave

We (Sharyn) figured out what the problem was:
It turns out that the custom content type we were using was not in the allowed content types for the ‘sys_inline_link’ slot. Once we added it the value of the href attribute was preserved.

That would do it.

Thanks for posting the solution.

Dave