Пример #1
0
	static function stripslashes_deep_post( $array ){
		$res = array();
		foreach( $array as $key => $value ){
			$key = stripslashes($key);
			if( is_array($value) ){
				$value = WC2_Utils::stripslashes_deep_post( $value );
			}else{
				$value = stripslashes($value);
			}
			$res[$key] = $value;
		}
		return $res;
	}
Пример #2
0
 public function admin_delivery_page()
 {
     if (!isset($this->plugin_screen_hook_suffix)) {
         return;
     }
     $screen = get_current_screen();
     if ($this->plugin_screen_hook_suffix != $screen->id) {
         return;
     }
     $delivery = wc2_get_option('delivery');
     if (isset($_POST['wc2_option_update'])) {
         check_admin_referer('wc2_setting_delivery', 'wc2_nonce');
         $_POST = WC2_Utils::stripslashes_deep_post($_POST);
         if (isset($_POST['delivery_time_limit'])) {
             $delivery['delivery_time_limit'] = $_POST['delivery_time_limit'];
         }
         if (isset($_POST['shortest_delivery_time'])) {
             $delivery['shortest_delivery_time'] = $_POST['shortest_delivery_time'];
         }
         if (isset($_POST['delivery_after_days'])) {
             $delivery['delivery_after_days'] = $_POST['delivery_after_days'];
         }
         if (isset($_POST['delivery_limit_option'])) {
             $delivery['delivery_limit_option'] = $_POST['delivery_limit_option'];
         }
         wc2_update_option('delivery', $delivery);
         $this->action_status = 'success';
         $this->action_message = __('Updated!');
     } else {
         $this->action_status = 'none';
         $this->action_message = '';
     }
     $delivery_time_limit['hour'] = isset($delivery['delivery_time_limit']['hour']) ? $delivery['delivery_time_limit']['hour'] : '00';
     $delivery_time_limit['min'] = isset($delivery['delivery_time_limit']['min']) ? $delivery['delivery_time_limit']['min'] : '00';
     $shortest_delivery_time = isset($delivery['shortest_delivery_time']) ? $delivery['shortest_delivery_time'] : '0';
     $delivery_after_days = empty($delivery['delivery_after_days']) ? 15 : (int) $delivery['delivery_after_days'];
     $delivery_limit_option = isset($delivery['delivery_limit_option']) ? $delivery['delivery_limit_option'] : 'none';
     $status = $this->action_status;
     $message = $this->action_message;
     require_once WC2_PLUGIN_DIR . '/admin/views/setting-delivery.php';
 }
Пример #3
0
 public function general_setting_page()
 {
     global $allowedposttags;
     if (!isset($this->plugin_screen_hook_suffix)) {
         return;
     }
     $screen = get_current_screen();
     if ($this->plugin_screen_hook_suffix != $screen->id) {
         return;
     }
     $general = wc2_get_option('general');
     $cart_description = wc2_get_option('cart_description');
     $member_description = wc2_get_option('member_description');
     if (array_key_exists('wc2_option_update', $_POST)) {
         check_admin_referer('wc2_setting_general', 'wc2_nonce');
         //			$this->error_message = $this->setting_delivery_check();
         $_POST = WC2_Utils::stripslashes_deep_post($_POST);
         //ショップ設定
         $general['company_name'] = isset($_POST['company_name']) ? trim($_POST['company_name']) : '';
         $general['zip_code'] = isset($_POST['zip_code']) ? trim($_POST['zip_code']) : '';
         $general['address1'] = isset($_POST['address1']) ? trim($_POST['address1']) : '';
         $general['address2'] = isset($_POST['address2']) ? trim($_POST['address2']) : '';
         $general['tel_number'] = isset($_POST['tel_number']) ? trim($_POST['tel_number']) : '';
         $general['fax_number'] = isset($_POST['fax_number']) ? trim($_POST['fax_number']) : '';
         $general['order_mail'] = isset($_POST['order_mail']) ? trim($_POST['order_mail']) : '';
         $general['inquiry_mail'] = isset($_POST['inquiry_mail']) ? trim($_POST['inquiry_mail']) : '';
         $general['sender_mail'] = isset($_POST['sender_mail']) ? trim($_POST['sender_mail']) : '';
         $general['error_mail'] = isset($_POST['error_mail']) ? trim($_POST['error_mail']) : '';
         $general['postage_privilege'] = isset($_POST['postage_privilege']) ? trim($_POST['postage_privilege']) : '';
         $general['purchase_limit'] = isset($_POST['purchase_limit']) ? trim($_POST['purchase_limit']) : '';
         $general['shipping_rule'] = isset($_POST['shipping_rule']) ? trim($_POST['shipping_rule']) : '';
         $general['tax_mode'] = isset($_POST['tax_mode']) ? trim($_POST['tax_mode']) : 'include';
         $general['tax_target'] = isset($_POST['tax_target']) ? trim($_POST['tax_target']) : 'products';
         $general['tax_rate'] = isset($_POST['tax_rate']) ? (int) $_POST['tax_rate'] : '';
         $general['tax_method'] = isset($_POST['tax_method']) ? trim($_POST['tax_method']) : '';
         $general['copyright'] = isset($_POST['copyright']) ? trim($_POST['copyright']) : '';
         $general['add2cart'] = isset($_POST['add2cart']) ? trim($_POST['add2cart']) : '0';
         //営業設定
         $general['display_mode'] = isset($_POST['display_mode']) ? trim($_POST['display_mode']) : '';
         $general['campaign_category'] = empty($_POST['cat']) ? '0' : $_POST['cat'];
         $general['campaign_privilege'] = isset($_POST['cat_privilege']) ? trim($_POST['cat_privilege']) : '';
         $general['privilege_point'] = isset($_POST['point_num']) ? (int) $_POST['point_num'] : '';
         $general['privilege_discount'] = isset($_POST['discount_num']) ? (int) $_POST['discount_num'] : '';
         $general['campaign_schedule'] = isset($_POST['campaign_schedule']) ? $_POST['campaign_schedule'] : '0';
         if (isset($_POST['business_days'])) {
             $general['business_days'] = $_POST['business_days'];
         }
         //会員システム
         $general['membersystem_state'] = isset($_POST['membersystem_state']) ? trim($_POST['membersystem_state']) : '';
         $general['membersystem_point'] = isset($_POST['membersystem_point']) ? trim($_POST['membersystem_point']) : '';
         $general['point_rate'] = isset($_POST['point_rate']) ? (int) $_POST['point_rate'] : 1;
         $general['start_point'] = isset($_POST['start_point']) ? (int) $_POST['start_point'] : '';
         $general['point_coverage'] = isset($_POST['point_coverage']) ? (int) $_POST['point_coverage'] : 0;
         $general['point_assign'] = isset($_POST['point_assign']) ? (int) $_POST['point_assign'] : 1;
         $general['member_pass_rule_min'] = isset($_POST['member_pass_rule_min']) ? (int) $_POST['member_pass_rule_min'] : 6;
         $general['member_pass_rule_max'] = isset($_POST['member_pass_rule_max']) && !empty($_POST['member_pass_rule_max']) ? (int) $_POST['member_pass_rule_max'] : '';
         //カートページ設定
         foreach ($general['indi_item_name'] as $key => $val) {
             $general['indi_item_name'][$key] = isset($_POST['indication'][$key]) ? 1 : 0;
         }
         foreach ($_POST['position'] as $key => $value) {
             $general['position'][$key] = $value;
         }
         //カート関連ページに挿入する説明書き
         foreach ($_POST['cart_header'] as $key => $value) {
             $cart_description['cart_header'][$key] = isset($_POST['cart_header'][$key]) ? addslashes(wp_kses($value, $allowedposttags)) : '';
         }
         foreach ($_POST['cart_footer'] as $key => $value) {
             $cart_description['cart_footer'][$key] = isset($_POST['cart_footer'][$key]) ? addslashes(wp_kses($value, $allowedposttags)) : '';
         }
         //会員関連ページに挿入する説明書き
         foreach ($_POST['member_header'] as $key => $value) {
             $member_description['member_header'][$key] = isset($_POST['member_header'][$key]) ? addslashes(wp_kses($value, $allowedposttags)) : '';
         }
         foreach ($_POST['member_footer'] as $key => $value) {
             $member_description['member_footer'][$key] = isset($_POST['member_footer'][$key]) ? addslashes(wp_kses($value, $allowedposttags)) : '';
         }
         if (!isset($general['indi_item_name'])) {
             $general['indi_item_name']['item_name'] = 1;
             $general['indi_item_name']['item_code'] = 1;
             $general['indi_item_name']['sku_name'] = 1;
             $general['indi_item_name']['sku_code'] = 1;
             $general['pos_item_name']['item_name'] = 1;
             $general['pos_item_name']['item_code'] = 2;
             $general['pos_item_name']['sku_name'] = 3;
             $general['pos_item_name']['sku_code'] = 4;
         }
         $general = apply_filters('wc2_filter_admin_setup_options', $general);
         wc2_update_option('general', $general);
         wc2_update_option('cart_description', $cart_description);
         wc2_update_option('member_description', $member_description);
         do_action('wc2_action_general_option_update');
         $this->action_status = 'success';
         $this->action_message = __('Updated!');
     } else {
         $this->action_status = 'none';
         $this->action_message = '';
     }
     $status = $this->action_status;
     $message = $this->action_message;
     //today
     list($todayyy, $todaymm, $todaydd) = wc2_get_today();
     for ($i = 0; $i < 12; $i++) {
         if (0 == $i) {
             $this->cal[$i] = new Calendar_Data();
             $this->cal[$i]->setToday($todayyy, $todaymm, $todaydd);
             $this->cal[$i]->setCalendarData();
         }
         list($month_yy[$i], $month_mm[$i], $month_dd[$i]) = wc2_get_aftermonth($todayyy, $todaymm, 1, $i);
         $this->cal[$i] = new Calendar_Data();
         $this->cal[$i]->setToday($month_yy[$i], $month_mm[$i], $month_dd[$i]);
         $this->cal[$i]->setCalendarData();
     }
     $yearstr = substr(get_date_from_gmt(gmdate('Y-m-d H:i:s', time())), 0, 4);
     $campaign_schedule_start_year = isset($general['campaign_schedule']['start']['year']) ? $general['campaign_schedule']['start']['year'] : 0;
     $campaign_schedule_start_month = isset($general['campaign_schedule']['start']['month']) ? $general['campaign_schedule']['start']['month'] : 0;
     $campaign_schedule_start_day = isset($general['campaign_schedule']['start']['day']) ? $general['campaign_schedule']['start']['day'] : 0;
     $campaign_schedule_start_hour = isset($general['campaign_schedule']['start']['hour']) ? $general['campaign_schedule']['start']['hour'] : 0;
     $campaign_schedule_start_min = isset($general['campaign_schedule']['start']['min']) ? $general['campaign_schedule']['start']['min'] : 0;
     $campaign_schedule_end_year = isset($general['campaign_schedule']['end']['year']) ? $general['campaign_schedule']['end']['year'] : 0;
     $campaign_schedule_end_month = isset($general['campaign_schedule']['end']['month']) ? $general['campaign_schedule']['end']['month'] : 0;
     $campaign_schedule_end_day = isset($general['campaign_schedule']['end']['day']) ? $general['campaign_schedule']['end']['day'] : 0;
     $campaign_schedule_end_hour = isset($general['campaign_schedule']['end']['hour']) ? $general['campaign_schedule']['end']['hour'] : 0;
     $campaign_schedule_end_min = isset($general['campaign_schedule']['end']['min']) ? $general['campaign_schedule']['end']['min'] : 0;
     $common_opts = isset($general['_iopt_']) ? $general['_iopt_'] : '';
     $display_mode_label = wc2_get_option('display_mode_label');
     $indi_item_name = $general['indi_item_name'];
     $pos_item_name = $general['pos_item_name'];
     foreach ((array) $indi_item_name as $key => $value) {
         $checked_item_name[$key] = $indi_item_name[$key] == 1 ? ' checked="checked"' : '';
     }
     if (!empty($cart_description)) {
         $cart_page_data = stripslashes_deep($cart_description);
     } else {
         $cart_page_data['cart_header'] = array();
         $cart_page_data['cart_footer'] = array();
     }
     if (!empty($member_description)) {
         $member_page_data = stripslashes_deep($member_description);
     } else {
         $member_page_data['member_header'] = array();
         $member_page_data['member_footer'] = array();
     }
     require_once WC2_PLUGIN_DIR . '/admin/views/setting-general.php';
 }
Пример #4
0
 public function edit_member_data($mem_id, $type = 'member')
 {
     global $wpdb;
     if (empty($mem_id) || !array_key_exists($type, $_POST)) {
         return false;
     }
     $wc2_db_member = WC2_DB_Member::get_instance();
     //$wc2_db_member->get_member_data($mem_id);
     $_POST = WC2_Utils::stripslashes_deep_post($_POST);
     $passwd = is_admin() || !is_admin() && wc2_is_blank($_POST[$type]['passwd']) && wc2_is_blank($_POST[$type]['passwd2']) ? $wc2_db_member->get_value('passwd') : md5(trim($_POST[$type]['passwd']));
     $point = is_admin() && isset($_POST['member']['point']) ? trim($_POST['member']['point']) : $wc2_db_member->get_value('rank');
     $rank = is_admin() ? trim($_POST['member']['rank']) : $wc2_db_member->get_value('rank');
     $wc2_db_member->clear_column();
     $wc2_db_member->set_member_id($mem_id);
     $wc2_db_member->set_value('account', trim($_POST[$type]['account']));
     $wc2_db_member->set_value('email', trim($_POST[$type]['email']));
     $wc2_db_member->set_value('passwd', $passwd);
     $wc2_db_member->set_value('rank', $rank);
     $wc2_db_member->set_value('point', $point);
     $wc2_db_member->set_value('name1', trim($_POST[$type]['name1']));
     $wc2_db_member->set_value('name2', trim($_POST[$type]['name2']));
     $wc2_db_member->set_value('name3', trim($_POST[$type]['name3']));
     $wc2_db_member->set_value('name4', trim($_POST[$type]['name4']));
     $wc2_db_member->set_value('country', trim($_POST[$type]['country']));
     $wc2_db_member->set_value('zipcode', trim($_POST[$type]['zipcode']));
     $wc2_db_member->set_value('pref', trim($_POST[$type]['pref']));
     $wc2_db_member->set_value('address1', trim($_POST[$type]['address1']));
     $wc2_db_member->set_value('address2', trim($_POST[$type]['address2']));
     $wc2_db_member->set_value('tel', trim($_POST[$type]['tel']));
     $wc2_db_member->set_value('fax', trim($_POST[$type]['fax']));
     if ($type == 'member') {
         //csmb
         $csmb_keys = wc2_get_custom_field_keys(WC2_CSMB);
         if (!empty($csmb_keys) && is_array($csmb_keys)) {
             $csmb = array();
             foreach ($csmb_keys as $key) {
                 list($pfx, $csmb_key) = explode('_', $key, 2);
                 //$csmb_val = ( isset( $_POST[WC2_CUSTOM_MEMBER][$csmb_key] ) ) ? $_POST[WC2_CUSTOM_MEMBER][$csmb_key]: '';
                 $csmb[$csmb_key] = isset($_POST[WC2_CUSTOM_MEMBER][$csmb_key]) ? $_POST[WC2_CUSTOM_MEMBER][$csmb_key] : '';
             }
             $wc2_db_member->set_value(WC2_CUSTOM_MEMBER, $csmb);
         }
         //meta
         //meta_typeあり
         //$wc2_db_member->set_meta_value($key, $value, $type);
         //meta_typeなし
         //$wc2_db_member->set_meta_value($key, $value);
     } elseif ($type == 'customer') {
         //cscs
         $cscs_keys = wc2_get_custom_field_keys(WC2_CSCS);
         if (!empty($cscs_keys) && is_array($cscs_keys)) {
             $cscs = array();
             foreach ($cscs_keys as $key) {
                 list($pfx, $cscs_key) = explode('_', $key, 2);
                 //$cscs_val = ( isset( $_POST[WC2_CUSTOM_CUSTOMER][$cscs_key] ) ) ? $_POST[WC2_CUSTOM_CUSTOMER][$cscs_key]: '';
                 $cscs[$cscs_key] = isset($_POST[WC2_CUSTOM_CUSTOMER][$cscs_key]) ? $_POST[WC2_CUSTOM_CUSTOMER][$cscs_key] : '';
             }
             $wc2_db_member->set_value(WC2_CUSTOM_CUSTOMER, $cscs);
         }
         //meta
         //meta_typeあり
         //$wc2_db_member->set_meta_value($key, $value, $type);
         //meta_typeなし
         //$wc2_db_member->set_meta_value($key, $value);
     }
     do_action('wc2_action_edit_member_data', $mem_id, $type);
     $res = $wc2_db_member->update_member_data($mem_id);
     return $res;
 }
Пример #5
0
	public function set_session_member_from_post_data(){
		//固定
		$member_id = $this->get_memberinfo('ID');
		$rank = wc2_get_member_data_value($member_id, MEMBER_RANK);
		$point = wc2_get_member_data_value($member_id, MEMBER_POINT);
		$registered = wc2_get_member_data_value($member_id, MEMBER_REGISTERED);

		if( isset( $_SESSION[WC2]['member'] ) ){
			unset($_SESSION[WC2]['member']);
		}

		$_SESSION[WC2]['member']['ID'] = $member_id;
		$_POST = WC2_Utils::stripslashes_deep_post($_POST);
		$base_member_key = array(
									'account',
									'email',
									'email2' ,
									'rank' ,
									'point' ,
									'name1' ,
									'name2' ,
									'name3' ,
									'name4' ,
									'country' ,
									'zipcode' ,
									'pref' ,
									'address1' ,
									'address2' ,
									'tel' ,
									'fax' ,
									'registered' ,
								);

		foreach( $base_member_key as $mem_key ){
			switch($mem_key){
			case 'rank':
				$_SESSION[WC2]['member'][$mem_key] = $rank;
				break;
			case 'point':
				$_SESSION[WC2]['member'][$mem_key] = $point;
				break;
			case 'registered':
				$_SESSION[WC2]['member'][$mem_key] = $registered;
				break;
			default:
				$_SESSION[WC2]['member'][$mem_key] = ( isset( $_POST['member'][$mem_key] ) ) ? $_POST['member'][$mem_key]: '';
				break;
			}
		}

		//csmb
		$csmb_keys = wc2_get_custom_field_keys(WC2_CSMB);
		if( !empty($csmb_keys) && is_array($csmb_keys) ){
			foreach($csmb_keys as $key){
				list( $pfx, $csmb_key ) = explode('_', $key, 2);
				$csmb_val = ( isset( $_POST[WC2_CUSTOM_MEMBER][$csmb_key] ) ) ? $_POST[WC2_CUSTOM_MEMBER][$csmb_key]: '';
				$_SESSION[WC2]['member'][WC2_CUSTOM_MEMBER][$csmb_key] = $csmb_val;
			}
		}
		//meta

		do_action('wc2_action_set_session_member_from_post_data');

	}
Пример #6
0
 function setup_cod_ajax()
 {
     if (!check_ajax_referer('wc2_setting_payment', 'wc2_nonce', false)) {
         die;
     }
     $payment_info = wc2_get_option('payment_info');
     $message = '';
     $_POST = WC2_Utils::stripslashes_deep_post($_POST);
     $payment_info['cod_type'] = isset($_POST['cod_type']) ? $_POST['cod_type'] : 'fix';
     if (isset($_POST['cod_fee'])) {
         $payment_info['cod_fee'] = (int) $_POST['cod_fee'];
     }
     if ('fix' == $payment_info['cod_type']) {
         if (isset($_POST['cod_fee'])) {
             $payment_info['cod_fee'] = (int) $_POST['cod_fee'];
             if (!is_numeric($_POST['cod_fee'])) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
         if (isset($_POST['cod_limit_amount'])) {
             $payment_info['cod_limit_amount'] = (int) $_POST['cod_limit_amount'];
             if (!WC2_Utils::is_blank($_POST['cod_limit_amount']) && 0 === (int) $_POST['cod_limit_amount']) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
     } elseif ('change' == $payment_info['cod_type']) {
         if (isset($_POST['cod_first_amount'])) {
             $payment_info['cod_first_amount'] = (int) $_POST['cod_first_amount'];
             if (0 === (int) $_POST['cod_first_amount']) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
         if (isset($_POST['cod_limit_amount'])) {
             $payment_info['cod_limit_amount'] = (int) $_POST['cod_limit_amount'];
             if (!WC2_Utils::is_blank($_POST['cod_limit_amount']) && 0 === (int) $_POST['cod_limit_amount']) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
         if (isset($_POST['cod_first_fee'])) {
             $payment_info['cod_first_fee'] = (int) $_POST['cod_first_fee'];
             if (0 === (int) $_POST['cod_first_fee'] && '0' !== $_POST['cod_first_fee']) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
         if (isset($_POST['cod_end_fee'])) {
             $payment_info['cod_end_fee'] = (int) $_POST['cod_end_fee'];
             if (0 === (int) $_POST['cod_end_fee'] && '0' !== $_POST['cod_end_fee']) {
                 $message = __('値が不正な項目があります', 'wc2');
             }
         }
         unset($payment_info['cod_amounts'], $payment_info['cod_fees']);
         if (isset($_POST['cod_amounts'])) {
             for ($i = 0; $i < count((array) $_POST['cod_amounts']); $i++) {
                 $payment_info['cod_amounts'][$i] = (int) $_POST['cod_amounts'][$i];
                 $payment_info['cod_fees'][$i] = (int) $_POST['cod_fees'][$i];
                 if (0 === (int) $_POST['cod_amounts'][$i] || 0 === (int) $_POST['cod_fees'][$i] && '0' !== $_POST['cod_fees'][$i]) {
                     $message = __('値が不正な項目があります', 'wc2');
                 }
             }
         }
     }
     if ('' == $message) {
         $r = 'success';
         wc2_update_option('payment_info', $payment_info);
     } else {
         $r = 'error' . WC2_SPLIT . $message;
     }
     $r = apply_filters('wc2_filter_admin_payment_setup_cod_ajax', $r);
     die($r);
 }
Пример #7
0
 public function system_setting_page()
 {
     if (!isset($this->plugin_screen_hook_suffix)) {
         return;
     }
     $screen = get_current_screen();
     if ($this->plugin_screen_hook_suffix != $screen->id) {
         return;
     }
     $system_options = wc2_get_option('system');
     $states = wc2_get_option('states_options');
     $locale = wc2_get_option('locale_options');
     if (array_key_exists('wc2_option_update', $_POST)) {
         $this->action_status = 'success';
         $_POST = WC2_Utils::stripslashes_deep_post($_POST);
         $system_options['divide_item'] = isset($_POST['divide_item']) ? 1 : 0;
         $system_options['itemimg_anchor_rel'] = isset($_POST['itemimg_anchor_rel']) ? trim($_POST['itemimg_anchor_rel']) : '';
         $system_options['composite_category_orderby'] = isset($_POST['composite_category_orderby']) ? $_POST['composite_category_orderby'] : '';
         $system_options['composite_category_order'] = isset($_POST['composite_category_order']) ? $_POST['composite_category_order'] : '';
         $system_options['settlement_path'] = isset($_POST['settlement_path']) ? $_POST['settlement_path'] : '';
         if (WC2_Utils::is_blank($system_options['settlement_path'])) {
             $system_options['settlement_path'] = WC2_PLUGIN_DIR . '/settlement/';
         }
         $sl = substr($system_options['settlement_path'], -1);
         if ($sl != '/' && $sl != '\\') {
             $system_options['settlement_path'] .= '/';
         }
         $system_options['logs_path'] = isset($_POST['logs_path']) ? $_POST['logs_path'] : '';
         if (!WC2_Utils::is_blank($system_options['logs_path'])) {
             $sl = substr($system_options['logs_path'], -1);
             if ($sl == '/' || $sl == '\\') {
                 $system_options['logs_path'] = substr($system_options['logs_path'], 0, -1);
             }
         }
         $system_options['use_ssl'] = isset($_POST['use_ssl']) ? 1 : 0;
         $system_options['ssl_url'] = isset($_POST['ssl_url']) ? rtrim($_POST['ssl_url'], '/') : '';
         $system_options['ssl_url_admin'] = isset($_POST['ssl_url_admin']) ? rtrim($_POST['ssl_url_admin'], '/') : '';
         if (WC2_Utils::is_blank($system_options['ssl_url']) || WC2_Utils::is_blank($system_options['ssl_url_admin'])) {
             $system_options['use_ssl'] = 0;
         }
         $system_options['inquiry_id'] = isset($_POST['inquiry_id']) ? esc_html(rtrim($_POST['inquiry_id'])) : '';
         $system_options['use_javascript'] = isset($_POST['use_javascript']) ? (int) $_POST['use_javascript'] : 1;
         $system_options['front_lang'] = isset($_POST['front_lang']) && 'others' != $_POST['front_lang'] ? $_POST['front_lang'] : wc2_get_local_language();
         $system_options['currency'] = isset($_POST['currency']) && 'others' != $_POST['currency'] ? $_POST['currency'] : wc2_get_base_country();
         $system_options['addressform'] = isset($_POST['addressform']) ? $_POST['addressform'] : wc2_get_local_addressform();
         $system_options['target_market'] = isset($_POST['target_market']) ? $_POST['target_market'] : wc2_get_local_target_market();
         $system_options['no_cart_css'] = isset($_POST['no_cart_css']) ? 1 : 0;
         $system_options['dec_orderID_flag'] = isset($_POST['dec_orderID_flag']) ? (int) $_POST['dec_orderID_flag'] : 0;
         $system_options['dec_orderID_prefix'] = isset($_POST['dec_orderID_prefix']) ? esc_html(rtrim($_POST['dec_orderID_prefix'])) : '';
         $system_options['pdf_delivery'] = isset($_POST['pdf_delivery']) ? (int) $_POST['pdf_delivery'] : 0;
         $system_options['csv_encode_type'] = isset($_POST['csv_encode_type']) ? (int) $_POST['csv_encode_type'] : 0;
         if (isset($_POST['dec_orderID_digit'])) {
             $dec_orderID_digit = (int) rtrim($_POST['dec_orderID_digit']);
             if (6 > $dec_orderID_digit) {
                 $system_options['dec_orderID_digit'] = 6;
             } else {
                 $system_options['dec_orderID_digit'] = $dec_orderID_digit;
             }
         } else {
             $system_options['dec_orderID_digit'] = 6;
         }
         $system_options['subimage_rule'] = isset($_POST['subimage_rule']) ? (int) $_POST['subimage_rule'] : 0;
         unset($system_options['province']);
         foreach ((array) $system_options['target_market'] as $target_market) {
             $province = array();
             if (!empty($_POST['province_' . $target_market])) {
                 $temp_pref = explode("\n", $_POST['province_' . $target_market]);
                 foreach ($temp_pref as $pref) {
                     if (!WC2_Utils::is_blank($pref)) {
                         $province[] = trim($pref);
                     }
                 }
                 if (1 == count($province)) {
                     $this->action_status = 'error';
                 }
             } else {
                 if (isset($states[$target_market]) && is_array($states[$target_market])) {
                     $province = $states[$target_market];
                 } else {
                     $this->action_status = 'error';
                 }
             }
             $system_options['province'][$target_market] = $province;
         }
         if ($this->action_status != 'success') {
             $this->action_message = __('データに不備があります', 'wc2');
         } else {
             wc2_update_option('system', $system_options);
             $this->action_message = __('Updated!');
         }
     } else {
         if (!isset($system_options['province']) || empty($system_options['province'])) {
             $system_options['province'][$system_options['base_country']] = $states[$system_options['base_country']];
         }
         $this->action_status = 'none';
         $this->action_message = '';
     }
     $status = $this->action_status;
     $message = $this->action_message;
     $divide_item = $system_options['divide_item'];
     $itemimg_anchor_rel = $system_options['itemimg_anchor_rel'];
     $composite_category_orderby = $system_options['composite_category_orderby'];
     $composite_category_order = $system_options['composite_category_order'];
     $logs_path = isset($system_options['logs_path']) ? $system_options['logs_path'] : '';
     $use_ssl = $system_options['use_ssl'];
     $ssl_url = $system_options['ssl_url'];
     $ssl_url_admin = $system_options['ssl_url_admin'];
     $inquiry_id = $system_options['inquiry_id'];
     $orderby_itemsku = isset($system_options['orderby_itemsku']) ? $system_options['orderby_itemsku'] : 0;
     $orderby_itemopt = isset($system_options['orderby_itemopt']) ? $system_options['orderby_itemopt'] : 0;
     $system_front_lang = isset($system_options['front_lang']) && !empty($system_options['front_lang']) ? $system_options['front_lang'] : wc2_get_local_language();
     $system_currency = isset($system_options['currency']) && !empty($system_options['currency']) ? $system_options['currency'] : wc2_get_base_country();
     $system_addressform = isset($system_options['addressform']) && !empty($system_options['addressform']) ? $system_options['addressform'] : wc2_get_local_addressform();
     $system_target_markets = isset($system_options['target_market']) && !empty($system_options['target_market']) ? $system_options['target_market'] : wc2_get_local_target_market();
     $no_cart_css = isset($system_options['no_cart_css']) ? $system_options['no_cart_css'] : 0;
     $dec_orderID_flag = isset($system_options['dec_orderID_flag']) ? $system_options['dec_orderID_flag'] : 0;
     $dec_orderID_prefix = isset($system_options['dec_orderID_prefix']) ? $system_options['dec_orderID_prefix'] : '';
     $dec_orderID_digit = isset($system_options['dec_orderID_digit']) ? $system_options['dec_orderID_digit'] : '';
     $subimage_rule = isset($system_options['subimage_rule']) ? $system_options['subimage_rule'] : 0;
     $pdf_delivery = isset($system_options['pdf_delivery']) ? $system_options['pdf_delivery'] : 0;
     $csv_encode_type = isset($system_options['csv_encode_type']) ? $system_options['csv_encode_type'] : 0;
     require_once WC2_PLUGIN_DIR . '/admin/views/setting-system.php';
 }
Пример #8
0
 function order_edit_ajax()
 {
     //wc2_log(print_r($_POST,true),"test.log");
     if ($_POST['action'] != 'order_edit_ajax') {
         die(0);
     }
     $res = false;
     $_POST = WC2_Utils::stripslashes_deep_post($_POST);
     switch ($_POST['mode']) {
         case 'add2cart':
             $slug = apply_filters('wc2_filter_cart_slug', 'cart');
             $general_options = wc2_get_option('general');
             $add_cart = array();
             $item_id = isset($_POST['item_id']) ? $_POST['item_id'] : 0;
             $sku_id = isset($_POST['sku_id']) ? $_POST['sku_id'] : 0;
             $quantity = isset($_POST['quantity']) ? $_POST['quantity'] : 1;
             $cart_row = isset($_POST['cart_row']) ? $_POST['cart_row'] : 1;
             $item_sku_data = wc2_get_item_sku_data($item_id, $sku_id);
             $price = $item_sku_data['sku_price'];
             $price = apply_filters('wc2_filter_admin_order_add2cart_price', $price, $quantity, $item_id, $sku_id, $slug);
             if (empty($general_options['tax_rate'])) {
                 $tax = 0;
             } else {
                 $materials = array('total_price' => $price * $quantity, 'discount' => 0, 'shipping_charge' => 0, 'cod_fee' => 0);
                 $tax = wc2_internal_tax($materials);
             }
             $add_cart['group_id'] = 0;
             $add_cart['row_index'] = $cart_row;
             $add_cart['post_id'] = $item_sku_data['item_post_id'];
             $add_cart['item_id'] = $item_id;
             $add_cart['item_code'] = $item_sku_data['item_code'];
             $add_cart['item_name'] = $item_sku_data['item_name'];
             $add_cart['sku_id'] = $sku_id;
             $add_cart['sku_code'] = $item_sku_data['sku_code'];
             $add_cart['sku_name'] = $item_sku_data['sku_name'];
             $add_cart['price'] = $price;
             $add_cart['cprice'] = $item_sku_data['sku_costprice'];
             $add_cart['quantity'] = $quantity;
             $add_cart['unit'] = $item_sku_data['sku_unit'];
             $add_cart['tax'] = $tax;
             $add_cart['destination_id'] = 0;
             $add_cart['meta_type'] = apply_filters('wc2_filter_admin_order_add2cart_meta_type', array(), $quantity, $item_id, $sku_id, $slug);
             $add_cart['meta_key'] = apply_filters('wc2_filter_admin_order_add2cart_meta_key', array(), $quantity, $item_id, $sku_id, $slug);
             $add_cart = apply_filters('wc2_filter_admin_order_add2cart', $add_cart, $slug);
             $res = wc2_add_order_cart_data($_POST['order_id'], $add_cart);
             if (!$res) {
                 die($res);
             }
             $cart = wc2_get_order_cart_data($_POST['order_id']);
             //*** LI CUSTOMIZE >>>
             //$res = wc2_get_admin_order_cart_row( $_POST['order_id'], $cart );
             $cart_row = wc2_get_admin_order_cart_row($_POST['order_id'], $cart);
             $order_history_form = li_get_order_history_form($_POST['order_id']);
             $res = 'OK' . WC2_SPLIT . $cart_row . WC2_SPLIT . $order_history_form;
             $shipping_charge = li_get_delivery_shipping_charge($_POST['delivery_method'], $_POST['delivery_pref'], $cart);
             $order_modified = wc2_get_today_datetime_format();
             $update_query = " shipping_charge = " . $shipping_charge . ", order_modified = '" . $order_modified . "'";
             wc2_update_order_data_value($_POST['order_id'], $update_query);
             //*** LI CUSTOMIZE <<<
             break;
         case 'cart_remove':
             $res = wc2_remove_order_cart_data($_POST['order_id'], $_POST['cart_id']);
             if (!$res) {
                 die($res);
             }
             $cart = wc2_get_order_cart_data($_POST['order_id']);
             //*** LI CUSTOMIZE >>>
             //$res = wc2_get_admin_order_cart_row( $_POST['order_id'], $cart );
             $cart_row = wc2_get_admin_order_cart_row($_POST['order_id'], $cart);
             $order_history_form = li_get_order_history_form($_POST['order_id']);
             $res = 'OK' . WC2_SPLIT . $cart_row . WC2_SPLIT . $order_history_form;
             $shipping_charge = li_get_delivery_shipping_charge($_POST['delivery_method'], $_POST['delivery_pref'], $cart);
             $order_modified = wc2_get_today_datetime_format();
             $update_query = " shipping_charge = " . $shipping_charge . ", order_modified = '" . $order_modified . "'";
             wc2_update_order_data_value($_POST['order_id'], $update_query);
             //*** LI CUSTOMIZE <<<
             break;
         case 'mail_completion':
         case 'mail_order':
         case 'mail_change':
         case 'mail_receipt':
         case 'mail_estimate':
         case 'mail_cancel':
         case 'mail_other':
             $res = wc2_ordermail_admin($_POST['order_id']);
             break;
         case 'sendmail':
             $res = wc2_send_ordermail_admin();
             break;
         case 'get_add_item':
             $res = wc2_get_add_item($_POST['item_code']);
             break;
         case 'get_select_item':
             $res = wc2_get_select_item($_POST['cat_id']);
             break;
         case 'checkpost':
             $res = wc2_update_order_check($_POST['order_id'], $_POST['checked']);
             break;
         case 'get_member':
             $res = wc2_get_member_neworder($_POST['email']);
             break;
         case 'recalculation':
             $res = wc2_order_recalculation($_POST['order_id'], $_POST['member_id'], $_POST['item_ids'], $_POST['skus'], $_POST['prices'], $_POST['quantities'], $_POST['usedpoint'], $_POST['shipping_charge'], $_POST['cod_fee']);
             break;
     }
     $res = apply_filters('wc2_filter_admin_order_edit_ajax', $res);
     //wc2_log($res,"test.log");
     die($res);
 }