function MG_attachThumbnail($aid, $thumbnail, $mediaFilename) { global $_TABLES, $_MG_CONF; if ($_MG_CONF['verbose']) { COM_errorLog("MG Upload: Processing attached thumbnail: " . $thumbnail); } $sql = "SELECT tn_size, tnheight, tnwidth " . "FROM {$_TABLES['mg_albums']} WHERE album_id = " . intval($aid); $result = DB_query($sql); $A = DB_fetchArray($result); list($tnHeight, $tnWidth) = MG_getTNSize($A['tn_size'], $A['tnheight'], $A['tnwidth']); $tn_mime_type = MG_getMediaMetaData($thumbnail); if (!isset($tn_mime_type['mime_type'])) { $tn_mime_type['mime_type'] = ''; } switch ($tn_mime_type['mime_type']) { case 'image/gif': $tnExt = '.gif'; break; case 'image/jpeg': case 'image/jpg': $tnExt = '.jpg'; break; case 'image/png': $tnExt = '.png'; break; case 'image/bmp': $tnExt = '.bmp'; break; default: COM_errorLog("MG_attachThumbnail: Invalid graphics type for attached thumbnail."); return false; } $attach_tn = $mediaFilename . $tnExt; list($rc, $msg) = MG_resizeImage($thumbnail, $attach_tn, $tnHeight, $tnWidth, $tn_mime_type['mime_type'], 1, $_MG_CONF['tn_jpg_quality']); return true; }
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; }