Exemplo n.º 1
0
 /**
  * Sets up plugin pages and loads their scripts
  *
  * @since 3.0
  *
  */
 static function admin_menu()
 {
     global $wpi_settings, $submenu, $wp_version;
     /* Get capability required for this plugin's menu to be displayed to the user */
     $capability = self::get_capability_by_level($wpi_settings['user_level']);
     $wpi_settings['pages']['main'] = add_object_page(__('Invoice', WPI), 'Invoice', $capability, 'wpi_main', null, 'dashicons-money');
     $overview_page = new \UsabilityDynamics\UI\Page('wpi_main', __('View All', WPI), __('View All', WPI), $capability, 'wpi_main');
     $wpi_settings['pages']['main'] = $overview_page->screen_id;
     $wpi_settings['pages']['edit'] = add_submenu_page('wpi_main', __('Add New', WPI), __('Add New', WPI), $capability, 'wpi_page_manage_invoice', array('WPI_UI', 'page_loader'));
     $wpi_settings['pages']['reports'] = add_submenu_page('wpi_main', __('Reports', WPI), __('Reports', WPI), $capability, 'wpi_page_reports', array('WPI_UI', 'page_loader'));
     $wpi_settings['pages'] = apply_filters('wpi_pages', $wpi_settings['pages']);
     $wpi_settings['pages']['settings'] = add_submenu_page('wpi_main', __('Settings', WPI), __('Settings', WPI), $capability, 'wpi_page_settings', array('WPI_UI', 'page_loader'));
     /* Update screens information */
     WPI_Settings::setOption('pages', $wpi_settings['pages']);
     /* Register meta boxes */
     add_action('add_meta_boxes_' . $wpi_settings['pages']['main'], array(__CLASS__, 'metaboxes_overview'));
     // Add Actions
     add_action('load-' . $wpi_settings['pages']['main'], array(__CLASS__, 'pre_load_overview'));
     add_action('load-' . $wpi_settings['pages']['edit'], array(__CLASS__, 'pre_load_edit_page'));
     add_action('load-' . $wpi_settings['pages']['reports'], array(__CLASS__, 'pre_load_reports_page'));
     add_action('load-' . $wpi_settings['pages']['settings'], array(__CLASS__, 'pre_load_settings_page'));
     //* Load common actions on all WPI pages */
     foreach ($wpi_settings['pages'] as $page_slug) {
         add_action('load-' . $page_slug, array('WPI_UI', 'common_pre_header'));
     }
     // Add Filters
     add_filter('wpi_page_loader_path', array('WPI_UI', "wpi_display_user_selection"), 0, 3);
     add_filter('wpi_pre_header_invoice_page_wpi_page_manage_invoice', array('WPI_UI', "page_manage_invoice_preprocess"));
     add_filter('wpi_overview_filter_types', array(__CLASS__, 'add_wpi_overview_filter_types'));
     add_filter('wpi_overview_filter_statuses', array(__CLASS__, 'add_wpi_overview_filter_statuses'));
 }
  /**
   * Sets up plugin pages and loads their scripts
   *
   * @since 3.0
   *
   */
  function admin_menu() {
    global $wpi_settings, $submenu, $wp_version;

    //unset($submenu['edit.php?post_type=wpi_object'][10]);

    /* Get capability required for this plugin's menu to be displayed to the user */
    $capability = self::get_capability_by_level($wpi_settings['user_level']);
    
    $wpi_settings['pages']['main'] = add_object_page( __('Invoice', WPI),  'Invoice', $capability, 'wpi_main', array('WPI_UI', 'page_loader'), WPI_URL . "/core/css/images/wp_invoice.png");
    $wpi_settings['pages']['main'] = add_submenu_page('wpi_main', __('View All', WPI), __('View All', WPI), $capability, 'wpi_main',array('WPI_UI', 'page_loader'));
    $wpi_settings['pages']['edit'] = add_submenu_page('wpi_main', __('Add New', WPI), __('Add New', WPI), $capability, 'wpi_page_manage_invoice',array('WPI_UI', 'page_loader'));
    $wpi_settings['pages']['reports'] = add_submenu_page('wpi_main', __('Reports', WPI), __('Reports', WPI), $capability, 'wpi_page_reports',array('WPI_UI', 'page_loader'));

    $wpi_settings['pages'] = apply_filters('wpi_pages', $wpi_settings['pages']);

    $wpi_settings['pages']['settings'] = add_submenu_page('wpi_main', __('Settings', WPI), __('Settings', WPI), $capability, 'wpi_page_settings', array('WPI_UI', 'page_loader'));
    
    /* Update screens information */
    WPI_Settings::setOption('pages', $wpi_settings['pages']);
    
    // Add Actions
    add_action('load-' . $wpi_settings['pages']['main'], array( 'WPI_UI', 'pre_load_main_page' ));
    add_action('load-' . $wpi_settings['pages']['edit'], array( 'WPI_UI', 'pre_load_edit_page' ));

    //* Load common actions on all WPI pages */
    foreach($wpi_settings['pages'] as $page_slug) {
      add_action('load-' . $page_slug, array( 'WPI_UI', 'common_pre_header'));
      //** WP 3.3 fix. - korotkov@ud */
      if ( version_compare($wp_version, '3.3', '>=') ) {
        add_action("load-$page_slug", array( 'WPI_UI', 'contextual_help' ));
      }
    }

    // Add Filters
    add_filter('wpi_page_loader_path', array('WPI_UI', "wpi_display_user_selection"), 0,3);
    add_filter('wpi_pre_header_invoice_page_wpi_page_manage_invoice', array('WPI_UI', "page_manage_invoice_preprocess"));
    
  }
  /**
   * Import legacy invoice data via ajax call
   *
   * @since 3.0
   *
   */
   static function update_wpi_option() {
    global $wpdb, $wpi_settings;

    $type = $_REQUEST['import_type'];

    if(WPI_Settings::setOption($_REQUEST['option'], $_REQUEST['value'], $_REQUEST['group'])) {
      $return['success'] = 'true';
    } else {
      $return['success'] = 'false';
    }

    die(json_encode($return));
  }