コード例 #1
0
 /**
  * Show custom information box.
  *
  * @param WP_Post $post
  * @param array   $metabox
  * @return
  */
 public static function show_information_meta_box($post, $metabox)
 {
     // For client creation
     add_thickbox();
     $args = array('post_type' => SI_Client::POST_TYPE, 'post_status' => 'publish', 'posts_per_page' => -1, 'fields' => 'ids');
     $clients = get_posts($args);
     $client_options = array();
     foreach ($clients as $client_id) {
         $client_options[$client_id] = get_the_title($client_id);
     }
     $estimate = SI_Estimate::get_instance($post->ID);
     $status = is_a($estimate, 'SI_Estimate') && $estimate->get_status() != 'auto-draft' ? $estimate->get_status() : SI_Estimate::STATUS_TEMP;
     $expiration_date = is_a($estimate, 'SI_Estimate') ? $estimate->get_expiration_date() : current_time('timestamp') + 60 * 60 * 24 * 30;
     $issue_date = is_a($estimate, 'SI_Estimate') ? $estimate->get_issue_date() : strtotime($post->post_date);
     $invoice_id = is_a($estimate, 'SI_Estimate') ? $estimate->get_invoice_id() : 0;
     $estimate_id = is_a($estimate, 'SI_Estimate') ? $estimate->get_estimate_id() : '00001';
     $po_number = is_a($estimate, 'SI_Estimate') ? $estimate->get_po_number() : '';
     $client_id = is_a($estimate, 'SI_Estimate') ? $estimate->get_client_id() : 0;
     $discount = is_a($estimate, 'SI_Estimate') ? $estimate->get_discount() : '';
     $tax = is_a($estimate, 'SI_Estimate') ? $estimate->get_tax() : '';
     $tax2 = is_a($estimate, 'SI_Estimate') ? $estimate->get_tax2() : '';
     $currency = is_a($estimate, 'SI_Estimate') ? $estimate->get_currency() : '';
     self::load_view('admin/meta-boxes/estimates/information', array('id' => $post->ID, 'post' => $post, 'estimate' => $estimate, 'status' => $status, 'status_options' => SI_Estimate::get_statuses(), 'invoice_id' => $invoice_id, 'expiration_date' => $expiration_date, 'client_id' => $client_id, 'client_options' => $client_options, 'clients' => $clients, 'issue_date' => $issue_date, 'estimate_id' => $estimate_id, 'po_number' => $po_number, 'discount' => $discount, 'tax' => $tax, 'tax2' => $tax2, 'currency' => $currency), false);
     // add the client modal
     self::load_view('admin/meta-boxes/clients/creation-modal', array('fields' => SI_Clients::form_fields(false)));
 }