CRM-18207 Settings values not showing up.

    Details

    • Versioning Impact:
      Patch (backwards-compatible bug fixes)
    • Documentation Required?:
      None
    • Funding Source:
      Needs Funding

      Description

      We are experiencing a strange issue with our CiviCRM (4.7.3) installation on Joomla (3.4.8) with MySQLi 5.6.28-76.1-log and PHP 5.6.18.

      If I change some of the settings in one of the administration pages, they are correctly updated on the database, but if I get back to that page I don't see the setting anymore. It seems like values for the settings pages are not retrieved correctly from the database.

      Steps to reproduce in the attached doc.

      At the beginning looked like a cache problem, but we've tried to clean the followings to not avail:

      • browser cache (tried different browsers as well)
      • joomla cache
      • siteground supercacher

      We then tried a complete clean installation but the problem is still the same.

      It appears to be a bug altough your demo site does not provide a 4.7.3 on Joomla to test.

        Attachments

          Issue Links

            Activity

            [CRM-18207] Settings values not showing up.
            Stefano Bucaioni added a comment -

            I just tested on the same servers CiviCRM 4.7.3 on Drupal 7.43 and the issue is not present, so the problem is clearly not on the server side but on the integration code (CiviCRM / Joomla).

            Stefano

            Stefano Bucaioni added a comment -

            I reviewed the problem carefully and found that it is caused by the jSGCache plugin that comes preinstalled on all Joomla sites installed via Softaculous. When the plugin is enabled, it adds a special cookie to to prevent caching the admin panel. This seems to conflict with CiviCRM and results in the problem you reported.

            Stefano Bucaioni added a comment -

            I reviewed the problem carefully and found that it is caused by the jSGCache plugin that comes preinstalled on all Joomla sites installed via Softaculous. When the plugin is enabled, it adds a special cookie to to prevent caching the admin panel. This seems to conflict with CiviCRM and results in the problem you reported.

            David Foster added a comment -

            I am having the same issue, i update the date format, currency etc. for localisation but they change back to US (default). Not always straight away, updated local settings can be active for 15 - 20 mins before when i try to input 31st December 2016 as 31/12/2016 it will no longer accept it but 12/31/2016 is accepted.
            CiviCRM 4.6.14
            Joomla! 3.5.0
            MySQLi 5.5.47-0
            PHP 5.4.45
            jSGCache plugin - not listed
            Joomla! Global Configuration - Cache settings - Cache = OFF, Cache handler - FILE, Cache Time - 15

            Dave

            Juergen Bierwirth added a comment -

            Having the same issue on Administration -> System Settings Pages after upgrading to CiviCRM 4.7.10, Joomla! 3.6.2 (on a new server). jSGCache plugin not installed.

            Frank J. Gómez added a comment -

            I was able to reproduce this problem on a Siteground server using CiviCRM 4.7.14 and Joomla 3.6.5. After going down at least one rabbit hole (CRM-19877), I ultimately determined that disabling the jSGCache plugin (which is developed by Siteground) resolves the problem. I didn't dig deep enough to learn how the plugin works, but I can infer something about it from what I learned while working on CRM-19877.

            In CRM-19877, the Setting API was throwing errors because unexpected parameters "option" and "task" were being passed to it. These, of course, are always part of the query string when using CiviCRM on Joomla. The API also complained about a third parameter (92ce2f5a652d8155920fe9191bece4e3, in my case) which did not show in my browser's navigation bar but which apparently was added to the request. I gather that what's happening here is that a string is appended to the request to give Joomla some control over when to encourage browsers to cache versus refresh a file. This practice is common in links to CSS files (e.g., /sites/civicrm.org/files/css_injector/css_injector_1.css?ojrk81). If you're not using jSGCache but one of your plugins operates similarly, I wouldn't be surprised to see this problem spring up.

            To be clear, disabling jSGCache (and thus removing the extra param on the request) – not the patch for CRM-19877 – is what corrected the problem of settings values not showing up.

            I am closing this ticket because the original poster solved his own problem, and because my own experience confirms that this is not a bug in CiviCRM but rather a configuration problem. If folks have evidence to the contrary, feel free to reopen this ticket. If not, and you're still struggling with this problem, please ask for help configuring your system on civicrm.stackexchange.com.

              People

              • Assignee:
                Unassigned
                Reporter:
                Stefano Bucaioni

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 2 days
                  2d
                  Remaining:
                  Remaining Estimate - 2 days
                  2d
                  Logged:
                  Time Spent - Not Specified
                  Not Specified