You are here

function cctags_settings_submit in cctags 6

Same name and namespace in other branches
  1. 7 cctags.admin.inc \cctags_settings_submit()

File

./cctags.admin.inc, line 140

Code

function cctags_settings_submit($form, &$form_state) {
  if (!form_get_errors()) {
    variable_set('cctags_node_load', $form_state['values']['cctags_node']['block']['cctags_node_load']);
    variable_set('cctags_node_block_name', check_plain($form_state['values']['cctags_node']['block']['cctags_node_block_name']));
    variable_set('cctags_node_links', $form_state['values']['cctags_node']['block']['cctags_node_links']);
    variable_set('cctags_node_links_block_name', check_plain($form_state['values']['cctags_node']['block']['cctags_node_links_block_name']));
    variable_set('cctags_users_load', $form_state['values']['cctags_users']['cctags_users_load']);
    variable_set('cctags_users_block_name', check_plain($form_state['values']['cctags_users']['cctags_users_block_name']));
    variable_set('cctags_users_page_title', check_plain($form_state['values']['cctags_users']['cctags_users_page_title']));
    variable_set('cctags_users_page_path', $form_state['values']['cctags_users']['cctags_users_page_path']);
    variable_set('cctags_users_page_amount', $form_state['values']['cctags_users']['cctags_users_page_amount']);
    variable_set('cctags_users_page_sort', $form_state['values']['cctags_users']['cctags_users_page_sort']);
    variable_set('cctags_node_clear', $form_state['values']['cctags_clear']['cctags_node_clear']);
    variable_set('cctags_cron_clear', $form_state['values']['cctags_clear']['cctags_cron_clear']);
    foreach ($form_state['values']['cctags_item'] as $key => $value) {
      $block = $value['cctags_item_block'];
      $page = $value['cctags_item_page'];
      $cctid = $value['cctid'];
      if ($block) {
        $block_name = check_plain($form['cctags_item'][$key]['cctags_item_block_name']['#value'] ? $form['cctags_item'][$key]['cctags_item_block_name']['#value'] : $form['cctags_item'][$key]['cctags_item_name']['#value']);
        db_query("UPDATE {cctags} SET block_name='%s' WHERE cctid=%d", $block_name, $cctid);
      }
      if ($page) {
        $page_path = $form['cctags_item'][$key]['cctags_item_page_path']['#value'] ? $form['cctags_item'][$key]['cctags_item_page_path']['#value'] : 'cctags/page/' . $cctid;
        $page_title = check_plain($form['cctags_item'][$key]['cctags_item_page_title']['#value'] ? $form['cctags_item'][$key]['cctags_item_page_path']['#value'] : $form['cctags_item'][$key]['cctags_item_name']['#value']);
        db_query("UPDATE {cctags} SET page_path='%s',page_title='%s' WHERE cctid=%d", $page_path, $page_title, $cctid);
      }
      db_query("UPDATE {cctags} SET block=%d,page=%d WHERE cctid=%d", $block, $page, $cctid);
    }
    menu_rebuild();
    _cctags_clear_cache(NULL, 'all', TRUE);
    _cctags_clear_cache(-3, 'usres', TRUE);
    _cctags_clear_cache(-2, NULL, TRUE);
    _cctags_clear_cache(-1, NULL, TRUE);
  }
}