1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

As Designed 1.2 setIndexRoute bug

Discussion in 'Resolved Bug Reports' started by tenants, Jul 21, 2013.

  1. tenants

    tenants Well-Known Member

    There seems to be a bug with setIndexRoute that affects how template links appear

    If I set the index route for my home page as:

    XenForo_Link::setIndexRoute('xz-articles');

    The home page gets set correctly (so I can navigate to example.com), but when clicking the link from the nav, I'm redirected to the example.com/xz-articles

    However, If I set the route using

    XenForo_Link::setIndexRoute('xz-articles/');

    Then both the nav link and navgating to the site direct me to example.com (as expected)


    However, if the route prefix has an action, then the reverse is true

    XenForo_Link::setIndexRoute('xz-articles/category-list'); Works
    XenForo_Link::setIndexRoute('xz-articles/category-list/'); Doesn't work

    my work around for now is to use:

    Code:
            switch ($options->xzSetHomePage)
            {    
                case 'article_list':
                    XenForo_Link::setIndexRoute('xz-articles/');
                break;
                case 'category_list':
                    XenForo_Link::setIndexRoute('xz-articles/category-list');
                break;
                case 'editors_picks':
                    XenForo_Link::setIndexRoute('xz-articles/editors-picks');
                break;                                
                default:
                break;
            }
    

    But you can see that this is a bit strange
     
    Last edited: Jul 21, 2013
  2. Mike

    Mike XenForo Developer Staff Member

    The match is an exact match for a URL, so there's nothing that looks particularly unexpected to me there. Your category-list and editors-picks appear to be actions and thus don't have a trailing slash -- you'll see this all over XF as a standard approach (trailing slash only on the prefix and to identify content).

    Depending on the route setup, prefix/x/ and prefix/x can mean different things (try it with a forum with a URL portion). As such, I'm not sure if we can just wholesale ignore a trailing slash. I'll have to think about this a bit.
     
  3. tenants

    tenants Well-Known Member

    That's true, hmmm

    If it is a bug, it's a low priority/severity, the work around above works fine

    I just didn't want to start doing things a certain way, only to find it's fixed later

    If you are saying this is intending behaviour, not fixing this (and future not fixing) is preferable than fixing it at a later date so that the indexRoute only works with/without the trailing slash (breaking the above work around.. which is not really a work around)
     
  4. Mike

    Mike XenForo Developer Staff Member

    Yeah, thinking about it more, because of the potential ambiguity, anything that we do to manipulate trailing slashes could introduce issues.

    So as designed then. :)
     
    tenants likes this.

Share This Page