boolean userSettingsProcessForm(struct userSettings *us) /* Handle button press in userSettings form. * If this returns TRUE then form is finished processing * and you can call something to make the next page. */ { struct cart *cart = us->cart; char *command = cartString(cart, us->formVar); boolean retVal = TRUE; char *name = cartNonemptyString(cart, us->nameVar); command = trimSpaces(command); if (sameWord(command, "save") && name != NULL) { char *varName = settingsVarName(us->savePrefix, name); saveSettings(us, varName); freez(&varName); } else if (startsWith(command, "load") && name != NULL) { userSettingsUseSelected(us); } else if (startsWith("delete", command)) { char *which = cartOptionalString(cart, us->listDisplayVar); if (which != NULL) { char *varName = settingsVarName(us->savePrefix, which); cartRemove(cart, varName); userSettingsSaveForm(us); retVal = FALSE; } } cartRemove(cart, us->formVar); return retVal; }
char *configVarVal(struct column *col, char *varName) /* Return value for configuration variable. Return NULL if it * doesn't exist or if it is "" */ { char *name = configVarName(col, varName); return cartNonemptyString(cart, name); }
char *advFilterVal(struct column *col, char *varName) /* Return value for advanced filter variable. Return NULL if it * doesn't exist or if it is "" */ { char *name = advFilterName(col, varName); char *s; s = cartNonemptyString(cart, name); if (s != NULL) fixSafariSpaceInQuotes(s); return s; }