Example #1
0
/**
* Recursivly deletes all albums and child albums
*
* @param    int     album_id    album id to delete
* @return   int     true for success or false for failure
*
*/
function MG_deleteChildAlbums($album_id)
{
    global $MG_albums, $_CONF, $_MG_CONF, $_TABLES, $_USER;
    $sql = "SELECT * FROM {$_TABLES['mg_albums']} WHERE album_parent=" . $album_id;
    $aResult = DB_query($sql);
    $rowCount = DB_numRows($aResult);
    for ($z = 0; $z < $rowCount; $z++) {
        $row = DB_fetchArray($aResult);
        MG_deleteChildAlbums($row['album_id']);
    }
    $sql = "SELECT ma.media_id, m.media_filename, m.media_mime_ext\r\n            FROM " . $_TABLES['mg_media_albums'] . " as ma LEFT JOIN " . $_TABLES['mg_media'] . " as m ON ma.media_id=m.media_id\r\n            WHERE ma.album_id = " . $album_id;
    $result = DB_query($sql);
    $nRows = DB_numRows($result);
    $mediarow = array();
    for ($i = 0; $i < $nRows; $i++) {
        $row = DB_fetchArray($result);
        $mediarow[] = $row;
    }
    if (count($mediarow) != 0) {
        for ($i = 0; $i < count($mediarow); $i++) {
            $sql = "SELECT COUNT(media_id) AS count FROM " . $_TABLES['mg_media_albums'] . "  WHERE media_id = '" . $mediarow[$i]['media_id'] . "'";
            $result = DB_query($sql);
            $row = DB_fetchArray($result);
            if ($row['count'] <= 1) {
                foreach ($_MG_CONF['validExtensions'] as $ext) {
                    @unlink($_MG_CONF['path_mediaobjects'] . 'tn/' . $mediarow[$i]['media_filename'][0] . '/' . $mediarow[$i]['media_filename'] . $ext);
                    @unlink($_MG_CONF['path_mediaobjects'] . 'disp/' . $mediarow[$i]['media_filename'][0] . '/' . $mediarow[$i]['media_filename'] . $ext);
                }
                @unlink($_MG_CONF['path_mediaobjects'] . 'orig/' . $mediarow[$i]['media_filename'][0] . '/' . $mediarow[$i]['media_filename'] . '.' . $mediarow[$i]['media_mime_ext']);
                $sql = "DELETE FROM " . $_TABLES['mg_media'] . "  WHERE media_id = '" . $mediarow[$i]['media_id'] . "'";
                DB_query($sql);
                DB_delete($_TABLES['comments'], 'sid', $mediarow[$i]['media_id']);
                DB_delete($_TABLES['mg_playback_options'], 'media_id', $mediarow[$i]['media_id']);
                PLG_itemDeleted($mediarow[$i]['media_id'], 'mediagallery');
            }
        }
    }
    $sql = "DELETE FROM " . $_TABLES['mg_media_albums'] . " WHERE album_id = " . $album_id;
    DB_query($sql);
    $sql = "DELETE FROM " . $_TABLES['mg_albums'] . " WHERE album_id = " . $album_id;
    DB_query($sql);
    $feedname = sprintf($_MG_CONF['rss_feed_name'] . "%06d", $album_id);
    $feedpath = MG_getFeedPath();
    @unlink($feedpath . '/' . $feedname . '.rss');
}
Example #2
0
function MG_purgeMemberAlbums()
{
    global $_CONF, $_MG_CONF, $_TABLES, $LANG_MG01;
    $numItems = !empty($_POST['album']) ? count($_POST['album']) : 0;
    if ($numItems > 0) {
        for ($i = 0; $i < $numItems; $i++) {
            $album_id = COM_applyFilter($_POST['album'][$i], true);
            // grab owner ID
            $sql = "SELECT owner_id FROM {$_TABLES['mg_albums']} WHERE album_id=" . intval($album_id);
            $result = DB_query($sql);
            while (list($owner_id) = DB_fetchArray($result)) {
                DB_change($_TABLES['mg_userprefs'], 'member_gallery', 0, 'uid', $owner_id);
            }
            MG_deleteChildAlbums($album_id);
        }
        require_once $_CONF['path'] . 'plugins/mediagallery/include/rssfeed.php';
        MG_buildFullRSS();
    }
    echo COM_refresh($_MG_CONF['admin_url'] . 'index.php?msg=8');
    exit;
}
Example #3
0
/**
* Recursivly deletes all albums and child albums
*
* @param    int     album_id    album id to delete
* @return   int     true for success or false for failure
*
*/
function MG_deleteChildAlbums($album_id)
{
    global $_MG_CONF, $_TABLES;
    $sql = "SELECT album_id " . "FROM {$_TABLES['mg_albums']} " . "WHERE album_parent=" . intval($album_id);
    $result = DB_query($sql);
    while ($row = DB_fetchArray($result)) {
        MG_deleteChildAlbums($row['album_id']);
    }
    $sql = "SELECT media_id " . "FROM {$_TABLES['mg_media_albums']} " . "WHERE album_id = " . intval($album_id);
    $result = DB_query($sql);
    while ($row = DB_fetchArray($result)) {
        MG_deleteMedia($row['media_id']);
    }
    DB_delete($_TABLES['mg_media_albums'], 'album_id', intval($album_id));
    DB_delete($_TABLES['mg_albums'], 'album_id', intval($album_id));
    $feedname = sprintf($_MG_CONF['rss_feed_name'] . "%06d", $album_id);
    $feedpath = MG_getFeedPath();
    @unlink($feedpath . '/' . $feedname . '.rss');
}
Example #4
0
function MG_purgeMemberAlbums()
{
    global $MG_albums, $_CONF, $_MG_CONF, $_TABLES, $_USER, $LANG_MG00, $LANG_MG01, $_POST;
    $numItems = count($_POST['album']);
    for ($i = 0; $i < $numItems; $i++) {
        // grab owner ID
        $result = DB_query("SELECT owner_id FROM {$_TABLES['mg_albums']} WHERE album_id=" . (int) COM_applyFilter($_POST['album'][$i], true));
        $numRows = DB_numRows($result);
        if ($numRows > 0) {
            list($owner_id) = DB_fetchArray($result);
            DB_query("UPDATE {$_TABLES['mg_userprefs']} SET member_gallery=0 WHERE uid=" . $owner_id, 1);
        }
        MG_deleteChildAlbums((int) COM_applyFilter($_POST['album'][$i], true));
    }
    MG_initAlbums();
    require_once $_CONF['path'] . 'plugins/mediagallery/include/rssfeed.php';
    MG_buildFullRSS();
    echo COM_refresh($_MG_CONF['admin_url'] . 'index.php?msg=8');
    exit;
}