Пример #1
0
 private function save_form($purchase_log, $fields)
 {
     global $wpdb;
     $log_id = $purchase_log->get('id');
     // delete previous field values
     $sql = $wpdb->prepare("DELETE FROM " . WPSC_TABLE_SUBMITTED_FORM_DATA . " WHERE log_id = %d", $log_id);
     $wpdb->query($sql);
     $customer_details = array();
     foreach ($fields as $field) {
         if ($field->type == 'heading') {
             continue;
         }
         $value = '';
         if (isset($_POST['wpsc_checkout_details'][$field->id])) {
             $value = $_POST['wpsc_checkout_details'][$field->id];
         }
         $customer_details[$field->id] = $value;
         $wpdb->insert(WPSC_TABLE_SUBMITTED_FORM_DATA, array('log_id' => $log_id, 'form_id' => $field->id, 'value' => $value), array('%d', '%d', '%s'));
     }
     wpsc_save_customer_details($customer_details);
 }
Пример #2
0
 private function save_customer_settings()
 {
     $form = WPSC_Checkout_Form::get();
     $fields = $form->get_fields();
     $customer_details = wpsc_get_customer_meta('checkout_details');
     if (!is_array($customer_details)) {
         $customer_details = array();
     }
     foreach ($fields as $field) {
         if (!array_key_exists($field->id, $_POST['wpsc_checkout_details'])) {
             continue;
         }
         $value = $_POST['wpsc_checkout_details'][$field->id];
         $customer_details[$field->id] = $value;
         switch ($field->unique_name) {
             case 'billingstate':
                 wpsc_update_customer_meta('billing_region', $value);
                 break;
             case 'shippingstate':
                 wpsc_update_customer_meta('shipping_region', $value);
                 break;
             case 'billingcountry':
                 wpsc_update_customer_meta('billing_country', $value);
                 break;
             case 'shippingcountry':
                 wpsc_update_customer_meta('shipping_country', $value);
                 break;
             case 'shippingpostcode':
                 wpsc_update_customer_meta('shipping_zip', $value);
                 break;
         }
     }
     _wpsc_update_location();
     wpsc_save_customer_details($customer_details);
 }