Chameleon Release Notes

(4 votes, average 4.50 out of 5)

Chameleon v2.42 for Joomla 2.5-3.3 - Released 2014-04-23

  • # Compatibility release for Joomla 3.3. If you are using Joomla 3.2, you should upgrade.
  • + Added detection of new page types under Joomla 3.3: Tagged items, Compact list of tagged items, and List of all tags.
  • # Fixed PHP warnings that appeared when using Page Title/keywords/description actions under some versions of PHP.
  • + Added compatibility with setting page language when Falang is installed.
  • # Fixed an issue with doing language redirections and setting the protocol but not the host.
  • # Improved detection of "home page" especially when using Falang or multi-lingual site. This is important when setting a new default page and/or active menu item.
  • # Fixed a PHP warning that could occur when viewing Tag pages.
  • # Fixed a PHP warning that could occur when trying to detect pages by id, and a non-existant page is visited.
  • + JomGenius v22: the following new page types are detected: contactfeatured, tagslist (compact list of tagged pages), tags (list of tagged pages) and tagsall (list of all tags).

Chameleon v2.41 for Joomla 2.5-3.2 - Released 2014-04-23

  • # Added compatibility with VirtueMart 2.6.0. If you can possibly upgrade to 2.6.0 or above, please do so, as Chameleon has increased compatibility with these versions due to some bugfixes in VM which mean Chameleon no longer has to override VM classes.

Chameleon v2.40 for Joomla 2.5-3.2 - 2014-04-14 (private release)

  • + Added detection for IE9 and IE10.
  • + (Joomla 3.x only) Added detection of Joomla "tags" on articles and categories. In JomGenius, these can be found via $content_genius->info("category_tags") and $content_genius->info("article_tags") and return an array of tag names.

Chameleon v2.39 for Joomla 2.5-3.5 - 2014-04-07 (private release)

  • # Fixed debug notice that occurred whever a plugin did an auto-redirect (URL must have changed. Was: %s, Now: %s). This now only appears when Chameleon's debug mode is enabled.

Chameleon v2.38 for Joomla 2.5-3.2 - 2014-04-03 (private release)

  • + Added controls to change what sort of HTTP redirect is done for standard and language redirects. You can now choose between 301 (Permanent), 302 (Found), 303 (See Other) and 307 (Temporary Redirect). The official explanations for these are as follows:

    301: The requested resource has been assigned a new permanent URI and any future references to this resource SHOULD use the returned URI.
    302: The requested resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client SHOULD continue to use the Request-URI for future requests.
    303: The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource. The new URI is not a substitute reference for the originally requested resource.
    307: The requested resource resides temporarily under a different URI. Since the redirection MAY be altered on occasion, the client SHOULD continue to use the Request-URI for future requests.

  • Take great care with 301 redirects as clients will cache the new destination URL and won’t even request the original one but go directly to the new one.

Chameleon v2.37 for Joomla 2.5-3.2 - Released 2014-03-17

  • # VM: fixed detection of category page types after VM2.20b and in some cases stops getting them confused with search results pages.
  • # VM: shopper group detection now returns an array of shopper group ids, not just a single id.
  • # Changed the way that Chameleon detects URLs, especially when a plugin (e.g multi-lingual plugin) does an auto-redirect. Chameleon now detects the original requested URL rather than the redirected one.

Chameleon v2.36 for Joomla 2.5-3.2 - Released 2013-11-12

  • # Compatibility release for Joomla 3.2 — fixed several crashers. If you are using Joomla 3.2, you must upgrade.
  • + Group detection can now detect "Guest" for non-logged-in users, if the admin has assigned guests to this group.
  • + Added detection of new page type: Wrapper.
  • + Detection of Search and SearchResults pages now includes Smart Search pages.
  • + Added JomGenius class for AdminSwitch controls. (TODO: add form controls for these)

Chameleon v2.35 for Joomla 2.5-3.1 - Released 2013-10-14

  • + Added ability for Chameleon actions to unpublish any other plugins on the fly, including search plugins, system plugins, content plugins, and pretty much anything else.

Chameleon v2.34 for Joomla 2.5-3.1 - no public release

  • + Added support for HikaShop: Chameleon can detect all the different Hikashop page types, as well as products by category or individual ID.
  • # Made Chameleon play better with some other components: it no longer needs to redefine the JMenu class, which sometimes conflicted with other extensions that did the same.
  • # Fixed the "user template" plugin under Joomla 3.1, and gave it a better description that identifies it as part of Chameleon
  • # JomGenius: in VirtueMart plugin, fixed category info so that it includes categories of parent product, for child products, and tidied up some database queries
  • # JomGenius: added Hikashop class

Chameleon v2.33 for Joomla 2.5-3.1 - Released 2013-08-05

  • + Added and tested support for Joomla 3.1
  • + Added new plugin that adds a Template Selector to the User Profile! Users can now select which front-end template they want to use. To enable this functionality, you need to publish the "User - Template" plugin, and edit it to determine which templates will be shown to the user in the dropdown.
  • # Added additional checks to ensure the controller class is only included once (fixed issue with some 3rd party components)
  • # K2: added JomGenius support for detecting page types and many other parameters of the currently-displayed page (see JomGenius page for full details)
  • + Added GUI support for K2. New detection includes:
    • Page type
    • Indiviual items by ID
    • Category
    • Ancestor category
    • number of attachments
    • number of published/unpublished comments for an item
    • whether item is featured or not
    • whether item has images or not
    • the contents of the K2 meta-description and meta-keywords fields
    • the username of the item author
    • whether or not the current item (either user page or individual item) is "owned" by the currently-logged-in user. This allows you to customise any page that belongs to the currently logged in user.
  • # Improved debugging output
  • # Streamlined loading of additional form elements
  • # Improved compatibility with 3rd party components which sometimes triggered a redeclaration of the JMenu class
  • # Virtuemart: fixed problem with "product_special" JomGenius selector

Chameleon v2.31 for Joomla 2.5-3.0 - Released 2013-03-19

  • + Added and tested support for VirtueMart 2.0.20b
  • # Removed debugging code from install screen

Chameleon v2.30 for Joomla 2.5-3.0 - Released 2013-02-25

  • + Added and tested support for VirtueMart 2.0.18b
  • - Removed support for Joomla 1.7.
  • + Added support for Joomla 3.0. On Joomla 3.0, Chameleon has a totally redesigned rule interface but should be functionally equivalent.
  • # Many minor interface improvements in rule editing.

Chameleon v2.29 for Joomla 1.7-2.5 - Released 2013-01-28

  • + Added and tested support for VirtueMart 2.0.16, 2.0.16d & 2.0.18a

Chameleon v2.28 for Joomla 1.7-2.5 - Released 2012-11-26

  • + Added and tested support for VirtueMart 2.0.14
  • + Added detection of 3 new VirtueMart page types:
    • productdetails.notify (the page where users can ask to be notified when new stock for a product arrives)
    • productdetails.recommend (the page where users can submit an e-mail address to which to send details of the product)
    • manufacturer.products (the page that lists products from a specific manufacturer)

Chameleon v2.27 for Joomla 1.7-2.5 - Released 2012-07-23

  • + Added support for Categorizr detection of devices: mobile, desktop, tablet & TV. This script takes a mobile-first approach to device detection and is likely to be more accurate for new devices than the previous mobile detection scheme in Chameleon. The change is in JomGenius (v14), adding a new attribute: "categorizr" which returns one of the strings "mobile", "desktop", "tablet" or "tv". Bots and crawlers are detected as "desktop". The result is cached in the session unless Chameleon Debug mode is enabled. This means that changing your browser's User Agent string will not be detected mid-session unless Chameleon Debug mode is on.
  • # Fixed a warning message that appeared on some installations in models/rule.php.
  • + Added Chameleon icon in the Components menu.

Chameleon v2.26 for Joomla 1.7-2.5 - Released 2012-05-14

  • + Added a new action: ability to change front-end language. This feature is equivalent to the user clicking on one of the language flags in the Language Switcher module. As well as choosing the language to switch to, you can also select an optional domain to switch to. This allows you to use a completely different domain (or sub-domain) for specific language content. See the blog for more details.

Chameleon v2.25 for Joomla 1.7-2.5 - Released 2012-05-07

  • + Added support for VirtueMart 2.0.6 in override classes for dynamically changing shopper group.

Chameleon v2.24 for Joomla 1.7-2.5 - Released 2012-03-12

  • # fixed an error that could occur if another plugin performed $mainframe->initialise(). Of course, they are not supposed to do that, but now if they do Chameleon won’t cause an error.
  • + increased JomGenius version number to 13 (should have been done in last release).

Chameleon v2.23 for Joomla 1.7-2.5 - Released 2012-03-08

  • + Official Joomla 2.5 support
  • + Official VirtueMart 2.0 support (note: all VirtueMart changes below are changes from the Beta support for VM2.0Beta)
  • # fixed an issue that could cause some templates based on template frameworks to fail to identify the current theme in use
  •  removed some code used for co-existence with sh404SEF, which now seems to be unnecessary
  • # fixed Calendar view for freestyle start and stop times, which could cause an error in the backend if it could not recognise certain date/time formats
  • # fixed component selector in backend which could only choose 1 component at at time (now can select multiple).
  • ^ improved PHP “help” text which contained some out-of-date information (e.g. directly returning a template name, which is now obselete since you have to deal with Style Ids in Joomla 1.7+)
  • ^ improved performance of rule chains so that if one plugin (e.g. Extended Rules) returns a "fail", other plugins for the same rule (eg. VirtueMart) will not be executed unnecessarily.
  • # fixed "contains" and "not contains" string comparisons, e.g. in referrer, so that they do not cause a PHP error if an empty string is submitted.
  • # fixed "components" check so that it bypasses if the 1st item selected is "Ignore".
  • # fixed incorrect debug message that occurred if certain languages were excluded, but the current language was not one of them.

  • Changed list of Joomla Page Types:
  • ^ changed articlesubmit to articlesave
  • + added contactcategories
  • ^ changed register to registration
  • ^ changed user to profile
  • + added profileedit
  • + added profilesave
  • + added weblinkgo (triggers when a weblink is clicked, but before it is redirected, allowing you to catch this event and perform actions based on it)
  • ^ changed weblinkform to weblinknew

  • VirtueMart 2.0 support:
  • + added new action: ability to change the shopper group as a result of a rule. This allows you to put people into groups "on the fly", depending on any factors in the Rule, including Country (GeoIP), previous purchase history, date/time, Joomla group, etc.
  •  removed support for detecting the number of items sold of the currently viewed product, as this feature has been removed in VM2.0
  • # fixed checking of products in stock
  • # fixed checking of previous purchases
  • # fixed checking of whether a coupon is being used, and which coupon it was
  •  removed check for which type of coupon was used (permanent/gift) as that info is no longer available in VM2.0
  • removed pagetypes: account.index, account.order_details, account.orders, account.shipping, checkout.index#1-4, checkout.2Checkout_result, checkout.epay_result, checkout.ipayment_result, checkout.paysbuy, checkout.thankyou, shop.infopage, shop.manufacturer_page, shop.registration, shop.savedcart, shop.search, shop.waiting_list, shop.waiting_thanks as these pages are not in VM2.0 (or I have been unable to locate them for testing)
  • + added pagetypes: productdetails.mailquestion, cart.editshipment, cart.editpayment, cart.thankyou, checkout.editshipto, checkout.editbillto, user, orders, order.view, plugin.response (e.g. when PayPal returns user to your site), searchresults, manufacturer
  •   
    JomGenius core improvements:
  • ^ improved "article categories" detection so that it can return category information when on a "categories" view
  • + added "articlesave" page type
  • + added "profilesave" page type
  • + added "weblinkgo" page type (triggers when a weblink is clicked, but before it is redirected)
  • ^ changed the "search" and "searchresults" page types so that they only trigger on the GET request. Joomla search works by first doing a POST with the search term, then this is caught and redirected to a GET request with the required search word. This change prevents double-activation due to the 2 requests.
  • # changed the way that user groups and group ids are calculated, since Joomla changed between J1.7 and J2.5. The correct list of groups or group ids is now returned in either version of Joomla.

  • JomGenius for VirtueMart 2.0 improvements:
  • removed some outdated product attributes: productshipcodeid, productsales, productattributes, childoptions
  •  removed some types that are no longer available: couponid, coupontype
  • + new type: couponvalue (currency value of the discount applied)
  • ^ made the following types count "shipped" products as well as "confirmed" ones: previouspurchaseproductids, previouspurchaseproductskus, previouspurchaseproductnames, previouspurchasequantityofproduct
  • # fixed broken isSearchResults
  • ^ changed product attribute search and manufacturer search to look up localised version of product (VM_LANG required)
  •  removed pagetypes: checkout.thankyou, orders
  • + added pagetypes plugin.response (for return from PayPal, for example), order.view, checkout.editshipto, checkout.editbillto, productdetails.mailquestion, cart.editshipment, cart.editpayment, cart.thankyou, searchresults
  • # fixed broken shoppergroup retrieval; now allow it to retrieve value set in shoppergroup Action
  • # fixed broken shopperinfo (for billto and shipto addresses)
  • # fixed broken "state" info in shipto and billto addresses (now accesses related table for state names)
  • removed shipto email addresses as these have been removed from VM2
  • # fixed broken category retrieval (due to localisation)

Chameleon v2.22 for Joomla 1.7 - Released 2011-10-03

  • + preliminary support for VirtueMart 2.0 for Joomla 1.7. A number of page types have changed their names, and further work on this will be done once a stable VM2 version has been released. The current implementation should be considered Beta.
  • + added support for making rules based on previous purchases in VM (still Beta).
  • # added debug logging to the "redirect" action, and tightened up the loop-checking so that it won't redirect if the destination URL is the same as the current URL.
  • # fixed checking for the "home" menu item. Previously, non-existant pages/urls would be incorrectly detected as being the "home" menu item.

Chameleon v1.19 for Joomla 1.5 - Released 2011-10-03

  • + Added support for making rules based on previous purchases in VM:
  • + "Previous purchases of this product" allows you to detect if the current user has purchased the current product (shop.browse pages) before, and how many. e.g. detect if user has purchased more than 2 of the current item.
  • + "Previous purchase SKU(s)": enter a list of SKUs, and the rule will succeed if the user has purchased any of these in the past.
  • + "Previous purchase id(s)": enter a list of product ids, and the rule will succeed if the user has purchased any of these in the past.
  • # added debug logging to the "redirect" action, and tightened up the loop-checking so that it won't redirect if the destination URL is the same as the current URL.
  • # fixed checking for the "home" menu item. Previously, non-existant pages/urls would be incorrectly detected as being the "home" menu item.

Chameleon v2.21 for Joomla 1.7 - Released 2011-09-15

  • # changed page type detection for "Front page" to "Featured" because of changes between Jooma! 1.5 and Joomla! 1.6/1.7.
  • # fixed problem with the article selector which was not remembering its values.

Chameleon v2.20 for Joomla 1.7 - Released 2011-09-12

  • # JomGenius v10: improved JomGenius detection of VirtueMart page types, when viewing a VM menu item with a pagetype, productid or categoryid set in the menu configuration
  • # fixed errors that occurred when setting custom HTML on RSS and AJAX (raw) documents
  • # improved the "set title" action so that it works with sh404SEF
  • # changed the setting of additional JS/CSS files, and other header HTML to occur in the onBeforeRender trigger instead of the onAfterDispatch trigger (may be more reliable).

Chameleon v1.18 for Joomla 1.5 - Released 2011-09-12

  • # improved JomGenius detection of VirtueMart page types, when viewing a VM menu item with a pagetype, productid or categoryid set in the menu configuration
  • # fixed errors that occurred when setting custom HTML on RSS and AJAX (raw) documents

Chameleon v1.16 for Joomla 1.5 - Released 2011-08-09

  • + re-released as “Chameleon” instead of “MetaTemplate Pro”
  • # bugfixes to time zone handling

1.14 - Released - 2011-06-14

  • # changes to "Active Menu" manipulation to make it work better with Joom!Fish language switching when SEF URLs are enabled.

A modified version of the mod_jflanguageselection module is available on this site, and is a drop-in replacement for Joom!Fish's version of that module.

The bug showed itself on pages where the Active Menu was changed by MetaTemplate Pro. On these pages, Joom!Fish's language selector module came up with the wrong SEF URL. Now with version 1.14 of MetaTemplate Pro, and the modified mod_jflanguageselection module on this site, the problem is resolved.

1.13 - Released - 2011-05-30

  • # Fixed GeoIP integration when PHP has been configured with geoip support.
  • # Added further page detection to the VirtueMart page selector. These pages are used as the callback “landing pages” for various payment options. I.e. after payment, the user is returned to these pages, which you can now target in MetaTemplate:
      checkout.result (PayPal callback)
      checkout.2Checkout_result
      checkout.epay_result
      checkout.ipayment_result
      checkout.paysbuy
  • # Upgraded to JomGenius v8

JomGenius v7 includes:

  • + added "blackberry" as a browser type in core_genius

JomGenius v8 includes:

  • + added new pages to VirtueMart page detection: checkout.2Checkout_result, checkout.epay_result, checkout.ipayment_result, checkout.paysbuy, checkout.result (used in PayPal callback)
  • # increased maximum nested category level for "ancestor category ids" from 5 to 8.

1.12 - Released - 2011-02-21

  • # Fixed bug that happened when trying to enable the GeoCityLite database

1.11c - Released - 2011-02-14

  • # Removed warning messages that appeared when an invalid Itemid was given and the rule was set up to detect menu items

1.11b - Released - 2011-01-20

  • # Fixed bug when returning exact template name from PHP script

1.11 - Released - 2011-01-10

  • # Fixed bug and improved logging for “user is or is not logged in” feature

1.10 - Released - 2010-12-20

  • + You can now change the “Active” menu item as a result of any rule. The “Active” menu item doesn’t determine which page gets displayed on your site — it simply changes which menu item gets highlighted or displayed on the front end as being 'active'. [*]
  • # Fixed the broken “Default Menu Item” control. This has now been tested as working with non-SEF URLs, built-in Joomla SEF, and sh404SEF. This controls which menu item (component) will be used if no URL is chosen (e.g. www.yoursite.com/).

[*] NOTE: this feature depends on the module or template to display the menu correctly. The module or template displaying the menu must use the $menu object provided by Joomla as the data source for the displayed menu. This structure includes a variable indicating the active menu item, and that’s what MetaTemplate manipulates. If the module or template ignores this and recreates the menu directly from the database, or assumes that the current Itemid should be used as the Active menu item, then this feature has no effect.

The standard mod_mainmenu module for displaying menus in Joomla works correctly with this feature.

1.9 - Internal release only

1.8 - Released - 2010-12-13

  • + New Debugging mode added. This is activated in the main MetaTemplate Preferences panel. When debugging is activated, you get a complete log of all the steps and checks that MetaTemplate does as it goes through your rules. The log is shown in the "debug" section of your template, so this has to exist in order to view it. Most templates will have this.
  • + Added Blackberry to the list of browsers to target
  • + Added support for VirtueMart "Ancestor Category Ids". This allows you to target any VM products or categories that have a specified category as an ancestor. [i.e. it will activate for any children/descendents of the specified category/categories]
  • # Improved date/time handling for the start & stop date/time boxes. There were some issues with wrong time zones being used.
  • # Fixed bug when using JomGenius parameters that returned boolean values.
  • # Improved VirtueMart "PageType" handling, when the current page is a menu item, and the menu item has been set up to display a non-standard page type.
  • # Changed the standard Joomla Content Section and Category handling to use JomGenius’s functionality.
  • + Warning messages are now given in the front-end of the site if GeoIP rules are attempted but there’s no valid GeoIP database installed.
  • # Fixed a display bug when editing the user group assignment in a rule.
  • + Added "!=" as a valid JomGenius comparison operator
  • + Added "shop.registration" as a valid page type in the VirtueMart section. This page type is different to the standard Joomla registration page. You can now target these independently.
  • # Fixed an obscure bug in VirtueMart category handling.

1.7 - Released - 2010-09-27

  • + You can now disable specific menu items when a rule succeeds or fails. e.g. disable a LOGIN menu item for logged-in users.
  • # Fixed bug when setting Default menu items.
  • + Checks for AceSEF during installation, to re-order system plugins accordingly.
  • + The following PHP variables are now available for use in the PHP boxes in the SUCCEED and FAIL actions:

    $app [ = JFactory::getApplication()], $core_genius, $content_genius, $menu_genius, $db, $user, $Itemid, $id, $view, $option, $menu [ = &JSite::getMenu()]

1.6 - Released - 2010-09-06

  • + Added more VirtueMart options. You can now target the VM "front page". When on a product view page, you can now trigger rules based on:
    (i) the number of product items in stock (e.g. switch template when you are out of stock)
    (ii) the number of product items sold in total
    (iii) the manufacturer of the item (e.g. use a special template for all ACME products in your shop).
  • # Fixed a bug that caused some rules to fail when upgrading MetaTemplate Pro.
  • # Upgraded JomGenius to v5. This adds considerable VirtueMart functionality, with the ability to target the following parameters:

    manufacturer_id, manufacturer_name, manufacturer_category_id, manufacturer_category_name, vendor_id, product_parent_id, product_sku, product_short_desc, product_desc, is_product_published, product_weight, product_weight_unit, product_width, product_height, product_length, product_measurement_unit, product_in_stock, is_product_special, product_discount_id, product_ship_code_id, product_name, product_sales, product_attributes, product_tax_id, product_unit, units_in_box, units_in_package, child_options, quantity_options

    See here for a full description of these new JomGenius parameters.

1.5c - Released - 2010-07-27

  • # Fixed more bugs in JomGenius "Content" object, when retrieving information about sections and categories.

1.5b - Released - 2010-07-27

  • # Fixed bug in JomGenius "Content" object, when retrieving information about sections and categories.

1.5 - Released - 2010-07-26

  • + added JomGenius support
  • + New VirtueMart controls
  • + New Page Type controls (e.g. frontpage, article, etc)
  • + Added iPad, android, and many other bots and browsers to browser detection
  • # Improved downloading of MaxMind Country and City GeoIP databases
  • + As a result of a rule SUCCEED or FAIL, you can now change the "default" menu item. This affects the page that will show up when no other page is in the URL (e.g. http://www.domain.com/), but does not automatically redirect to this page.
  • # Some interface changes (e.g. moved SUCCEED and FAIL actions to right panel)
  • # Fixed sh404 integration and some minor bugs
  • # Improved UTF-8 compatibility
  • # Timezone functions no longer set the TZ environment variable on PHP5
  • # Improved proxy handling of IP addresses for GeoIP

1.4 - Released - 2010-02-15

  • # improved de-selection Sections and Categories, Menus, and Components selectors
  • # improved terminology on interface
  • + added support for HTTP Referrer, and page URL (starts with, ends with, contains, equals, regex etc)
  • + added ability to set a 2nd cookie/session variable per SUCCEED/FAIL action
  • # bugfixes for deleting session variables, and cookie/session setting when a template name is returned from a PHP rule

1.3 - Released - 2010-02-08

  • + Added ability to set session variables as the result of a rule. You can detect and make decisions based on that variable on subsequent pages.
  • + added "default PHP return value" to the PHP rule. You can set up your PHP rule so that unless you explicitly "return true;", the rule will implicitly "return false;"
  • ^ the "Fail" action now falls through to the next rule by default

1.2 - Released - 2010-02-03

  • + 1-click template duplication
  • + fix for VirtueMart "front page template" problem ( http://forum.virtuemart.net/index.php?topic=65450.0 )
  • # fixed Time Zone selection in component parameters
  • + added language strings to make interface translatable
Last Updated on Monday, 04 August 2014 10:21