<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 01:47:48 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>[MGNLETK-28] multi-site support: fixing various issues in the new </title>
                <link>https://jira.magnolia-cms.com/browse/MGNLETK-28</link>
                <project id="10290" key="MGNLETK">Extended Templating Kit (closed)</project>
                    <description>&lt;p&gt;The multi site support, mainly the detection of the site, must be improved. &lt;/p&gt;

&lt;h3&gt;&lt;a name=&quot;UseCases&quot;&gt;&lt;/a&gt;Use Cases&lt;/h3&gt;
&lt;p&gt;This is not trivial as we have to support various scenarios:&lt;/p&gt;

&lt;p&gt;1) authoring without domain&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;detection must work without the domains&lt;/li&gt;
	&lt;li&gt;if done by the path the solution conflicts with the i18n support&lt;/li&gt;
	&lt;li&gt;add a site parameter: currently done by /sitename/shortURI links&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;2) i18n&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;links might be using the i18n pattern: /de/mypage&lt;/li&gt;
	&lt;li&gt;a simple path matching does not work&lt;/li&gt;
	&lt;li&gt;multi site filter has to be in front of the i18n filter as the site defines the i18n configuration&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;3) cross site links&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;public: use the domain on public sites if defined&lt;/li&gt;
	&lt;li&gt;author: use /sitename/shortURI link&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;4) subsites&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;one can map sites to subpathes&lt;/li&gt;
	&lt;li&gt;/section -&amp;gt; /mysite/section&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;5) virtual uri mappings&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;see &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLETK-27&quot; title=&quot;Multi site support and virtualURIMappings don&amp;#39;t play nice together: can not resolve site definition&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLETK-27&quot;&gt;&lt;del&gt;MGNLETK-27&lt;/del&gt;&lt;/a&gt; as an example&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;6) no domain&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;sites don&apos;t necessarily have a domain definition&lt;/li&gt;
	&lt;li&gt;respect that, this sites can always match&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt; 7) sitename and site-root name can be the same&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;don&apos;t remove the site-root name if it looks like being the sitename&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Different ways a page can be accessed (should we reduce that? probably not)&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;full path (for instance if opened in the website tree)&lt;/li&gt;
	&lt;li&gt;/sitename/shortURI&lt;/li&gt;
	&lt;li&gt;domain/shortURI&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;&lt;a name=&quot;Solution%2FIdeas&quot;&gt;&lt;/a&gt;Solution/Ideas&lt;/h3&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;write all essential test cases&lt;/li&gt;
	&lt;li&gt;use best match strategy
	&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
		&lt;li&gt;domain&lt;/li&gt;
		&lt;li&gt;site&lt;/li&gt;
		&lt;li&gt;mapping&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;extract a clean URI method
	&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
		&lt;li&gt;either in the filter or in the sitemanager by introducing a return value object in getAssignedSite(domain, uri)&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;tree opens the page by using the link transformer (no conflict with other links)
	&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
		&lt;li&gt;but might not be possible with the current tree&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;combine mutlisite detection and i18n detection
	&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
		&lt;li&gt;I don&apos;t like this because this just hides the problem and other dynamic link generation might cause the same issue&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The relevant Classes:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;info.magnolia.module.extendedtemplatingkit.filters.MultiSiteFilter&lt;/li&gt;
	&lt;li&gt;info.magnolia.module.extendedtemplatingkit.ETKLinkTransformerManager&lt;/li&gt;
	&lt;li&gt;info.magnolia.module.extendedtemplatingkit.sites.ETKSiteManager&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="18456">MGNLETK-28</key>
            <summary>multi-site support: fixing various issues in the new </summary>
                <type id="1" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10883&amp;avatarType=issuetype">Bug</type>
                                            <priority id="1" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/blocker.svg">Blocker</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="1">Fixed</resolution>
                                        <assignee username="had">Jan Haderka</assignee>
                                    <reporter username="pbaerfuss">Philipp B&#228;rfuss</reporter>
                        <labels>
                            <label>multisite</label>
                    </labels>
                <created>Wed, 12 May 2010 22:06:27 +0200</created>
                <updated>Fri, 10 Sep 2021 07:11:26 +0200</updated>
                            <resolved>Wed, 26 May 2010 17:20:06 +0200</resolved>
                                    <version>1.3</version>
                                    <fixVersion>1.3.1</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>0</watches>
                                                                                                                <comments>
                            <comment id="28309" author="pbaerfuss" created="Wed, 12 May 2010 22:08:38 +0200"  >&lt;p&gt;Attached a work in progress patch to allow others to jump in.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10160">
                    <name>Relates</name>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="51608">MAGNOLIA-6626</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="102442">MULTISITE-109</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10040">
                    <name>causality</name>
                                            <outwardlinks description="caused by">
                                        <issuelink>
            <issuekey id="18502">MAGNOLIA-3212</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="18503">MAGNOLIA-3213</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is causing">
                                        <issuelink>
            <issuekey id="21315">MGNLETK-60</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>relation</name>
                                            <outwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="18487">MAGNOLIA-3204</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="18313">MGNLETK-21</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="18455">MGNLETK-27</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="13423" name="multi-site.patch" size="10536" author="pbaerfuss" created="Wed, 12 May 2010 22:08:37 +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>woowai.com</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>had</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            13 years, 41 weeks, 4 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>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>had</customfieldvalue>
            <customfieldvalue>pbaerfuss</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|i01nlr:</customfieldvalue>

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