<?php

if (!defined('ABSPATH')) {
    exit;
}
//$setting_key = $this->vars['plug_slug'].'_demo_settings';
$settings_key = str_replace(array("render-metabox-", "-"), array("", "_"), basename(__FILE__, '.php'));
$plugslug = Skeleteon_Generic::get_plug_var('plug_slug');
$full_settings_key = $plugslug . '_' . $settings_key;
//var_dump($settings_key);
?>
<form method="post" action="options.php">
    <?php 
settings_fields($full_settings_key);
//
//	do_settings_sections( $settings_key );
//	get_settings($optk=null,$section=null,$sett_key=null,$def_pairs=false,$ign=true,$sanit=true) {
//$options = Skeleteon_Generic::get_settings('demo_settings');
$options = Skeleteon_Generic::get_settings_for($settings_key);
if ($options) {
    foreach ($options as $key => $field) {
        Skeleteon_Interface::gen_field($key, $field, $full_settings_key);
    }
}
submit_button(__('Save Changes'), 'primary', '', false);
submit_button(__('Restore'), 'secondary', 'reset_settings', false);
$storedvals = get_option($full_settings_key);
Skeleteon_Generic::vd($storedvals, true);
?>
</form>
 /**
  * Validate Options.
  *
  * This runs after the submit/reset button has been clicked and
  * validates the inputs.
  *
  * @uses $_POST['reset'] to restore default options
  */
 public function settings_action($input)
 {
     if (!isset($_POST['option_page'])) {
         return;
     }
     $settk = $_POST['option_page'];
     $defaults = Skeleteon_Generic::get_settings_for($settk);
     require_once $this->vars['plug_dir'] . 'skeleteon/inc/class-ske-sanitize.php';
     //		die("445");
     // Is it reset or update ?
     if (isset($_POST['reset_settings'])) {
         Skeleteon_Sanitize::add_setting_msg('info', 'Default Settings <code>restored</code>.');
         //	$action = 'reset';
         //		$input = false;
         return Skeleteon_Sanitize::sanitize_options($defaults, $input, 'reset');
     } else {
         Skeleteon_Sanitize::add_setting_msg('info', 'Settings  <code>Updated</code>.');
         //	$action = 'update';
         return Skeleteon_Sanitize::sanitize_options($defaults, $input, 'update');
     }
     //		var_dump($_POST['option_page'],$input);
     //		var_dump($this->all_settings);
     //	exit;
     /*		var_dump($this);
     		var_dump('../'. plugin_basename(__FILE__ ) );
     		print_r(get_declared_classes());*/
     /*
     		$plug_base_arr =  explode('/', plugin_basename( __FILE__ ), 2);
     			$plug_base_folder =  $plug_base_arr[0];
     			$plug_dir = WP_PLUGIN_DIR . '/' . $plug_base_folder . '/';*/
     //			var_dump($optk);
     require_once $this->vars['plug_dir'] . 'skeleteon/inc/class-ske-sanitize.php';
     return Skeleteon_Sanitize::settings_save($input, $settk, __CLASS__);
     //var_dump($input);
     //die("22");
     //	var_dump($this);
     //	require_once( $this->plug_dir . 'skeleteon/inc/ske-generic-functions.php' );
     //	die("99");
     //		include_once( $this->plug_dir . 'skeleteon/inc/ske-generic-functions.php' );
     //	require_once( $this->plug_dir . 'skeleteon/inc/class-ske-sanitize.php' );
     //	Skeleteon_Sanitize::sanitize_option($input);
 }