function wppizza_custom_order_status()
{
    $orderStatus = wppizza_order_status_default('keys');
    /**allow filtering**/
    $orderStatus = apply_filters('wppizza_filter_order_status', $orderStatus);
    $setOrderStatus = array();
    foreach ($orderStatus as $oStatus) {
        $setOrderStatus[] = wppizza_validate_alpha_only(str_replace(" ", "_", strtoupper($oStatus)));
    }
    $newOrderStatus = array_unique($setOrderStatus);
    return $newOrderStatus;
}
Example #2
0
 } else {
     $allOrdersQuery = "SELECT * FROM " . $wpdb->prefix . $this->pluginOrderTable . " WHERE payment_status IN (" . $inStatus . ") " . $orderstatus . " ORDER BY id DESC " . $limit . " ";
     $allOrders = $wpdb->get_results($allOrdersQuery);
 }
 /****************************************************
  *
  *	check if there are orders and if so do loop
  *
  ***************************************************/
 /********************
 			if we have orders
 		********************/
 if (is_array($allOrders) && count($allOrders) > 0) {
     /*get any -perhaps filtered - customised order status */
     $customOrderStatus = wppizza_custom_order_status();
     $customOrderStatusGetTxt = wppizza_order_status_default();
     /*admin only notice if able to delete order*/
     if (current_user_can('wppizza_cap_delete_order')) {
         $output['notice_delete'] = "<div>" . __('Note: deleting an order will <b>ONLY</b> delete it from the database table. It will <b>NOT</b> issue any refunds, cancel the order, send emails etc.', $this->pluginLocale) . "</div>";
     }
     /*notice regarding status change*/
     $output['notice_info'] = "<div style='color:red'>" . __('"Status" is solely for your internal reference. Updating/changing the value will have no other effects but might help you to identify which orders have not been processed.', $this->pluginLocale) . "</div>";
     /********************************************************************************************
      *
      *	[TABLE OPEN]
      *
      ********************************************************************************************/
     $output['table_open'] = "<table>";
     /****************************************************************************
     				[header row]
     			****************************************************************************/
<?php

if (!defined('ABSPATH')) {
    exit;
}
/*Exit if accessed directly*/
/**get previously saved options**/
$options = $this->pluginOptions;
/**lets not forget static, uneditable options **/
$options['plugin_data']['version'] = $this->pluginVersion;
$options['plugin_data']['nag_notice'] = isset($input['plugin_data']['nag_notice']) ? $input['plugin_data']['nag_notice'] : $options['plugin_data']['nag_notice'];
$options['plugin_data']['db_order_status_options'] = !empty($input['plugin_data']['db_order_status_options']) ? $input['plugin_data']['db_order_status_options'] : wppizza_order_status_default('keys');
/**schedule cron**/
if (isset($input['cron'])) {
    $options['cron']['days_delete'] = !empty($input['cron']['days_delete']) ? max(1, $input['cron']['days_delete']) : 7;
    $options['cron']['failed_delete'] = !empty($input['cron']['failed_delete']) ? true : false;
    $cronSchedule = '';
    if (isset($input['cron']['schedule']) && in_array($input['cron']['schedule'], array('hourly', 'daily'))) {
        $cronSchedule = $input['cron']['schedule'];
    }
    $options['cron']['schedule'] = $cronSchedule;
    /*schedule or remove cron **/
    $this->wppizza_cron_setup_schedule($options['cron']);
}
/**validate global settings***/
if (isset($_POST['' . $this->pluginSlug . '_global'])) {
    /**submitted options -> validate***/
    $options['plugin_data']['js_in_footer'] = !empty($input['plugin_data']['js_in_footer']) ? true : false;
    $options['plugin_data']['admin_order_history_max_results'] = wppizza_validate_int_only($input['plugin_data']['admin_order_history_max_results']);
    $options['plugin_data']['admin_order_history_include_failed'] = !empty($input['plugin_data']['admin_order_history_include_failed']) ? true : false;
    $options['plugin_data']['admin_order_history_polling_time'] = wppizza_validate_int_only($input['plugin_data']['admin_order_history_polling_time']);