示例#1
0
 /**
  * Saves an affiliate coupon
  *
  * @access  public
  * @since   1.7.5
  */
 public function save_affiliate_coupon($save_id = 0)
 {
     global $wpdb;
     if (empty($_REQUEST['affwp_pmp_coupon_nonce'])) {
         return;
     }
     if (!wp_verify_nonce($_REQUEST['affwp_pmp_coupon_nonce'], 'affwp_pmp_coupon_nonce')) {
         return;
     }
     $user_name = sanitize_text_field($_POST['user_name']);
     if (empty($_POST['user_id'])) {
         $user = get_user_by('login', $_POST['user_name']);
         if ($user) {
             $user_id = $user->ID;
         }
     } else {
         $user_id = absint($_POST['user_id']);
     }
     $coupon = $wpdb->get_row("SELECT * FROM {$wpdb->pmpro_discount_codes} WHERE code = '" . esc_sql($_REQUEST['code']) . "' LIMIT 1");
     $affiliate_id = affwp_get_affiliate_id($user_id);
     if (empty($_POST['user_name'])) {
         affwp_delete_affiliate_meta($affiliate_id, 'affwp_discount_pmp_' . $coupon->id);
         return;
     }
     affwp_update_affiliate_meta($affiliate_id, 'affwp_discount_pmp_' . $coupon->id, $coupon->code);
 }
 function test_delete_metadata()
 {
     affwp_update_affiliate_meta($this->_affiliate_id, 'test_key', '1');
     $this->assertTrue(affwp_delete_affiliate_meta($this->_affiliate_id, 'test_key'));
     $this->assertFalse(affwp_delete_affiliate_meta($this->_affiliate_id, 'key_that_does_not_exist'));
 }