<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 05:11:40 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLDATA-131] Optionally use the name field only for new nodes, and avoid back-renaming.</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLDATA-131</link>
                <project id="10054" key="MGNLDATA">Magnolia Data Module (closed)</project>
                    <description>&lt;p&gt;The patch for &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLDATA-130&quot; title=&quot;Error while renaming sub-items.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLDATA-130&quot;&gt;&lt;del&gt;MGNLDATA-130&lt;/del&gt;&lt;/a&gt; opened a few other logical problems: in the code of GenericDataAdminTree, if the node is renamed, the dialog &quot;nameField&quot; property is read and the corresponding property is set with the new node name, or worse, a new &quot;name&quot; property is created with the new node name, even if it was not present in the beginning.&lt;br/&gt;
This is not always the desired behaviour, because the name used in the tree may have spaces and special characters removed, but the node data inside the node can have spaces and special characters.&lt;/p&gt;

&lt;p&gt;Logically speaking, I may want a field that is strongly coupled with node name, which is the current intention of the code, so whether I edit it in the tree or in a dialog it stays synchronized on both sides. And in this case we should alter the data save handler to write the name field just like the name used in the tree (spaces and special chars removed/escaped), to be perfectly consistent.&lt;/p&gt;

&lt;p&gt;On the other side I may simply want a name field that is just used once to give a reasonable name to new nodes, just to avoid the 0, 00, 01, etc which usually have no meaning for the end user. This value should be used either once at creation or each time that value change, but only in the nodeData-&amp;gt;name direction and never in the opposite one.&lt;/p&gt;

&lt;p&gt;What do you think? I&apos;m asking something too complex? I&apos;d do this adding a &quot;oneWayNameField&quot; boolean in the dialog configuration, making GenericDataAdminTree check also for this before renaming, and making saveHandler check for this when saving the node, and changing the name value accordingly (leaving as is or using the tree name also for the node data value).&lt;/p&gt;

&lt;p&gt;Attached a simple patch for GenericDataAdminTree change. If there is a node data &quot;oneWayNameField&quot; set as true, the node name field is not changed when the node is renamed.&lt;/p&gt;</description>
                <environment></environment>
        <key id="21378">MGNLDATA-131</key>
            <summary>Optionally use the name field only for new nodes, and avoid back-renaming.</summary>
                <type id="4" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10890&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="2">Won&apos;t Fix</resolution>
                                        <assignee username="had">Jan Haderka</assignee>
                                    <reporter username="dfghi">Danilo Ghirardelli</reporter>
                        <labels>
                    </labels>
                <created>Fri, 12 Aug 2011 18:23:22 +0200</created>
                <updated>Thu, 26 Apr 2012 15:26:34 +0200</updated>
                            <resolved>Wed, 25 Apr 2012 08:50:50 +0200</resolved>
                                    <version>1.6.3</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                                                                <comments>
                            <comment id="38718" author="dfghi" created="Mon, 29 Aug 2011 15:08:52 +0200"  >&lt;p&gt;This issue is expecially annoying because there is no way to &quot;solve&quot; it locally by subclassing the existing GenericDataAdminTree... Unfortunately the &quot;renameNode&quot; method of GenericDataAdminTree calls the super method with the same name: if I extend the class I can&apos;t call in any way the &quot;renameNode&quot; method of AdminTreeMVCHandler, but I can call only the &quot;renameNode&quot; method of GenericDataAdminTree (which is the one I want to replace) or copying the entire renameNode from AdminTreeMVCHandler (which I don&apos;t exactly like as solution).&lt;br/&gt;
In java there is no super.super...&lt;/p&gt;</comment>
                            <comment id="46386" author="ochytil" created="Tue, 17 Apr 2012 10:44:29 +0200"  >&lt;p&gt;Solved with &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLDATA-130&quot; title=&quot;Error while renaming sub-items.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLDATA-130&quot;&gt;&lt;del&gt;MGNLDATA-130&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;</comment>
                            <comment id="46389" author="dfghi" created="Tue, 17 Apr 2012 11:12:02 +0200"  >&lt;p&gt;I&apos;m sorry but this issue is related to &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLDATA-130&quot; title=&quot;Error while renaming sub-items.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLDATA-130&quot;&gt;&lt;del&gt;MGNLDATA-130&lt;/del&gt;&lt;/a&gt; but NOT a duplicate of that, and it&apos;s not in any way resolved with &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLDATA-130&quot; title=&quot;Error while renaming sub-items.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLDATA-130&quot;&gt;&lt;del&gt;MGNLDATA-130&lt;/del&gt;&lt;/a&gt;. Can I ask you to re-read this?&lt;/p&gt;</comment>
                            <comment id="46394" author="ochytil" created="Tue, 17 Apr 2012 11:49:54 +0200"  >&lt;p&gt;Re-opening, sorry Danilo, wrong issue number in my notes and no double-check.&lt;/p&gt;</comment>
                            <comment id="46397" author="dfghi" created="Tue, 17 Apr 2012 12:02:00 +0200"  >&lt;p&gt;Would you also mind re-assigning it to someone that will eventually take a look? &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="46543" author="had" created="Wed, 25 Apr 2012 08:50:50 +0200"  >&lt;p&gt;The whole reason for existence of the &lt;tt&gt;name&lt;/tt&gt; property and it being kept in sync with node name is to allow some more complex queries where you can&apos;t mix calculated props such as &lt;tt&gt;jcr:path&lt;/tt&gt; or &lt;tt&gt;jcr:name&lt;/tt&gt; with node properties. Not keeping value of &lt;tt&gt;name&lt;/tt&gt; property in sync w/ node name would defy this purpose.&lt;br/&gt;
If you need to keep original name or some other user friendly name of each data item, you are free to add such properties and handle them as appropriate.&lt;/p&gt;</comment>
                            <comment id="46639" author="dfghi" created="Thu, 26 Apr 2012 15:26:34 +0200"  >&lt;p&gt;Ok, but then there is still something missing in the process. Take for example the online demo, go to the &quot;Company&quot; menu and check the &quot;Big-Flower-Inc&quot; node. If you open that, the &lt;tt&gt;name&lt;/tt&gt; property is set to &quot;Big Flower Inc&quot; (with spaces), and the node name is &quot;Big-Flower-Inc&quot; (with hypens). This means that the node name and the &lt;tt&gt;name&lt;/tt&gt; property are already out of sync.&lt;/p&gt;

&lt;p&gt;If you change the node name from the tree, the &lt;tt&gt;name&lt;/tt&gt; property is correctly updated (and with hypens, just like the node name), but if you open the dialog for the element and change the name, i.e. writing spaces instead of hypens, you will see that the node name will be update with hypens, but the &lt;tt&gt;name&lt;/tt&gt; property will be left with spaces. Also happens when creating a new element in the tree, not only in editing. I&apos;d suggest that if the desired behaviour is to have them always in sync, you should change the SaveHandler of the data nodes and force a jcrPath escape when saving the &lt;tt&gt;name&lt;/tt&gt; property. Jackrabbit queries may have different results when the property is saved with or without spaces (or better, with or without jcrPath escaping), depending also on the indexing configuration.&lt;/p&gt;

&lt;p&gt;Since this is the current behaviour, I thought that keeping the &lt;tt&gt;name&lt;/tt&gt; property really in sync was just a &quot;nice&quot; feature, and I proposed to make it optional, but at this point I think you should really fix the saveHandler to make them equals.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10020">
                    <name>dependency</name>
                                            <outwardlinks description="depends upon">
                                        <issuelink>
            <issuekey id="21287">MGNLDATA-130</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="15007" name="oneWay.patch" size="4497" author="dfghi" created="Mon, 29 Aug 2011 12:20:41 +0200"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>gmail.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 17 Apr 2012 10:44:29 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mmuehlebach</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            11 years, 43 weeks, 3 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>7.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>dfghi</customfieldvalue>
            <customfieldvalue>had</customfieldvalue>
            <customfieldvalue>ochytil</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes">
                        <customfieldname>Patch included</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10100"><![CDATA[Yes]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03zcf:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>23336</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>