public static function _admin_init() { # Register settings if (self::$data['settings']) { foreach (array_keys(self::$data['settings']) as $type) { if ($type === 'theme') { continue; } require_once self::$data['paths']['inc'] . "/{$type}.php"; if ($type == 'plugin') { foreach (self::$data['settings']['plugin'] as $group) { new kcSettings_plugin($group); } # Lock add_filter('plugin_action_links', array(__CLASS__, '_lock'), 10, 4); } else { call_user_func(array("kcSettings_{$type}", 'init')); } } } # Admin body class add_action('admin_body_class', array(__CLASS__, 'admin_body_class')); # Admin scripts n styles add_action('admin_enqueue_scripts', array(__CLASS__, '_sns_admin')); # Builder: only load if NOT bundled if (self::$data['standalone']) { require_once self::$data['paths']['inc'] . '/builder.php'; kcSettings_builder::init(); } add_action('wp_ajax_kc_get_image_url', 'kc_ajax_get_image_url'); }
public static function validate($values) { /** * Task: clone / delete an item * Just return the values, assume it's valid */ if (!isset($values['id'])) { $settings = $values; } else { $settings = self::$data['kcsb']['settings']; if (isset($values['id']) && $values['id']) { $settings[$values['id']] = $values; if ($settings === self::$data['kcsb']['settings']) { self::redirect(); } else { self::$update_message = __('Setting succesfully updated.', 'kc-settings'); } } else { set_transient('kcsb', $values); add_settings_error('kcsb', 'not_saved', __('Setting was NOT saved! Please fill all the required fields.', 'kc-settings')); self::redirect(); } } return $settings; }