/** * show variables settings page */ function jv_admin_settings_page() { //$post_types = jv_get_post_types( 'object' ); $jv_read_settings = jv_get_read_settings(); $jv_multisite_settings = jv_get_multisite_settings(); $jv_tabs = !isset($_GET['tab']) ? 'fields' : $_GET['tab']; // Form submit processing if (!empty($_POST['submitted']) && !empty($_POST['jv_settings'])) { $post = array_map('stripslashes_deep', $_POST['jv_settings']); // update database with new values $variables = array(); if (!empty($post['slug'])) { foreach ($post['slug'] as $key => $slug) { if ($key == 0) { continue; } // 0 index is empty row for copy $variables[$slug] = array('type' => $post['type'][$key], 'slug' => $post['slug'][$key], 'name' => $post['title'][$key], 'default' => $post['default'][$key]); } //pa($variables,1); // update DB jv_update_options('jv_variables', $variables); // check if we have variables - if no - delete all values if (empty($variables)) { update_option('jv_values', array()); } } } if (!empty($_POST['jv_update_settings'])) { if (MULTISITE) { $jv_multisite_settings = jv_save_multisite_settings($_POST['jv_multisite_setting']); } $jv_read_settings = jv_update_read_settings(); } $variables = jv_get_options('jv_variables', array()); // load template include JV_ROOT . '/templates/settings_page.tpl.php'; }
/** * Function for update saving method * @return string Return read method from file or database */ function jv_update_read_settings() { $current_value = jv_get_read_settings(); $new_value = $_POST['jv_read_settings']; if (MULTISITE && ($_POST['jv_multisite_setting'] != JV_CONF_MS_NETWORK && $new_value == JV_CONF_SOURCE_FS_GLOBAL)) { jv_add_admin_notice('error', __('<strong>Settings storage update FAILED!</strong>. Your MultiSite Settings do not allow to set global storage in FileSystem', JCF_TEXTDOMAIN)); return $current_value; } }