function MG_rebuildAllAlbumsRSS($aid) { if (!$aid == 0) { MG_buildAlbumRSS($aid); } $children = MG_getAlbumChildren($aid); foreach ($children as $child) { MG_rebuildAllAlbumsRSS($child); } }
function MG_staticSortAlbumChildren($startaid, $sql_order, $sql_sort_by) { global $_TABLES; $sql = "SELECT album_id FROM {$_TABLES['mg_albums']} " . "WHERE album_parent=" . $startaid . " " . $sql_sort_by . $sql_order; $result = DB_query($sql); $order = 10; while ($row = DB_fetchArray($result)) { DB_change($_TABLES['mg_albums'], 'album_order', $order, 'album_id', $row['album_id']); $order += 10; } $children = MG_getAlbumChildren($startaid); foreach ($children as $child) { MG_staticSortAlbumChildren($child, $sql_order, $sql_sort_by); } }
function MG_staticSortMediaChildren($startaid, $sql_order, $sql_sort_by) { global $_TABLES; $sql = "SELECT m.media_id FROM {$_TABLES['mg_media_albums']} AS ma " . "LEFT JOIN {$_TABLES['mg_media']} AS m ON m.media_id = ma.media_id " . "WHERE ma.album_id=" . $startaid . $sql_sort_by . $sql_order; $result = DB_query($sql); $order = 10; while ($row = DB_fetchArray($result)) { DB_change($_TABLES['mg_media_albums'], 'media_order', $order, array('media_id', 'album_id'), array($row['media_id'], $startaid)); $order += 10; } $children = MG_getAlbumChildren($startaid); foreach ($children as $child) { MG_staticSortMediaChildren($child, $sql_order, $sql_sort_by); } }
function MG_albumThumbnail($album_id) { global $_MG_CONF, $_TABLES, $_USER, $LANG_MG00, $LANG_MG01, $LANG_MG03; $sql = "SELECT album_title,album_parent,album_views,enable_album_views," . "media_count,album_desc,album_cover_filename,last_update,tn_attached " . "FROM {$_TABLES['mg_albums']} " . "WHERE album_id=" . intval($album_id); $result = DB_query($sql); $album_data = DB_fetchArray($result); $cover_filename = $album_data['album_cover_filename']; if ($album_data['media_count'] > 0) { if ($cover_filename != '' && $cover_filename != '0') { // Testing! if (strpos($cover_filename, 'tn_') === 0) { $tmpfilename = 'tn/' . $cover_filename[3] . '/' . $cover_filename; } else { $type = $_MG_CONF['gallery_tn_size']; // Root album if ($album_data['album_parent'] > 0) { $type = DB_getItem($_TABLES['mg_albums'], 'tn_size', 'album_id=' . $album_data['album_parent']); } $tmpfilename = 'tn/' . $cover_filename[0] . '/' . $cover_filename; $tmpfilename = MG_getThumbPath($tmpfilename, $type); $tmpfilename = rtrim($tmpfilename, '.'); } list($album_last_image, $mediasize) = MG_getImageUrl($tmpfilename); $album_last_update = MG_getUserDateTimeFormat($album_data['last_update']); if ($mediasize == false) { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/empty.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'empty.png'); } } else { $filename = MG_getAlbumCover($album_id); if ($filename == '' || $filename == NULL || $filename == " ") { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/empty.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'empty.png'); } else { list($album_last_image, $mediasize) = MG_getImageUrl('tn/' . $filename[0] . '/' . $filename); if ($mediasize == false) { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/missing.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'missing.png'); } } } $album_media_count = $album_data['media_count']; if ($album_data['last_update'] > 0) { $album_last_update = MG_getUserDateTimeFormat($album_data['last_update']); $lang_updated = $_MG_CONF['dfid'] == '99' ? '' : $LANG_MG03['updated_prompt']; } else { $album_last_update[0] = ''; $lang_updated = ''; } $lang_updated = $_MG_CONF['dfid'] == '99' ? '' : $LANG_MG03['updated_prompt']; if (isset($_USER['uid']) && $_USER['uid'] > 1) { $lastlogin = DB_getItem($_TABLES['userinfo'], 'lastlogin', "uid = '" . $_USER['uid'] . "'"); if ($album_data['last_update'] > $lastlogin) { $album_last_update[0] = '<span class="mgUpdated">' . $album_last_update[0] . '</span>'; } } } else { // nothing in the album yet... $filename = MG_getAlbumCover($album_id); if ($filename == '') { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/empty.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'empty.png'); } else { list($album_last_image, $mediasize) = MG_getImageUrl('tn/' . $filename[0] . '/' . $filename); if ($mediasize == false) { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/missing.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'missing.png'); } } $album_last_update[0] = ''; $lang_updated = ''; } if ($album_data['tn_attached'] == 1) { list($album_last_image, $mediasize) = MG_getImageUrl('covers/cover_' . $album_id); if ($mediasize == false) { $album_last_image = $_MG_CONF['mediaobjects_url'] . '/missing.png'; $mediasize = @getimagesize($_MG_CONF['path_mediaobjects'] . 'missing.png'); } } $children = MG_getAlbumChildren($album_id); $subalbums = count($children); $total_images_subalbums = MG_getMediaCount($album_id); $parent_album = new mgAlbum($album_data['album_parent']); $_MG_USERPREFS = MG_getUserPrefs(); if (isset($_MG_USERPREFS['tn_size']) && $_MG_USERPREFS['tn_size'] != -1) { $tn_size = $_MG_USERPREFS['tn_size']; } else { $tn_size = $parent_album->tn_size; } list($tn_height, $tn_width) = MG_getTNSize($tn_size, $parent_album->tnHeight, $parent_album->tnWidth); list($newwidth, $newheight) = MG_getImageWH_3($mediasize[0], $mediasize[1], $tn_width, $tn_height); $media_item_thumbnail = MG_getFramedImage($parent_album->album_skin, $album_data['album_title'], $_MG_CONF['site_url'] . '/album.php?aid=' . $album_id . '&page=1', $album_last_image, $newwidth, $newheight); $C = COM_newTemplate(MG_getTemplatePath($album_data['album_parent'])); $C->set_file('cell', 'album_page_album_cell.thtml'); $C->set_var(array('media_item_thumbnail' => $media_item_thumbnail, 'u_viewalbum' => $_MG_CONF['site_url'] . '/album.php?aid=' . $album_id . '&page=1', 'album_last_image' => $album_last_image, 'album_title' => $album_data['album_title'], 'album_media_count' => $album_data['media_count'], 'subalbum_media_count' => $total_images_subalbums, 'album_desc' => PLG_replaceTags($album_data['album_desc']), 'album_last_update' => $album_last_update[0], 'img_height' => $newheight, 'img_width' => $newwidth, 's_media_size' => 'width="' . $newwidth . '" height="' . $newheight . '"', 'row_height' => $tn_height, 'updated' => $lang_updated, 'lang_album' => $LANG_MG00['album'], 'lang_views' => $LANG_MG03['views'], 'views' => $album_data['album_views'], 'lang_views' => $album_data['enable_album_views'] ? $LANG_MG03['views'] : '', 'views' => $album_data['enable_album_views'] ? $album_data['album_views'] : '', 'subalbumcount' => $subalbums > 0 ? '(' . $subalbums . ')' : '', 'lang_subalbums' => $subalbums > 0 ? $LANG_MG01['subalbums'] : '')); PLG_templateSetVars('mediagallery', $C); $C->parse('output', 'cell'); $celldisplay = $C->finish($C->get_var('output')); return $celldisplay; }
function MG_massDeleteAlbums($aid) { global $_MG_CONF; $children = MG_getAlbumChildren($aid); $numItems = count($children); for ($x = 0; $x < $numItems; $x++) { $i = $children[$x]; if ($_POST['album'][$i] == 1) { MG_MassdeleteAlbum($children[$x]); } else { MG_massDeleteAlbums($children[$x]); } } echo COM_refresh($_MG_CONF['admin_url'] . 'index.php?msg=15'); }
$xml .= " <channel>\n"; $xml .= " <title><![CDATA[ XML for Media Gallery ]]></title>\n"; $xml .= " <link>" . $_MG_CONF['site_url'] . "</link>\n"; $xml .= " <description>XML Mini SlideShow for Media Gallery</description>\n"; $xml .= " <language>en-us</language>\n"; $xml .= " <generator>Media Gallery</generator>\n"; $xml .= " <lastBuildDate>" . date('r', time()) . "</lastBuildDate>\n"; $xml .= " <ttl>120</ttl>\n"; if (isset($album_data['album_id'])) { $xml .= " <album>\n"; $xml .= " <title><![CDATA[" . $album_data['album_title'] . "]]></title>\n"; $xml .= " <parentId><![CDATA[" . $album_data['album_parent'] . "]]></parentId>\n"; $xml .= " <owner><![CDATA[" . $album_data['owner_id'] . "]]></owner>\n"; $xml .= " <id><![CDATA[" . $album_data['album_id'] . "]]></id>\n"; $xml .= " </album>\n"; $children = MG_getAlbumChildren($aid); foreach ($children as $child) { $child_data = MG_getAlbumData($child, array('album_id', 'album_title', 'album_parent'), true); if ($child_data['access'] >= 1) { $xml .= " <album>\n"; $xml .= " <title><![CDATA[" . $child_data['album_title'] . "]]></title>\n"; $xml .= " <parentId><![CDATA[" . $child_data['album_parent'] . "]]></parentId>\n"; $xml .= " <owner><![CDATA[" . $child_data['owner_id'] . "]]></owner>\n"; $xml .= " <id><![CDATA[" . $child_data['album_id'] . "]]></id>\n"; $xml .= " </album>\n"; } } } if (isset($album_data['album_id']) && $album_data['access'] >= 1) { $sql = MG_buildMediaSql(array('album_id' => $aid, 'fields' => array('media_type', 'media_filename', 'remote_url', 'media_id', 'media_title', 'mime_type', 'media_upload_time'), 'where' => 'm.include_ss = 1')); $result = DB_query($sql);
function MG_parseAlbumsRSS(&$rss, $aid) { global $_MG_CONF, $_CONF, $_TABLES; if ($aid == 0) { // root_album $children = MG_getAlbumChildren($aid); foreach ($children as $child) { MG_parseAlbumsRSS($rss, $child); } return; } $album_data = MG_getAlbumData($aid, array('hidden', 'last_update', 'media_count', 'perm_anon', 'album_title', 'album_desc', 'owner_id')); if ($album_data['hidden'] != 1) { if ($_MG_CONF['rss_ignore_empty'] == 1 && $album_data['last_update'] != 0 && $album_data['last_update'] != '' && $album_data['media_count'] > 0) { if ($_MG_CONF['rss_anonymous_only'] == 1 && $album_data['perm_anon'] > 0) { $item = new FeedItem(); $item->title = $album_data['album_title']; $item->link = $_MG_CONF['site_url'] . '/album.php?aid=' . $aid; $description = ''; $childCount = MG_getAlbumChildCount($aid); $description = 'Album contains ' . $album_data['media_count'] . ' item and ' . $childCount . ' sub-albums.<br' . XHTML . '><br' . XHTML . '>'; $filename = MG_getAlbumCover($aid); if (substr($filename, 0, 3) == 'tn_') { foreach ($_MG_CONF['validExtensions'] as $ext) { if (file_exists($_MG_CONF['path_mediaobjects'] . 'tn/' . $filename[3] . '/' . $filename . $ext)) { $description .= '<img src="' . $_MG_CONF['mediaobjects_url'] . '/tn/' . $filename[3] . '/' . $filename . $ext . '" align="left"' . XHTML . '>'; break; } } // $description .= '<img src="' . $_MG_CONF['mediaobjects_url'] . '/tn/' . $filename[3] . '/' . $filename . '.jpg" align="left"' . XHTML . '>'; } elseif ($filename != '') { foreach ($_MG_CONF['validExtensions'] as $ext) { if (file_exists($_MG_CONF['path_mediaobjects'] . 'tn/' . $filename[0] . '/' . $filename . $ext)) { $description .= '<img src="' . $_MG_CONF['mediaobjects_url'] . '/tn/' . $filename[0] . '/' . $filename . $ext . '" align="left"' . XHTML . '>'; break; } } // $description .= '<img src="' . $_MG_CONF['mediaobjects_url'] . '/tn/' . $filename[0] . '/' . $filename . '.jpg" align="left"' . XHTML . '>'; } $description .= $album_data['album_desc']; $item->description = $description; //optional $item->descriptionTruncSize = 500; $item->descriptionHtmlSyndicated = true; $item->date = strftime("%a, %d %b %Y %H:%M:%S %z", $album_data['last_update']); $item->source = $_CONF['site_url']; if ($album_data['owner_id'] != '') { $username = DB_getItem($_TABLES['users'], 'username', "uid={$album_data['owner_id']}"); $item->author = $username; } $rss->addItem($item); } } } $children = MG_getAlbumChildren($aid); foreach ($children as $child) { MG_parseAlbumsRSS($rss, $child); } }