Current code:

function system_settings_form($form) {
  $form['buttons']['submit'] = array('#type' => 'submit', '#value' => t('Save configuration') );
  $form['buttons']['reset'] = array('#type' => 'submit', '#value' => t('Reset to defaults') );

  if (!empty($_POST) && form_get_errors()) {
    drupal_set_message(t('The settings have not been saved because of the errors.'), 'error');
  }
  $form['#submit'][] = 'system_settings_form_submit';
  $form['#theme'] = 'system_settings_form';
  return $form;
}

We could streamline most settings forms with this version:

function system_settings_form($form, $automatic_defaults = FALSE) {
  $form['buttons']['submit'] = array('#type' => 'submit', '#value' => t('Save configuration') );
  $form['buttons']['reset'] = array('#type' => 'submit', '#value' => t('Reset to defaults') );

  if ($automatic_defaults) {
    foreach ($form as $key => $item) {
      if (array_key_exists('#default_value', $item)) {
        $form[$key]['#default_value'] = variable_get($key, $item['#default_value']);
      }
    }
  }

  if (!empty($_POST) && form_get_errors()) {
    drupal_set_message(t('The settings have not been saved because of the errors.'), 'error');
  }
  $form['#submit'][] = 'system_settings_form_submit';
  $form['#theme'] = 'system_settings_form';
  return $form;
}

If people think this is a good idea, I'll make a proper patch.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

JohnAlbin’s picture

So if (array_key_exists('#default_value', $item)), then you would replace the #default_value? You would still need to add a #default_value to the form item, so it doesn't save any lines of code, just removes some variable_get() calls. Doesn't seem worth it.

Senpai’s picture

Seems like a great idea to me, but why do we need to check for $sensible_defaults if each form element was supposed to load it's own #default_value from the variable_get at form creation time?

David Strauss’s picture

About 99% of calls to system_settings_form store directly to variables, so it seems sensible that they should automatically load defaults from them, too. I'm tempted to not even make the automatic loading optional (and maybe add a per-element override instead) because you can simply use form elements not named after variables if you don't want to load defaults from variables.

rszrama’s picture

Hmm... seems to me this would break on nested form arrays. Am I misreading something here? You'd probably have to do an array_walk_recursive() or something more complicated, right? For example... what about using system_settings_form() on a form with settings in fieldsets? We do this in several Ubercart modules to try and help categorize settings on some highly configurable modules.

If my assumptions are correct, I think it would negate the pay off of the proposed change.

Also, it's helpful to me to be able to copy/paste the variable_get() in my settings forms so I make sure the string literal and default setting are the same when I use that variable elsewhere in the code. This and making sure I use the new function right w/ nested form arrays would make me think more.

David Strauss’s picture

@rszrama: Yeah, this should definitely be implemented with array_walk_recursive(). The issue with centralizing variable defaults is quite separate, I think.

moshe weitzman’s picture

so people would just write '#default_value' = NULL or something in their form? A bit awkward, but not too too bad.

David Strauss’s picture

No need for '#default_value' = NULL. I can update the patch to assume NULL if no default value is set.

chx’s picture

Yeah, a if (!isset(... looks a more natural one to me. If you really do not want a default value, you can set it to NULL but really most of all forms wont need it and the automatic default will do.

nedjo’s picture

Good idea.

Iteration through the form elements should use element_children().

cburschka’s picture

You have no idea how often I've forgotten to make a field load its current value, so +1.

I think if there is no way to save the thing other than as a variable, there is no point in loading it from elsewhere either. If the current setting must be overridden, I'd rather you explicitly delete it than implicitly not load it - the default behavior should be to use the current setting.

cburschka’s picture

Status: Needs review » Needs work

No patch here.

chx’s picture

Status: Needs work » Active

No patch is "active".

David Strauss’s picture

Status: Active » Needs review
FileSize
4.24 KB

Here's an updated patch that should address most concerns. It was not possible to use array_walk_recursive because it doesn't give me any information about the parent array.

Status: Needs review » Needs work

The last submitted patch failed testing.

David Strauss’s picture

Status: Needs work » Needs review
FileSize
4.13 KB

Reroll.

moshe weitzman’s picture

Code looks good. Defaults to FALSE (non-automatic)? Thats a minor buzzkill. Could we change that and still keep the patch at a reasonable size?

David Strauss’s picture

@moshe Do you mean the "defaults to FALSE" in the definition for system_settings_form()? I only put that in to maximize backwards compatibility, at least for now. It's trivial to make the automatic defaults mode on by default if we want to.

David Strauss’s picture

FileSize
33.08 KB

Here's an updated patch that extends use of the new default through core in at least the most obvious places. I think the bigger win will be in contrib.

David Strauss’s picture

FileSize
33.08 KB

Fix self-tests to respect the new default.

moshe weitzman’s picture

Code looks good. I did get 1 hunk failure when trying to apply (oddly, the .rej file was empty) - the patch bot will nt be happy with that when he wakes up.

If you go into the patch again, you can remove the TRUE from system_settings_form($form, TRUE). happens several times.

David Strauss’s picture

FileSize
33.08 KB

Here's a re-roll with the conflict resolved. I did not remove the explicit TRUE from the calls. Rather, I'm tempted to go in the other direction and require the second option be specified.

Status: Needs review » Needs work

The last submitted patch failed testing.

David Strauss’s picture

Status: Needs work » Needs review
FileSize
33.12 KB

Reroll.

Dries’s picture

I'm not really convinced that this is an improvement. It makes the API more obscure and less easy. It doesn't hurt to write a little bit more code, if that keeps things more clear and explicit. -1 from me, personally.

David Strauss’s picture

@Dries system_settings_form() already messes with your form to save its values to corresponding variables. I don't see the harm in also having it load its default values from corresponding variables. I've also found the process of copying and pasting variable names between the variable_get()s and the form element names to be error-prone, itself.

Dave Reid’s picture

This is very handy. I always found having to put in a variable_get() for each element every time I used system_settings_form() was counter-productive and subject to errors.

Dries’s picture

Status: Needs review » Needs work

@David, you're right. I changed my position, and committed this patch to CVS HEAD. Thanks.

I'm marking this 'code needs work' until it has been documented.

chx’s picture

How did this got committed? It was CNR and I did set it aside to review for later but then again boom! it gets in. I truly hate when the community review process gets skipped like this. If we defaulted to TRUE, then why we have calls that specify TRUE as a second argument? That's poor code.

Also, this is very unFAPIlike. You recurse through the children like that instead letting the builder do the hard lifting. I thought this what we had #value_callback for. Please fix.

David Strauss’s picture

I also think this should keep CNW status until we clean up some core settings forms that were previously optimized around storing the variable_get() result for further manipulation, presumably to avoid messy (and now unnecessary) calls to variable_get().

I discussed chx's concerns with him on IRC. He prefers extending Forms API to allow inheritance for #value_callback (and to avoid the recursive traversal in system_settings_form()). I don't see a use case similar to needing variable_get()-style #default_values outside system_settings_form(), and I'd rather not add complexity to our already large Forms API merely to simplify systems_settings_form().

So, chx, if you feel strongly that this should go into Forms API, I invite you to submit your own patch implementing the change.

As for the defaulting to TRUE, I'd still like to hear some feedback about which approach is better:
* Make the second argument required, which will enhance code clarity for people used to the old, single-parameter system_settings_form().
* Clean up the other calls to not specify the second argument if they currently have it set to TRUE.

Dries’s picture

Let's just continue cleaning up code using the current API.

chx’s picture

Category: feature » bug
Priority: Normal » Critical

I also suggested adding a simple flag to the form and when that's there then call variable_get. As the form itself is stoerd in $complete_form during form_building that's kinda trivial to do. Like, three lines of code. And I consider this utterly broken and updated the issue status so.

Senpai’s picture

@CHX,

I reviewed this issue with David via IRC when it was first posted. I tested the patch and it worked, didn't throw errors, seemed like a good idea, and I only had one question for Strauss which he promptly answered. Then, the patch got some basic tests written, and it passes those tests.

I broke the patch review process by not posting my followup and setting to RTBC. Sorry man, I forgot! :-)

chx’s picture

Status: Needs work » Needs review
FileSize
2.01 KB

Cruft removed.

moshe weitzman’s picture

@chx - stop shouting. you made your point. I reviewed this patch, and others did as well. now dries is aware that you think it went in too quickly.

David Strauss’s picture

Status: Needs review » Needs work

I disagree with any approach that embeds variable_get() into the Forms API for sole use by forms generated by system_settings_form(), especially when all of the variable_set() operations are done by the submit handler added by system_settings_form(). Any alternative to my patch ought to still keep Forms API a neutral system with no special awareness of loading from and saving to variables.

chx’s picture

Status: Needs work » Needs review
FileSize
2.22 KB

David, whatever approach (like a generic callback added to the inheritence section where currently the variable_get call is and moving the variable_get into a separate function) I take is going to change form.inc, that's quite natural when it already does the recursion. Having such a callback seems useful for the prepopulate contrib module as well. This patch adds that and still removes seven lines of code :)

chx’s picture

FileSize
2.22 KB

With less tpyo.

Status: Needs review » Needs work

The last submitted patch failed testing.

David Strauss’s picture

The new code from chx looks much better, but "#inheritance_callbacks" is an opaque name for the option. Maybe "#inherited_default_value_callbacks", as verbose as it is?

Dave Reid’s picture

If I'm not mistaken, $form['#inheritance_callbacks'] = array('_system_settings_set_defaults'); in system_settings_form() will overwrite any current values for #inheritance_callbacks, and not add to the array as expected.

jhodgdon’s picture

Issue tags: +Needs documentation

If the new argument to system_settings_form is retained, it needs to be documented in the module upgrade guide. Someone already filed an issue on this, which I'm closing as a duplicate.
#625220: changes to system_settings_form()

chx’s picture

Status: Needs work » Needs review
FileSize
2.09 KB

Now can someone please commit this as immediately and without any review and consideration as the original broken one was?

chx’s picture

Status: Needs review » Reviewed & tested by the community
FileSize
2.09 KB

So, given the prehistory of the issue and the lack of time I set this to be ready.

Dries’s picture

Status: Reviewed & tested by the community » Needs review

This needs to be reviewed properly. For example, I think the name '#inheritence_callback' is odd -- or at least not self-explanatory and I'd love to hear what others think of it.

Status: Needs review » Needs work

The last submitted patch, inh.patch, failed testing.

chx’s picture

Status: Needs work » Closed (won't fix)

Congratulations for having another WTF , bloat and fuckup in Drupal 7. I can't be bothered to rewrite the absolutely broken test that got committed here without any review.

Dries’s picture

Status: Closed (won't fix) » Needs review

It's not because you can't be bothered with it, that this should be marked "won't fix". There are other people in the community that can help.

David Strauss’s picture

Why, exactly, is this critical?

chx’s picture

Because it's broken read #28. The functionality is not critical. If it's rolled back, then it's normal.

David Strauss’s picture

@chx The comments in #28 do not qualify this as a critical issue.

Code with my patch is still less redundant than before, even if it's not perfect.

The second recurse only happens on forms that use system_settings_form(), so the only real criticism here is that it doesn't work as a general Form API capability, which is not a regression from D6 or a bug. And given that my code is only used on settings forms, the extra recursive traversal is not an important performance issue.

Damien Tournoud’s picture

Priority: Critical » Normal

I'm with chx that this has been committed too soon, that it is a very unflexible way of doing that. But I disagree on the critical qualification.

chx’s picture

Priority: Normal » Critical

What an activity. Can someone please instead FIX this? And I wont relent that fixing the current state is critical.

sun’s picture

Status: Needs review » Needs work

@chx: Can we discuss this overall issue/patch in IRC/Skype?

sun.core’s picture

Version: 7.x-dev » 8.x-dev
Priority: Critical » Normal

I neither really like the current implementation, nor do I like the latest patch in there. In effect, this means we need to clean up this mess in D8.

jhodgdon’s picture

Version: 8.x-dev » 7.x-dev

This needs to stay as a D7 bug at least until the documentation is fixed. It's not currently documented in the module upgrade guide.

sun’s picture

Priority: Normal » Critical
Issue tags: +API change

Similar to chx and Damien, I suggest to roll back this new convenience feature, since it is implemented in a way that is incompatible with certain forms and existing Form API features.

Form elements that expand into multiple and similar form processing code is incompatible with automatic defaults.

@see #820816: #type text_format not compatible with system_settings_form($automatic_defaults = TRUE)

This leaves a big WTF to developers facing the issue, so by introducing something for convenience, we also introduced weirdness that cannot be resolved cleanly for D7. We therefore should roll back this feature and try again in D8, for which we will need to improve the per-element features of Form API anyway.

chx’s picture

Oh I am glad that as Dries said "there are other people in the community that can help" and we have seen tremendous progress since I won't fixed it! So many patches and discussions, whee! Edit: it's been five months.

jhodgdon’s picture

OK. So we have a patch in #43 that made some changes to the committed patch in #23, which was rejected by Dries a few comments afterwards for having obscure variable names. That can certainly be fixed, but does that patch actually solve the problem(s) with #23's patch?

In other words, do we want to completely roll back #23, or is there some way to salvage the new API?

I took a look at #820186 (mentioned above in #56), and understand from that that not everything works with automatic variable loading, but I'm not sure I understand why, or whether we should completely scrap it or fix it up or just document better what works and what doesn't. I guess that's because I don't really understand what works and what doesn't... Can someone sum it up in a few words? And can't the forms that don't work with automatic loading just pass FALSE in to disable it and go back to the old way?

Stevel’s picture

I'm in favor of a complete roll back of #23 for D7, as this indeed makes the API more obscure:
when the developer sets a default value, but a variable with the same name exists, the variable is used instead.
Using the old API, variable_get is used when the form is defined, so the developer can explicitly choose that the variable is used.

The proposed approach only makes sense when providing a default value can be made optional in the form definition, getting the default value in an automatic way (perhaps using #145164: DX: Use hook_variable_info to declare variables and defaults?).

chx’s picture

Status: Needs work » Needs review
FileSize
6.83 KB
  1. The test is very confusing as it used the variable name "automated" and called system_settings_form with FALSE which is not automated.
  2. The test is wrong because it did not use identical. NULL passes assertFalse for example.
  3. The test is wrong because it does not use form API.
  4. The code is wrong because it recursively iterates the form itself instead of hooking into form_builder. Aka the code also bypassed form API.

The child_callback name has been coined by mikey_p and ksenzee and I like it.

chx’s picture

Assigned: David Strauss » chx
FileSize
6.83 KB

with less tyops.

jhodgdon’s picture

Assigned: chx » Unassigned
FileSize
8.41 KB

I think the other thing that needs to be done to avoid #56 problems is to update the doc for the function. Here's the patch in #61 with updated doc.

jhodgdon’s picture

Also, I have reviewed the code and test portion of the patch in #61/#62, and I am in favor of RTBC. As I wrote the doc section, I will not change the status however. Plus we should wait until the test bot springs into action and verifies it is working (which I guess is waiting for http://qa.drupal.org/head-status to get to green).

chx’s picture

Status: Needs review » Reviewed & tested by the community

Then go. When the bot comes back it cna CNW if necessary. Criticals die!

hass’s picture

#820816: #type text_format not compatible with system_settings_form($automatic_defaults = TRUE) has been marked as duplicate, but have a patch that fixes the text format issue and docs for upgrade page.

sun’s picture

Status: Reviewed & tested by the community » Needs work
+++ includes/form.inc	18 Jun 2010 19:29:57 -0000
@@ -1443,6 +1443,12 @@
+    if (!empty($form_state['complete form']['#child_callback'])) {
+      foreach ($form_state['complete form']['#child_callback'] as $callback) {
+        $callback($element, $key);
+      }
+    }

This patch introduces a top-level form #property that has an impact on all elements in the form.

I'm quite sure that we do not have such a property and behavior in Form API yet. And I'm not comfortable with the idea of having to start to check properties on the top-level of a $form to find out what exactly happens or happened to all elements in a form.

Consequently, this patch takes the opposite of the direction we need to go: instead of improving the per-element behavior, we introduce "global top-down wildcard behaviors". Effectively, this patch does not solve the incompatibility with #type 'text_format' and other expanding form elements.

effulgentsia’s picture

If this were 9 months ago, I'd be unhesitatingly in favor of rolling back automatic defaults until a proper solution were figured out. But now, I think we need to look for a solution that would cause as little screaming as possible from contrib authors. We asked developers to take the #D7CX pledge, and we should be as considerate to the ones who made good on it as we can be; otherwise, it'll be hard to ask them to take a #D8CX pledge.

  • Rolling back would mean breaking every D7 contrib module that calls system_settings_form() expecting automatic defaults to work. But, in IRC, jhodgdon said this might be less of a problem as what I initially thought it would be, as we never documented automatic defaults in the module upgrade guide, so there might not be that many contrib modules taking advantage of it. Does anyone have a full CVS local copy of contrib in order to find out how big an impact a roll back would have?
  • Moving the application of automatic defaults into the form_builder() part of FAPI, as #62 attempts, would cause a change in the relationship between automatic defaults and hook_form_alter(). In HEAD, a change to #default_value in hook_form_alter() happens after automatic defaults have been applied, and therefore, sets the real #default_value. With #62, automatic defaults would be applied after hook_form_alter(). While I think chx is ultimately right, and if automatic defaults exist at all, they should happen during the form_builder() stage, I think this change in when they get applied relative to hook_form_alter() is a worse BC break than a full reversion. So between rolling back, and fixing #62 to address #66, my vote is to roll back. Note, one way to make #62 address #66 is to have _system_settings_set_defaults() be added as a #process function that adds defaults to its children and adds itself as a #process for those children, but again, my preference is to roll back and do automatic defaults right in D8.
  • A final option is to leave automatic defaults with their half-baked implementation: fix issues with #type=text_format and maybe similar elements, but otherwise, simply document that automatic defaults only apply to elements that exist at the time system_settings_form() is called, and not to elements that get added by hook_form_alter() or in a #process function. This is best from a BC perspective, but is an annoying WTF, so what would cause more screaming from contrib authors? If it turns out there are a lot of contrib modules already relying on automatic defaults, then perhaps this option is best. But otherwise, I think rolling back is preferable to the confusion that the current implementation would cause.

Reading the later comments on this issue, I think there's a growing consensus to roll back. But I'm not sure it's a sufficient enough consensus yet. Any disagreements? At some point, we may need to have Dries give his opinion, so as not to waste time writing a roll back patch that he won't approve.

effulgentsia’s picture

Issue tags: +DrupalWTF

Adding the WTF tag, because of the way in which the current implementation interacts with elements added by hook_form_alter() and #process.

effulgentsia’s picture

By the way, I just want to also say that I mean no offense to the people who worked on this issue prior to #23. I think the idea is a good one. It's not at all uncommon for problems to turn up with an initial implementation of any idea, let alone one involved with FAPI. It's a shame we're this far into D7 with an implementation that's causing these problems, and now we just need to find the best path forward as a result. Regardless how we proceed for D7, I really want to see this functionality in D8.

effulgentsia’s picture

Status: Needs work » Needs review
FileSize
13.12 KB

I changed my mind on my current preference for how to proceed. While I can go along with a decision to roll back automatic defaults completely if that's what the community decides, I think #67.3 is acceptable if documented. Here's a patch that does that. It makes it clear that hook_form_alter() and #process happens AFTER automatic defaults are applied and that therefore those functions are responsible for implementing their own variable_get() if needed. It also adds a #system_settings_automatic_default_value property to allow individual elements to opt-out of having their #default_value changed with a variable_get() call, so this can be used when adding a 'text_format' element to a system settings form, as was the issue in #820816: #type text_format not compatible with system_settings_form($automatic_defaults = TRUE). Note, this new property is not a new FAPI property: it's a property that only has meaning when the system_settings_form() helper function is called, and the property is prefixed with the module name that defines its meaning. This is a normal pattern, similar to #node_edit_form.

jhodgdon’s picture

To me, something called
#system_settings_automatic_default_value
sounds like I am giving the value. Maybe a different name like
#system_settings_use_automatic_default
would make it more self-documenting that it should be set to TRUE/FALSE?

Other than that, I think the documentation and code here is clear, and I think the approach is reasonable, given that this was originally committed a while back.

effulgentsia’s picture

Thanks, I agree that #system_settings_use_automatic_default is a better name.

chx’s picture

Sure. Please add a comment saying "This is a horrible hack to be removed in Drupal 8". We do not want people to get an idea it's ok to recurse their forms.

effulgentsia’s picture

+++ modules/system/system.module	23 Jun 2010 20:24:23 -0000
@@ -2568,32 +2568,63 @@ function system_default_region($theme) {
+  // @todo For Drupal 8, instead of recursively applying automatic defaults
+  //   here, integrate automatic defaults into form_builder() processing.

@chx: here's what the comment is in the latest patch. Are you wanting something stronger? Perhaps within form.inc somewhere explaining how to properly recurse?

Powered by Dreditor.

effulgentsia’s picture

Assigned: Unassigned » effulgentsia
Status: Needs review » Needs work

Discussed with chx in IRC, and yes, the comment needs to be much stronger, and I think belongs in form.inc, linked to from _system_settings_form_automatic_defaults(). I'll work on that, so updating the issue attributes, but more reviews on approach are still welcome.

hass’s picture

I have not tested the patch, but the code in #72 seems not to fix the automatic value loading bug of #type text_format - that the patch in http://drupal.org/node/820816#comment-3106520 fixes. Nevertheless the autoloading may be an unloved hack or not, the autoloading should also work for 'text_format' if this autoloading feature is kept. After I understood how the loading works I think this is really something that is a cool idea, but it was only sooo confusing that it had this buggy behavior. But on the end of the day if the autoloading and upgrade docs would have been existed - it wouldn't have caused so much confusion to me. Why are you not integrating my patch?

effulgentsia’s picture

@hass: I disagree about having _system_settings_form_automatic_defaults() contain special-case logic for 'text_format'. 'text_format' is one example of an element type that's incompatible with auto-default. There may be others (even if not in core, then in contrib). #72 adds a property #system_settings_use_automatic_default that can be used to deal with the text_format problem. A settings form that adds a 'text_format' element needs to set #default_value and #format using variable_get() calls and set #system_settings_use_automatic_default to FALSE. We need to make auto defaults better in D8, but for D7, I don't think that's too bad of a compromise.

effulgentsia’s picture

Assigned: effulgentsia » Unassigned
Status: Needs work » Needs review
FileSize
16.54 KB
effulgentsia’s picture

Made the @todo comment in _system_settings_form_automatic_defaults() even more strongly worded.

jhodgdon’s picture

I very much like the documentation in the patch above. +1 for RTBC, but will let someone else review it and set the status.

Stevel’s picture

Status: Needs review » Reviewed & tested by the community

These tests seem to cover it, and documentation was reviewed in #80, so rtbc.

Dries’s picture

If this is perceived as a 'critical' problem (and according to the status field it is), then it could be rolled back IMO. To some extend, this is why we're still in alpha and not in a release candidate.

webchick’s picture

Status: Reviewed & tested by the community » Needs work

I'm fine with rolling this back. It sounds like it was a bit contentious to begin with, and introduces problems for complex form elements. For once, our annoying habit of not documenting changes immediately things works out in our favour. ;P~

chx’s picture

Everyone hold: we have BOTH committers on board for a rollback. Quick, someone do a rollback patch before they change their minds!

sun’s picture

Status: Needs work » Needs review
Issue tags: -Needs documentation
FileSize
24.46 KB

Some sloppy follow-up patch must have changed the default value of $automatic_defaults, without updating settings forms throughout core accordingly.

Additionally, many forms in core are manually using variable_get() AND automatic defaults.

Many clear signs of something going wrong.

We still want to commit the Form API documentation improvements by effulgentsia. Let's create a separate issue for them and link to it here.

yay for my first patch since months... that needs a proper review.

Stevel’s picture

Status: Needs review » Needs work
+++ modules/system/system.admin.inc	25 Jun 2010 14:10:45 -0000
@@ -1797,7 +1796,7 @@ function system_image_toolkit_settings()
-  return system_settings_form($form, TRUE);

In this function the default value isn't restored:
'#default_value' => variable_get('image_toolkit', image_get_toolkit()), so this would become
variable_get('image_toolkit', $current_toolkit) I suppose.

$current_toolkit is the toolkit that is effectively used, instead of the one currently configured.

Also, the call in system_performance_settings isn't included in this patch.

Powered by Dreditor.

Wow, that was quite a list to go through :)

effulgentsia’s picture

Re #85 about still wanting the form_builder() documentation, but not in this issue any more: I merged it in with #736298: Refactor file.module to use proper button click detection, enabling FAPI to improve button click detection security, which also has a lot of new form_builder() documentation, so all of it can be reviewed together.

marcingy’s picture

Status: Needs work » Needs review
FileSize
22.8 KB

Reroll fixing image_kit issue and also removes a call to system_settings_form which still had 2 parameters. system_performance_settings doesn't need amending as it doesn't use default values.

Stevel’s picture

@marcingy: The call to system_settings_form you mention in #88 is the one in system_performance_settings :)

The changes to modules/locale/locale.admin.inc got lost in the latest patch. Is there a reason you left this out?
(though I'm not entirely sure whether or not that change will cause problems or not)

sun’s picture

locale changes back in.

Stevel’s picture

Status: Needs review » Reviewed & tested by the community

This is good to go for me.

Dries’s picture

This is a clean rollback. Committed to CVS HEAD. Thanks sun et al.

Dries’s picture

Status: Reviewed & tested by the community » Fixed

This is a clean rollback. Committed to CVS HEAD. Thanks sun et al.

Dave Reid’s picture

We need to double-check this is not referenced in the D6 to D7 module upgrading. This also needs to be broadcast on the devel list as this broke any modules ported to D7 that used this.

effulgentsia’s picture

Confirmed that original feature was not documented or referenced in http://drupal.org/node/224333, so roll back requires no documentation. rfay sent an email to the dev list yesterday with the notification of the roll back.

Dave Reid’s picture

Awesome. Thanks for double-checking.

Status: Fixed » Closed (fixed)
Issue tags: -DrupalWTF, -API change

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