Welcome to Our Community

Registration on our forums are now open for some days! Feel free to sign up today.

Nerbert Template Cookies 1.0.0

Reads cookies into template params, handles JSON cookies, template param {$pageName}

  1. XenForo Rocks
    Compatible XF Versions:
    • 1.5
    Visible Branding:
    No
    This product reads XenForo cookies into template params (session, session_admin and user excluded). This avoids the need to create new tables or modify existing ones to store user options in add-on products and makes it possible to use them when templates are rendered without having to extend classes. Cookie values are filtered using the same method as XenForo uses for filtering get and post inputs.

    Cookie values are available as $visitor.cookie.(cookie name). Example:

    {$visitor.cookie.vanilla_cookie}

    If the cookie value is a well-formed JSON string it is automatically parsed and available under a new index ending in "_json". Depth of the JSON object is almost unlimited (512).

    Example:

    $.setCookie('vanilla_cookie', '{"foo":"bar","razzle":"dazzle"}', expires);

    {$visitor.cookie.vanilla_cookie} = {"foo":"bar","razzle":"dazzle"},
    {$visitor.cookie.vanilla_cookie_json.foo} = bar,
    {$visitor.cookie.vanilla_cookie_json.razzle} = dazzle

    A unique page name, {$pageName} is also generated and is available in almost all templates. Its value is based on$controllerName and $controllerAction. (See this thread.) This parameter can be used in cookie names to make settings for each page.

    A demo template "nerbert_templatecookies_demo" is provided to illustrate use of cookies for a collapse box, checkboxes, radio buttons, JSON cookies, generating default cookies and the use of {$pageName}. See js/nerbert/demo.js for details in the comments.

    I developed this in version 1.5.1. I don't know about compatibility with earlier versions. Let me know.

    Installation: the usual, unzip the file, upload the provided files in your main directory and upload the product xml file in admin CP. This product has no control panel. If you are not using $pageName you can disable the "template_create" listener.
  • About Us

    Our community has been around for many years and pride ourselves on offering unbiased, critical discussion among people of all different backgrounds. We are working every day to make sure our community is one of the best.
  • Like us on Facebook

  • Buy us a beer!

    The management works very hard to make sure the community is running the best software, best designs, and all the other bells and whistles. Care to buy us a beer? We'd really appreciate it!

    Donate to us!