<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 10:32:38 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>[MGNLHARDLK-74] Locked pages using JCR native API cannot be edited by anyone</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLHARDLK-74</link>
                <project id="12090" key="MGNLHARDLK">Project - Telia - Hard Locking (closed)</project>
                    <description>&lt;p&gt;After review and refactor hard-locking module, we decided to use JCR native lock support instead of hooking into MagnoliaAccessProvider and provide the custom implementation for locking. This helps end user not to configure their repository access provider anymore and simplify the implementation a lot. However this lead to an issue that:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;By using JCR native lock for hard-locking module, user who locked the page cannot edit the page anymore because it is JCR designed purpose. Who lock the item can have the lock token to unlock it and &apos;lock-superuser&apos; role is the role for the other one to unlock content&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;JCR function APIs: &lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;javax.jcr.lock.LockManager.lock&lt;/li&gt;
	&lt;li&gt;javax.jcr.lock.LockManager.unlock&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;*This feature is conflicted with our declared function in &lt;a href=&quot;https://wiki.magnolia-cms.com/display/SERVICES/Hard+Locking+submodule*&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://wiki.magnolia-cms.com/display/SERVICES/Hard+Locking+submodule*&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Hard Locking nodes ensures that only the user who locked the node is able to make changes to it until it is unlocked again.&lt;/p&gt;&lt;/blockquote&gt;</description>
                <environment></environment>
        <key id="69214">MGNLHARDLK-74</key>
            <summary>Locked pages using JCR native API cannot be edited by anyone</summary>
                <type id="1" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10883&amp;avatarType=issuetype">Bug</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</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="10000">Won&apos;t Do</resolution>
                                        <assignee username="zdenekskodik">Zdenek Skodik</assignee>
                                    <reporter username="viet.nguyen">Viet Nguyen</reporter>
                        <labels>
                    </labels>
                <created>Thu, 23 Aug 2018 13:46:54 +0200</created>
                <updated>Mon, 1 Oct 2018 14:26:50 +0200</updated>
                            <resolved>Mon, 1 Oct 2018 14:19:09 +0200</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                    <progress percentage="100">
                                    <originalProgress>
                                                    <row percentage="0" backgroundColor="#89afd7"/>
                                                    <row percentage="100" backgroundColor="transparent"/>
                                            </originalProgress>
                                                    <currentProgress>
                                                    <row percentage="100" backgroundColor="#51a825"/>
                                                    <row percentage="0" backgroundColor="#ec8e00"/>
                                            </currentProgress>
                            </progress>
                                    <aggregateprogress percentage="100">
                                    <originalProgress>
                                                    <row percentage="0" backgroundColor="#89afd7"/>
                                                    <row percentage="100" backgroundColor="transparent"/>
                                            </originalProgress>
                                                    <currentProgress>
                                                    <row percentage="100" backgroundColor="#51a825"/>
                                                    <row percentage="0" backgroundColor="#ec8e00"/>
                                            </currentProgress>
                            </aggregateprogress>
                                            <timeestimate seconds="0">0d</timeestimate>
                            <timespent seconds="14400">0.5d</timespent>
                                <comments>
                            <comment id="167555" author="rgange" created="Fri, 24 Aug 2018 13:25:57 +0200"  >&lt;p&gt;To me this does not seem like such a big deal. If the person wants to edit it then they must unlock it to do so. Perhaps there may even be use cases where this makes sense for everyone to be locked out.&lt;/p&gt;

&lt;p&gt;I see this as the same type of thing where a user in an application goes into &quot;admin mode&quot; or something like that. The system prompts the user that in order to make the change they must enter a different mode. Perhaps we could do something like that.&lt;/p&gt;</comment>
                            <comment id="167710" author="viet.nguyen" created="Tue, 28 Aug 2018 10:09:23 +0200"  >&lt;p&gt;After evaluated different approaches including &lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Update all user actions to support this feature --&amp;gt; too many actions and inherited actions&lt;/li&gt;
	&lt;li&gt;Filter all logged in user to add his session to locked session --&amp;gt; fail due to multiple JCR sessions are created within one user session. Reference: &lt;a href=&quot;https://git.magnolia-cms.com/projects/PLATFORM/repos/main.pub/browse/magnolia-core/src/main/java/info/magnolia/repository/DefaultRepositoryManager.java#359&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.magnolia-cms.com/projects/PLATFORM/repos/main.pub/browse/magnolia-core/src/main/java/info/magnolia/repository/DefaultRepositoryManager.java#359&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Reflection or using AspectJ to change existing implementation --&amp;gt; slow down system performance and lead to very complicated changes with lots of risks.&lt;/li&gt;
&lt;/ul&gt;


&lt;hr /&gt;

&lt;p&gt;Final solution:&lt;br/&gt;
Utilize webapp classloader default mechanism that will load classes under WEB-INF/classes with higher priority than classes under WEB-INF/lib (&apos;jar&apos; files). We provided a fixed LockInfo.class that will override existing Jackrabbit core class and put it under WEB-INF/classes/org/apache/jackrabbit/core/lock/LockInfo.class &lt;br/&gt;
This will &apos;patch&apos; current LockInfo - check lock holder function follow our expectation.&lt;/p&gt;

&lt;p&gt;Zip file here:  &lt;span class=&quot;nobr&quot;&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/attachment/47405/47405_org.zip&quot; title=&quot;org.zip attached to MGNLHARDLK-74&quot;&gt;org.zip&lt;sup&gt;&lt;img class=&quot;rendericon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/link_attachment_7.gif&quot; height=&quot;7&quot; width=&quot;7&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/sup&gt;&lt;/a&gt;&lt;/span&gt; &lt;br/&gt;
How to use it: copy zip file to your deployed WEB-INF/classes folder then unzip it.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;This ticket is fixed under this commit:&lt;br/&gt;
&lt;a href=&quot;https://git.magnolia-cms.com/projects/SERVICES/repos/hard-locking/commits/1549a2cedc4b52664d616d52aec6db725724c334&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.magnolia-cms.com/projects/SERVICES/repos/hard-locking/commits/1549a2cedc4b52664d616d52aec6db725724c334&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="167980" author="zdenekskodik" created="Thu, 30 Aug 2018 10:26:09 +0200"  >&lt;p&gt;Could you please elaborate on the rationale behind such a decision? I&apos;d rather hesitate to patch JR impl directly, nor even rely on classloading order, which might vary between various app servers so as might be a subject of change at various deployments. We&apos;ve came up with a custom mgnl AccessControlProvider right to target quirks in JR API and to me it sounds reasonable to expect those who wanna have even more strict provider to configure another one, extending the default one.  &lt;/p&gt;</comment>
                            <comment id="167985" author="viet.nguyen" created="Thu, 30 Aug 2018 10:41:13 +0200"  >&lt;p&gt;Yes &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=zdenekskodik&quot; class=&quot;user-hover&quot; rel=&quot;zdenekskodik&quot;&gt;zdenekskodik&lt;/a&gt;, &lt;/p&gt;

&lt;p&gt;I&apos;d rather not to patch JR if it is not necessary. If you had a chance to go over our custom AccessControlProvider, you&apos;ll see how much better if we can simply patch LockInfo.&lt;br/&gt;
I had research on different supported application servers and here is the result for class loading order, updated our &lt;a href=&quot;https://git.magnolia-cms.com/projects/SERVICES/repos/hard-locking/browse/README.md?at=refs%2Fheads%2Fmodule-upgrade&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;README.md&lt;/a&gt; also:&lt;/p&gt;

&lt;p&gt;Allow lock owner to edit content&lt;br/&gt;
An automatic patch will be copy to your configured &apos;magnolia.home&apos;/WEB-INF/classes/org/apache/jackrabbit/core/lock/LockInfo.class This should automatically work for Tomcat and Websphere, for Weblogic, you&apos;ll have to specify your &apos;prefer-web-inf-classes&apos; option accordingly. Also note that after module installation, user must restart your server or reload your webapp context so that the classloader can load classes again from the beginning. This time, our patch will take affect which means it will not affect right after installation, lock owners are not able to edit their content right away without server restart or webapp context reload.&lt;/p&gt;

&lt;p&gt;Tomcat application server&lt;/p&gt;

&lt;p&gt;To enable lock owner to edit his locked content, we have to patch Jackrabbit core LockInfo class which is the core class to check for lock holder information. Users would like to use this function would have to apply this patch by copying &apos;org&apos; folder below &apos;override&apos; folder to &apos;WEB-INF/classes&apos; folder under your deployed webapp. We also provided an &apos;org.zip&apos; file so that you just have to copy it to your &apos;WEB-INF/classes&apos; folder then unzip it. This will effectively made LockInfo.class (our patched one) available to webapp class-loader and allow it loading this class instead of Jackrabbit provided one.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://tomcat.apache.org/tomcat-8.5-doc/class-loader-howto.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://tomcat.apache.org/tomcat-8.5-doc/class-loader-howto.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Weblogic 12 Configuration - prefer-web-inf-classes&lt;/p&gt;

&lt;p&gt;Property &apos;prefer-web-inf-classes&apos; has to be specified for the classes specified in Web-INF to take precendence over classes present in application library of weblogic server. &lt;a href=&quot;https://docs.oracle.com/middleware/1212/wls/WLPRG/classloading.htm#WLPRG285&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.oracle.com/middleware/1212/wls/WLPRG/classloading.htm#WLPRG285&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;IBM Websphere 8.5&lt;/p&gt;

&lt;p&gt;The sequence is similar to Tomcat 8, also it&apos;s configurable. &lt;a href=&quot;https://www.ibm.com/support/knowledgecenter/en/SSAW57_8.5.5/com.ibm.websphere.nd.multiplatform.doc/ae/trun_classload_web.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://www.ibm.com/support/knowledgecenter/en/SSAW57_8.5.5/com.ibm.websphere.nd.multiplatform.doc/ae/trun_classload_web.html&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="168066" author="zdenekskodik" created="Fri, 31 Aug 2018 07:35:29 +0200"  >&lt;p&gt;I dream about the world where it&apos;s up to the instance owner to drive their appservers, I won&apos;t be happy as well if something from outside demands me to configure classloaders this or that way, there might be internal policies for not doing it that way, or another intentions on using the appservers. It&apos;s quite fine if they deploy their local changes that way, but external solutions should ideally be delivered in a clean and standard format - jar, than having patches here or there.&#160;&lt;/p&gt;

&lt;p&gt;Maintenance wise there would also be an extra effort required any time a major will bring new JR into play.&lt;/p&gt;

&lt;p&gt;Also It&apos;s not an appservers agnostic solution as it used to be. We could have a hard locking parent webapp/pom providing the JR config files with preconfigured LockAwareMagnoliaAccessProvider customers can just use/extend as an alternative option, without having to follow some post-installation steps. IMHO having to reconfigure your appservers is a bit more demanding that updating few workspace.xml files.&#160;&lt;/p&gt;

&lt;p&gt;Sure there are some harder times on distributing the lock permissions at the provider, still workaround-able and better to me than maintaining a fork.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="168067" author="viet.nguyen" created="Fri, 31 Aug 2018 08:24:01 +0200"  >&lt;p&gt;I agree with you &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=zdenekskodik&quot; class=&quot;user-hover&quot; rel=&quot;zdenekskodik&quot;&gt;zdenekskodik&lt;/a&gt;, however we spent quite a lot of time on this issue and also as &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=rgange&quot; class=&quot;user-hover&quot; rel=&quot;rgange&quot;&gt;rgange&lt;/a&gt; mentioned, to a certain extent, hard-locking module support JCR hard lock, user have to unlock to edit his content.&lt;br/&gt;
I have implemented an installation task that automatically copy patch file to its folder to free them from doing deployment. So customer want to edit locked content by his lock owner (the missing function) have to accept our patch temporarily. LockAwareAccessProvider messing with principals and permissions while not actually &apos;lock&apos; the node as it should be. Also it introduced lots of complication which hard for maintenance and support, so rather not to use.&lt;br/&gt;
A proper way after deeply investigation is that our Core open up the possibility to configure MgnlAuditLoggingContentDecoratorSessionWrapper or MgnlAuditLoggingContentDecoratorWorspaceWrapper so that &lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;For each node / property operation, we support before change and after change interceptors&lt;/li&gt;
	&lt;li&gt;For each interceptor, we support synchronous / asynchronous handlers to those events&lt;/li&gt;
	&lt;li&gt;Then to support custom locking and transactional locking, we&apos;ll register our custom content lock before apply any change action&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;--&amp;gt; I&apos;ll create an improvement on Core and link this ticket into it.&lt;/p&gt;</comment>
                            <comment id="168071" author="viet.nguyen" created="Fri, 31 Aug 2018 08:42:04 +0200"  >&lt;p&gt;Link ticket created - &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MAGNOLIA-7365&quot; title=&quot;Improve MgnlAuditLoggingContentDecoratorSessionWrapper make it configurable or allow other interceptors involve&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MAGNOLIA-7365&quot;&gt;MAGNOLIA-7365&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="168612" author="zdenekskodik" created="Mon, 10 Sep 2018 05:46:52 +0200"  >&lt;p&gt;Please correct me if i&apos;m wrong - hard locking aka i lock the page so that nobody else can edit it to concurrently override my writes i&apos;m going to do. If JCR native lock doesn&apos;t meet this criteria I have hard time to understand why to follow this way. I believe that was considered in the early stages as well, but dropped. Ideally we want to have hard locking available so that ppl can use it. It doesn&apos;t have to necessarily reach the highest state of art with its very first release, keeping some room to properly implement improvements later on. From my point of view, inheriting the initial AccessProvider is simply better than forking JR with the first release. Later on the module can eventually introduce its own RepositoryManager allowing you to have a tailored ContentDecorator. &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=rgange&quot; class=&quot;user-hover&quot; rel=&quot;rgange&quot;&gt;rgange&lt;/a&gt; ?&lt;/p&gt;</comment>
                            <comment id="168629" author="rgange" created="Mon, 10 Sep 2018 10:29:37 +0200"  >&lt;p&gt;I&apos;m in total agreement with Zdenek. As far as I know the Hard Locking was working for TS. I think what we should do is keep the code that you have created using the native lock. Perhaps down the road we can still use some of it. But let&apos;s move back to the original working design. I know that you (Viet) have put a lot of time into this moving to the new concept but it appears we have hit a wall here. It was a good attempt at a new solution but let&apos;s not get too crazy with changing lower level stuff to make the new concept work. This could be a really nice feature to be part of the product someday. &lt;/p&gt;
</comment>
                            <comment id="168649" author="viet.nguyen" created="Mon, 10 Sep 2018 12:10:24 +0200"  >&lt;p&gt;So, we can revert back to our 1st merge PR here for our original version before making any API changes &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/wink.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;br/&gt;
Merge pull request #1 in SERVICES/hard-locking from SERVICESRD-48 to master&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;commit &apos;9f143e6e5ac2c854c0fd0e928528aba9065bcefe&apos;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                            <comment id="168708" author="viet.nguyen" created="Tue, 11 Sep 2018 05:33:03 +0200"  >&lt;p&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=zdenekskodik&quot; class=&quot;user-hover&quot; rel=&quot;zdenekskodik&quot;&gt;zdenekskodik&lt;/a&gt; could you review changes, QA and close this issue, fixed as discussion.&lt;/p&gt;</comment>
                            <comment id="168710" author="zdenekskodik" created="Tue, 11 Sep 2018 07:26:51 +0200"  >&lt;p&gt;Yup..&#160;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=rgange&quot; class=&quot;user-hover&quot; rel=&quot;rgange&quot;&gt;rgange&lt;/a&gt;&#160;is there any QA workflow already in place for extension modules or review&amp;amp;preintQA can be done by a single guy?&lt;/p&gt;</comment>
                            <comment id="168739" author="zdenekskodik" created="Tue, 11 Sep 2018 10:20:53 +0200"  >&lt;p&gt;So after a review we&apos;ll try to treat the status quo by evaluating a dedicated repository manager wrapping the sessions hard-lock way, as if possible we&apos;d prefer to not loose all the work done since than just because of those few lines at JR.&#160;&lt;/p&gt;</comment>
                            <comment id="168765" author="rgange" created="Tue, 11 Sep 2018 12:29:53 +0200"  >&lt;p&gt;Typically I will install the module and try it out. This way I can better create the required docs if I have firsthand usage of the module. &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=viet.nguyen&quot; class=&quot;user-hover&quot; rel=&quot;viet.nguyen&quot;&gt;viet.nguyen&lt;/a&gt; if you could put a rough draft of the docs together I will use that as my starting point. &lt;/p&gt;</comment>
                            <comment id="168811" author="viet.nguyen" created="Wed, 12 Sep 2018 04:57:38 +0200"  >&lt;p&gt;Yes &lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=rgange&quot; class=&quot;user-hover&quot; rel=&quot;rgange&quot;&gt;rgange&lt;/a&gt;, please reference to README.md file in the project for the installation and usage draft, we&apos;ll try to keep it up to date as a practice. Also let&apos;s consider reuse Javadoc to alleviate Docs team, maybe somehow auto generate configuration parts and technical detail level implementation notes.&lt;/p&gt;</comment>
                            <comment id="169760" author="viet.nguyen" created="Tue, 25 Sep 2018 08:46:35 +0200"  >&lt;p&gt;Improvement mechanism for this in DEV-816.&lt;/p&gt;</comment>
                            <comment id="170173" author="rgange" created="Mon, 1 Oct 2018 14:19:09 +0200"  >&lt;p&gt;Reverted changes that led to this issue. Meaning, the native locking. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10040">
                    <name>causality</name>
                                            <outwardlinks description="caused by">
                                                        </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10020">
                    <name>dependency</name>
                                            <outwardlinks description="depends upon">
                                        <issuelink>
            <issuekey id="69528">MAGNOLIA-7365</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="47406" name="LockInfo.java" size="10234" author="viet.nguyen" created="Tue, 28 Aug 2018 10:27:52 +0200"/>
                            <attachment id="47405" name="org.zip" size="6761" author="viet.nguyen" created="Tue, 28 Aug 2018 10:08:33 +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>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Fri, 24 Aug 2018 13:25:57 +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>rgange</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            5 years, 19 weeks, 6 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>17.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>rgange</customfieldvalue>
            <customfieldvalue>viet.nguyen</customfieldvalue>
            <customfieldvalue>zdenekskodik</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|y00enc:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</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>