/** * Delete a gallery AND all the pictures associated to this gallery! * * @id The gallery ID */ static function delete_gallery($id) { global $wpdb, $nggdb; $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->nggpictures} WHERE galleryid = %d", $id)); $wpdb->query($wpdb->prepare("DELETE FROM {$wpdb->nggallery} WHERE gid = %d", $id)); wp_cache_delete($id, 'ngg_gallery'); //TODO:Remove all tag relationship //Update the galleries to remove the deleted ID's $albums = $nggdb->find_all_album(); foreach ($albums as $album) { $albumid = $album->id; $galleries = $album->galleries; $deleted = array_search($id, $galleries); unset($galleries[$deleted]); $new_galleries = serialize($galleries); nggdb::update_album($albumid, false, false, false, $new_galleries); } return true; }
/** * Method "ngg.editAlbum" * Edit a existing Album * * @since 1.7.0 * * @param array $args Method parameters. * - int blog_id * - string username * - string password * - int album ID * - string album name * - int id of preview image * - string description * - string serialized array of galleries * @return true if success */ function editAlbum($args) { global $ngg; require_once dirname(dirname(__FILE__)) . '/admin/functions.php'; // admin functions $this->escape($args); $blog_ID = (int) $args[0]; $username = $args[1]; $password = $args[2]; $id = (int) $args[3]; $name = $args[4]; $preview = (int) $args[5]; $description = $args[6]; $galleries = $args[7]; if (!($user = $this->login($username, $password))) { return $this->error; } if (!($album = nggdb::find_album($id))) { return new IXR_Error(404, __("Invalid album ID")); } if (!current_user_can('NextGEN Edit album')) { return new IXR_Error(401, __('Sorry, you must be able to manage albums')); } if (!empty($name)) { $result = nggdb::update_album($id, $name, $preview, $description, $description, $galleries); } if (!$result) { return new IXR_Error(500, __('Sorry, could not update the album')); } return true; }