Ejemplo n.º 1
0
 function handle_edit_map()
 {
     $defaults = array('title' => '', 'game_id' => 0, 'id' => 0, 'delete_image' => false);
     $data = Utils::extract_args(stripslashes_deep($_POST), $defaults);
     extract($data);
     $update_data = compact('title');
     if (empty($title)) {
         Flash::error(__('Map title is a required field.', WP_CLANWARS_TEXTDOMAIN));
         return;
     }
     if (!empty($delete_image)) {
         $update_data['screenshot'] = 0;
     }
     $upload_id = $this->handle_upload('screenshot_file');
     if (is_wp_error($upload_id) && $upload_id->get_error_code() !== self::ErrorUploadNoFile) {
         Flash::error($upload_id->get_error_message());
         return;
     } else {
         if (is_int($upload_id)) {
             $update_data['screenshot'] = $upload_id;
         }
     }
     if (\WP_Clanwars\Maps::update_map($id, $update_data) !== false) {
         Flash::success(__('Updated a map.', WP_CLANWARS_TEXTDOMAIN));
         wp_redirect(admin_url(sprintf('admin.php?page=wp-clanwars-games&act=editmap&id=%d', $id)));
         exit;
     } else {
         Flash::error(__('Failed to update a map.', WP_CLANWARS_TEXTDOMAIN));
     }
 }