- Timestamp:
- Dec 23, 2010, 9:51:33 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/ws_functions.inc.php
r8249 r8266 1990 1990 } 1991 1991 1992 function ws_images_delete($params, &$service) 1993 { 1994 global $conf; 1995 if (!is_admin() || is_adviser() ) 1996 { 1997 return new PwgError(401, 'Access denied'); 1998 } 1999 2000 if (!$service->isPost()) 2001 { 2002 return new PwgError(405, "This method requires HTTP POST"); 2003 } 2004 2005 if (empty($params['pwg_token']) or get_pwg_token() != $params['pwg_token']) 2006 { 2007 return new PwgError(403, 'Invalid security token'); 2008 } 2009 2010 $params['image_id'] = preg_split( 2011 '/[\s,;\|]/', 2012 $params['image_id'], 2013 -1, 2014 PREG_SPLIT_NO_EMPTY 2015 ); 2016 $params['image_id'] = array_map('intval', $params['image_id']); 2017 2018 $image_ids = array(); 2019 foreach ($params['image_id'] as $image_id) 2020 { 2021 if ($image_id > 0) 2022 { 2023 array_push($image_ids, $image_id); 2024 } 2025 } 2026 2027 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); 2028 delete_elements($image_ids, true); 2029 } 2030 1992 2031 function ws_add_image_category_relations($image_id, $categories_string, $replace_mode=false) 1993 2032 { … … 2202 2241 } 2203 2242 2243 function ws_categories_delete($params, &$service) 2244 { 2245 global $conf; 2246 if (!is_admin() || is_adviser() ) 2247 { 2248 return new PwgError(401, 'Access denied'); 2249 } 2250 2251 if (!$service->isPost()) 2252 { 2253 return new PwgError(405, "This method requires HTTP POST"); 2254 } 2255 2256 if (empty($params['pwg_token']) or get_pwg_token() != $params['pwg_token']) 2257 { 2258 return new PwgError(403, 'Invalid security token'); 2259 } 2260 2261 $modes = array('no_delete', 'delete_orphans', 'force_delete'); 2262 if (!in_array($params['photo_deletion_mode'], $modes)) 2263 { 2264 return new PwgError( 2265 500, 2266 '[ws_categories_delete]' 2267 .' invalid parameter photo_deletion_mode "'.$params['photo_deletion_mode'].'"' 2268 .', possible values are {'.implode(', ', $modes).'}.' 2269 ); 2270 } 2271 2272 $params['category_id'] = preg_split( 2273 '/[\s,;\|]/', 2274 $params['category_id'], 2275 -1, 2276 PREG_SPLIT_NO_EMPTY 2277 ); 2278 $params['category_id'] = array_map('intval', $params['category_id']); 2279 2280 $category_ids = array(); 2281 foreach ($params['category_id'] as $category_id) 2282 { 2283 if ($category_id > 0) 2284 { 2285 array_push($category_ids, $category_id); 2286 } 2287 } 2288 2289 if (count($category_ids) == 0) 2290 { 2291 return; 2292 } 2293 2294 $query = ' 2295 SELECT id 2296 FROM '.CATEGORIES_TABLE.' 2297 WHERE id IN ('.implode(',', $category_ids).') 2298 ;'; 2299 $category_ids = array_from_query($query, 'id'); 2300 2301 if (count($category_ids) == 0) 2302 { 2303 return; 2304 } 2305 2306 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); 2307 delete_categories($category_ids, $params['photo_deletion_mode']); 2308 update_global_rank(); 2309 } 2310 2204 2311 function ws_logfile($string) 2205 2312 { -
trunk/ws.php
r8249 r8266 237 237 'POST method only.<br>Use the <b>image</b> field for uploading file.<br>Set the form encoding to "form-data"<br><b>category</b> is the numeric identifier of the destination category.' 238 238 ); 239 239 240 $service->addMethod( 241 'pwg.images.delete', 242 'ws_images_delete', 243 array( 244 'image_id'=>array('default'=>0), 245 'pwg_token' => array('default' => null), 246 ), 247 'Delete photos. You can give several image_ids, comma separated' 248 ); 249 240 250 $service->addMethod( 241 251 'pwg.categories.getAdminList', … … 253 263 ), 254 264 'administration method only' 265 ); 266 267 $service->addMethod( 268 'pwg.categories.delete', 269 'ws_categories_delete', 270 array( 271 'category_id'=>array('default'=>0), 272 'pwg_token' => array('default' => null), 273 'photo_deletion_mode' => array('default' => 'delete_orphans'), 274 ), 275 'Delete categories. You can give several category_ids, comma separated. 276 <br><b>photo_deletion_mode</b> can be "no_delete" (may create orphan photos), "delete_orphans" (default mode, only deletes photos linked to no other album) or "force_delete" (delete all photos, even those linked to other albums)' 255 277 ); 256 278
Note: See TracChangeset
for help on using the changeset viewer.