function seochecklist_admin_settings_submit in SEO Checklist 7.3
Same name and namespace in other branches
- 5.2 seochecklist.module \seochecklist_admin_settings_submit()
- 5 SEOChecklist.module \SEOChecklist_admin_settings_submit()
- 6.3 seochecklist.admin.inc \seochecklist_admin_settings_submit()
- 6.2 seochecklist.module \seochecklist_admin_settings_submit()
Submit callback for seochecklist_admin_settings().
File
- ./
seochecklist.admin.inc, line 113 - Administrative page callbacks for the seochecklist module.
Code
function seochecklist_admin_settings_submit($form, &$form_state) {
global $user;
$count = 0;
foreach ($form_state['values'] as $key => $value) {
if (preg_match('/seochecklist_task_/', $key)) {
$key = explode('_', $key);
$key = $key[2];
$current = db_query("SELECT completed FROM {seo_checklist} WHERE id = :id", array(
':id' => $key,
))
->fetchField();
if ($current === FALSE) {
db_query("INSERT INTO {seo_checklist} (id, completed, uid) VALUES (:id, :completed, :uid)", array(
':completed' => $value ? time() : 0,
':uid' => $user->uid,
':id' => $key,
));
if ($value == TRUE) {
$count++;
}
}
elseif ((bool) $current != $value) {
// If the checkbox changed states, update the record.
db_query("UPDATE {seo_checklist} SET completed = :completed, uid = :uid WHERE id = :id", array(
':completed' => $value ? time() : 0,
':uid' => $user->uid,
':id' => $key,
));
$count++;
}
}
}
variable_set('seo_checklist_link', $form_state['values']['seochecklist_task_66']);
drupal_set_message(format_plural($count, 'Updated @count task successfully.', 'Updated @count tasks successfully.'));
}