In Drupal 6, new caching mechanisms were introduced that cache very heavily. One result of this is that code must specifically exclude things from the cache; the current D6 branch of this module does not do that, so settings get cached. When settings get cached, they do not update properly, so administrators may be confused to find that they cannot change their settings.

I don't know much about this yet, so I can't fix it yet. I don't think this problem exists in the D5 branch, however; and obviously it shouldn't happen with caching disabled.

A temporary workaround, if needed, is to set variables like this:

variable_set('facebook_status_variable', 1); //sets the variable "facebook_status_variable" to a value of 1

Administrators will need to look at the code of the module to determine what variables they can use. The best place is in facebook_status.install because the uninstall procedure lists all the variables so that they can be removed.

Please be aware that if you have just cleared the cache before saving, it may look like the variable has saved even if it hasn't. You can check what the variable's value is like this:

print variable_get('facebook_status_variable'); //shows the value of the variable "facebook_status_variable"

Thank you for you patience, and patches are welcome.

Comments

icecreamyou’s picture

Title: Caching causes settings not to update » Settings don't save
Priority: Minor » Critical

This is not a caching problem, and it also applies to Drupal 5. That means I have absolutely no idea why it's happening or how to fix it. But I'm looking into it. Help is appreciated.

icecreamyou’s picture

Status: Active » Fixed

The problem, I think, was a bug in Drupal's built-in system_settings_form function. I wrote some code to manually replace it. In the process of the multi-hour debugging session, I discovered a few other bugs and performance improvements that are also fixed in the latest release.

icecreamyou’s picture

Status: Fixed » Active

...not fixed, but for the life of me I can't figure out why. I've tried everything I can possibly think of. Any help on this would be great.

chantaspell’s picture

Am having the same problem. Clearing the cache seemed to solve it, but that's a bit of a pain when you are setting up a new site and want to make lots of tweaks. Hopefully it will be sorted soon!

icecreamyou’s picture

Can anyone else confirm that clearing the cache fixes this issue? I haven't experienced that, but if it's true then I just need to negate $may_cache in facebook_status_menu to fix this problem.

icecreamyou’s picture

Status: Active » Postponed (maintainer needs more info)

I cannot duplicate a solution by clearing the cache in either 5.x or 6.x, and $may_cache was already negated anyway.

chantaspell - can you check to make sure your settings actually changed rather than that your browser cached the page with different settings?

icecreamyou’s picture

Status: Postponed (maintainer needs more info) » Fixed

Fixed locally, will be in the next dev sometime this week.

Basically I had to manually save all the variables that hold the settings; I had tried that earlier but my implementation was flawed.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.