User tests: Successful: Unsuccessful:
Added a Compare Button to the Multilingual Associations Editor as a Core Plugin. Which shows the differences made since the second last saved version of a component. Also you are able to show or hide HTML-Tags in your content.
Testing Instructions
Activate the System - Language Filter Plugin and Versioning
Create a new Article and select a Language thats not "All".
Save the Article.
Go to Component -> Multilingual Association.
Filter for Article and the chosen Language and select your Article.
Press the "Compare"-Button.
Close the Pop-up.
Make changes to your Text.
Press the "Compare"-Button again.
Press the "Show HTML"-Button.
Repeat the complete Testing instructions but between Step 3. and 4. make changes to the Article and Save it.
Your are able to complete every step of the test instructions and the text is shown like below, with deleted parts in red and added parts in green.
Category | ⇒ | Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins |
Status | New | ⇒ | Pending |
Labels |
Added:
?
?
|
@infograf768 could you explain why an editor plugin is not the way to go?
Let me try to explain how I see this feature.
This PR, imho, jumps too fast to what should be a second step, although it is really a good job!
For this to be really useful, let's remember the old joomfish.
To do that we have to define which language will be the reference.
This can be done by a new Option in com_associations.
The first field lets chose the type of items (basically ANY type which has a modified date
in db. This means we may have to add such a column for menu items), or find another solution to compare dates (see issues below).
The second field lets select the associated language.
Links should redirect to the face to face page ( OR another face to face page) where the ideal would be that any change in the Reference item would display the way it shows (or not) in this PR (when the associated item is outdated) and this without clicking on the new editor-xtd.
The limit of the editor-xtd is that it only compares editor content and not any other aspects of the Reference item.
Comparing all aspects of the Reference item may be too complex indeed to implement and the editor-xtd would in that case be a step to reach that goal.
In any case, one should consider implementing the comparison at least also for categories AND, very important, make sure there is a way for 3pd to implement this in their multilingual component.
The way it is done now is that the editor-xtd does not display anymore after saving the reference. Why should we do have to save the reference? Imho, the comparison should only show when modified date of the reference item is newer than the Target modifed date.
EDIT: Let's say you save anyway. Next time you load the same reference, the compare button is back and displays again the comparison....
In any case, if a reference item modified date is equal to the associated item modified date (I.e. up-to-date), then the editor-xtd should NOT be available in the editor bar.
Comparing modified date for items simplifies drastically the user job.
One may need to only modify the Target, even if it is up-to-date.
When saving existing target and closing, both reference and target must have the same modified date, which is not the case today and should be solved
A possibility is to add a "Save Both" toolbar button which would indeed, normally, save the same modified date.
But my tests show that it is not the case for a new associated item in the existing code when saving the target.
Therefore this is the more important issue to solve. A new table? A new way to synch modified date?
The existing manager and face to face should remain imho usable as is, i.e. letting user choose reference language in the existing manager.
Note: com_associations is quite unstable at this stage (not sure it is due to this PR) as one may have to click/close and click again on the associated item icon to get the correct face to face.
I hope this helps.
Ok, thank for the detailed post.
I forgot to detail in the test instructions that versioning needs to be active for this plugin to work. We don´t compare Target and Reference, we compare the second last version of the component with the text in the editor.
Also this pull request stands in relation to another pull request that isn´t out yet. This other pull request will introduce a master-slave relation between components on a multilingual joomla installation. So you can see if Article B with is a Slave of Article A is up-to-date with his master or not.
Also we are thinking about including a dropdown where you can choose with witch version you want to compare the content of the editor. If we or someone else does that it would also be helpful if the slave knows which version of the master was the last it was up-to-date.
I will link to related pull requests as soon as there are out.
Category | Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins | ⇒ | Administration com_content Front End Installation JavaScript Plugins SQL |
@wilsonge @franz-wohlkoenig no activity for over 1,5 year and additional changes were requested. Suggesting to close this one.
@lpln07 thanks for your PR! If you would like to get this in Joomla I recommend opening a new PR against the latest 4.0-dev branch.
Given the related pull requests never came out I'll close for now per @sanderpotjer 's comment. But this definitely has potential and would be interested in seeing this develop in the future
Status | Pending | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2019-05-05 14:01:31 |
Closed_By | ⇒ | wilsonge | |
Labels |
Removed:
J4 Issue
|
Category | Administration com_content SQL Installation JavaScript Front End Plugins | ⇒ | Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins |
Note:
Since then we had a GSOC project to implement a similar proposal by doing it the right way (i.e. in com_associations).
Alas, the project was never completed.
Hmm... Not sure the editor plugin is the way to go. Will test this PR tomorrow.