public function __construct($listing_id = 0, $preview = false)
 {
     $this->state = isset($_REQUEST['_state']) && $_REQUEST['_state'] ? WPBDP_Listing_Submit_State::get($_REQUEST['_state']) : new WPBDP_Listing_Submit_State($listing_id);
     if (!$preview) {
         $this->state->save();
     }
 }
 public function ajax_listing_submit_image_delete()
 {
     $res = new WPBDP_Ajax_Response();
     $image_id = intval($_REQUEST['image_id']);
     if (!$image_id) {
         $res->send_error();
     }
     $state_id = isset($_REQUEST['state_id']) ? $_REQUEST['state_id'] : '';
     if ($state_id) {
         require_once WPBDP_PATH . 'core/view-submit-listing.php';
         if (!$state_id) {
             $res->send_error();
         }
         $state = WPBDP_Listing_Submit_State::get($state_id);
         if (!$state || !in_array($image_id, $state->images)) {
             $res->send_error();
         }
         wpbdp_array_remove_value($state->images, $image_id);
         $state->save();
     }
     wp_delete_attachment($image_id, true);
     $res->add('imageId', $image_id);
     $res->send();
 }