? ? Failure

User tests: Successful: Unsuccessful:

avatar lpln07
lpln07
31 Aug 2017

Summary of Changes

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

Testing Instructions

  1. Activate the System - Language Filter Plugin and Versioning

  2. Create a new Article and select a Language thats not "All".

  3. Save the Article.

  4. Go to Component -> Multilingual Association.

  5. Filter for Article and the chosen Language and select your Article.

  6. Press the "Compare"-Button.

  7. Close the Pop-up.

  8. Make changes to your Text.

  9. Press the "Compare"-Button again.

  10. Press the "Show HTML"-Button.

  11. Repeat the complete Testing instructions but between Step 3. and 4. make changes to the Article and Save it.

Expected result

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.

loremipsum png

@icampus @lavipr @Heggi93 @JannikMichel

avatar joomla-cms-bot joomla-cms-bot - change - 31 Aug 2017
Category Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins
avatar CiverBlack CiverBlack - open - 31 Aug 2017
avatar CiverBlack CiverBlack - change - 31 Aug 2017
Status New Pending
avatar infograf768
infograf768 - comment - 31 Aug 2017

Hmm... Not sure the editor plugin is the way to go. Will test this PR tomorrow.

avatar lavipr lavipr - change - 31 Aug 2017
Labels Added: ? ?
avatar JannikMichel
JannikMichel - comment - 1 Sep 2017

@infograf768 could you explain why an editor plugin is not the way to go?

avatar infograf768
infograf768 - comment - 1 Sep 2017

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.

  1. The comparison should ALWAYS be done vs a specific reference language.
    Modifying items in that language would decide if the associated items are
    => Up-to-date
    => Outdated and MAY require updating

To do that we have to define which language will be the reference.
This can be done by a new Option in com_associations.

options

  1. Then we need a new Manager in com_associations.
    This Manager will display the status of the associated items vs their reference in the Reference language specified above.
    Something like:

statusmanager

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.

screen shot 2017-09-01 at 09 57 11

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.

avatar CiverBlack CiverBlack - change - 1 Sep 2017
The description was changed
avatar CiverBlack CiverBlack - edited - 1 Sep 2017
avatar lpln07
lpln07 - comment - 1 Sep 2017

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.

avatar franz-wohlkoenig franz-wohlkoenig - change - 11 Apr 2019
Category Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins Administration com_content Front End Installation JavaScript Plugins SQL
avatar sanderpotjer
sanderpotjer - comment - 5 May 2019

@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.

avatar wilsonge
wilsonge - comment - 5 May 2019

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

avatar wilsonge wilsonge - close - 5 May 2019
avatar wilsonge wilsonge - change - 5 May 2019
Status Pending Closed
Closed_Date 0000-00-00 00:00:00 2019-05-05 14:01:31
Closed_By wilsonge
Labels Removed: J4 Issue
avatar joomla-cms-bot joomla-cms-bot - change - 5 May 2019
Category Administration com_content SQL Installation JavaScript Front End Plugins Administration com_content Language & Strings SQL Installation JavaScript Front End Plugins
avatar infograf768
infograf768 - comment - 5 May 2019

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.

Add a Comment

Login with GitHub to post a comment