update_custom(); } $awp_init[] = 'AWP_customoptions'; register_activation_hook(__file__,array('AWP_customoptions','set_defaults')); //register_deactivation_hook(__file__,array(&$this,'rm_options')); Class AWP_customoptions{ function init(){ if(strpos($_SERVER['PHP_SELF'], 'wp-admin') !== false){ add_action('awp_admin_main_options',array(&$this,'admin')); add_filter('awp_get_options',array(&$this,'awp_get_options')); if($_GET['post']){ add_filter('dbx_page_advanced', array(&$this, 'customUI')); add_filter('dbx_post_advanced', array(&$this, 'customUI')); add_action('init', array(&$this,'start')); } }elseif($awpall['allow_custom'] == 'Enabled' ){ add_filter('awp_options', array(&$this, 'get_custom')); } } function get_char_map_html(){ echo '
'; char_map_build_list(); echo '
'; char_map_build_map(1); echo '
'; } function start(){ global $aWP; remove_action('awp_build_menu',array('AWP_admin','admin_panel'),10); add_action('awp_build_menu',array(&$this,'options_panel')); $aWP[custom_menu][items]['checkbox'][] = array('disable_awp',0); do_action('awp_admin_main'); do_action('awp_admin_posts'); do_action('awp_admin_comments'); do_action('awp_admin_commentform'); do_action('awp_admin_integration'); do_action('awp_admin_other'); do_action('awp_admin_ajax'); } function print_menu(){ global $aWP,$awpall,$awp_mods; $id = intval($_GET['post']); $aWP_custom = get_post_meta($id, 'awpcustom',true); echo '
'; echo ''; echo ' '; echo ' '; echo '
'; echo ' '; echo ' '; if($options != '' || $options2 != '') echo '

' . __('Current Post Custom Options', 'awp') . '

'; if($options != ''){ echo '
'; echo ' '; echo __('Delete Option?','awp').''; echo ' '; } if($options2 != ''){ echo '
'; echo ' '; echo __('Delete Option?','awp').''; echo ' '; } echo '
'; } function options_panel($menu){ global $aWP, $awpall; require_once(ABSPATH . PLUGINDIR . '/'. AWP_BASE . '/xmlparser.php'); $marray = AWP::XML($menu); if(is_array($marray[menus])){ $this->admin_panel_menu($marray[menus][menu]); }elseif(is_array($marray[menu])){ $this->admin_panel_menu($marray[menu]); }elseif(is_array($marray[submenu])){ $this->admin_panel_sub($marray[submenu]); }elseif(is_array($marray[item])){ $this->admin_panel_item($marray[item]); } } function admin_panel_menu($menu){ global $aWP, $awpall; foreach($menu as $m){ $id = $m[id]; if($id){ $aWP[custom_menu][modules][] = array($id,$m[title]); } if($m[submenu]){ $this->admin_panel_sub($m[submenu]); if($m[action]) do_action($m[action]); } } } function admin_panel_sub($smenu){ global $aWP, $awpall; foreach($smenu as $menu){ if(is_array($menu[item])){ $this->admin_panel_item($menu[item]); if($menu[action]) do_action($menu[action]); } } } function admin_panel_item($items){ global $aWP, $awpall; foreach($items as $item){ $selected = $size =$post =$pre = $extra=''; $type = $item[type]; $name = $item[name]; if($type && $item['global'] != 1){ if($type != 'select' && $type != 'radio'){ $value=$awpall[$name]; $aWP[custom_menu][items][$type][] = array($name,$value); }elseif($type == 'radio'){ $value=$item[value]; $aWP[custom_menu][items][$type][$name][] = array($value,$item[d]); } if($item[action]) do_action($item[action]); } } } function admin(){ global $awpall, $aWP; ob_start(); ?> Custom Options -- %s','awp');?>]]> ]]> 0) $id = $_REQUEST['post_ID']; $stored_custom = get_post_meta($id, 'awpcustom', false); if($_POST['name'] == 'disable_awp' && $_POST['value'] != $stored_custom[disable_awp]){ if($_POST['value'] == 0){ delete_post_meta($id, 'awp_disable'); }else{ add_post_meta($id, 'awp_disable', 1); } } if(isset($stored_custom)){echo 2; $stored_custom = unserialize($stored_custom[0]); $awp_custom = $stored_custom; if($_POST['delete']){ unset($awp_custom[$_POST['name']]); }else{ $awp_custom[$_POST['name']] = $_POST['value']; } update_post_meta($id, 'awpcustom', $awp_custom); }else{echo 1; $awp_custom[$_POST['name']] = $_POST['value']; add_post_meta($id, 'awpcustom', $awp_custom); } } function get_adminUI(){ global $awpall; $id = $post->ID; $awp_custom = get_post_meta($id, 'awpcustom',true); require_once(ABSPATH . PLUGINDIR . '/'. AWP_BASE . '/xmlparser.php'); $marray = AWP::XML($menu); if(is_array($marray[menus])){ $this->admin_panel_menu($marray[menus][menu]); }elseif(is_array($marray[menu])){ $this->admin_panel_menu($marray[menu]); }elseif(is_array($marray[submenu])){ $this->admin_panel_sub($marray[submenu]); }elseif(is_array($marray[item])){ $this->admin_panel_item($marray[item]); } } function customUI(){ global $aWP, $awpall, $id,$post; ?>

print_menu()?>