SimplePortal
Customization => Custom Coding => Topic started by: DaRKeN on November 25, 2010, 08:43:23 AM
-
Hi! :)
Using this style:
global $txt;
$txt['recent_topics'] = 'Recent Topics';
$txt['recent_posts'] = 'Recent Posts';
$buttons = array(
'recent_topics' => array(
'text' => 'recent_topics',
'image' => '',
'lang' => true,
'url' => '#recent_topics" id="b_rt" onclick="change_display(\'rp\'); return false;',
'active' => true,
),
'recent_posts' => array(
'text' => 'recent_posts',
'image' => '',
'lang' => true,
'url' => '#recent_posts" id="b_rp" onclick="change_display(\'rt\'); return false;',
),
);
echo '
<div style="overflow: auto;">
', template_button_strip($buttons), '
</div>
<div id="recent_topics">
', sp_recent(array('type' => 1, 'display' => 1), 0), '
</div>
<div id="recent_posts" style="display: none;">
', sp_recent(array('display' => 1), 0), '
</div>
<script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
function change_display(block)
{
var current = block == \'rt\' ? 1 : 0;
document.getElementById(\'recent_topics\').style.display = current ? \'none\' : \'\';
document.getElementById(\'recent_posts\').style.display = current ? \'\' : \'none\';
document.getElementById(\'b_rt\').className = current ? \'button_strip_recent_topics\' : \'button_strip_recent_topics active\';
document.getElementById(\'b_rp\').className = current ? \'button_strip_recent_posts active\' : \'button_strip_recent_posts\';
}
// ]]></script>';
I would like to block a block containing albums of the gallery, which looks like this:
1: Recently Added Album 1
2: Recently Added Album 2
3: Recently Added Album 3
4: Recently Added Album 4
I tried using this code to create a block (taken from PortalBlocks.php)
global $db_prefix, $context, $modSettings, $scripturl;
global $sourcedir, $txt, $settings, $boardurl, $galurl;
static $mod, $GD_Installed;
$block_parameters = array(
'limit' => 'int',
'type' => 'select',
'direction' => 'select',
);
if ($return_parameters)
return $block_parameters;
$limit = empty($parameters['limit']) ? 7 : (int) $parameters['limit'];
$type = empty($parameters['type']) ? 0 : 1;
$direction = empty($parameters['direction']) ? 1 : 1;
if (!isset($mod))
{
if (file_exists($sourcedir . '/Aeva-Media.php'))
$mod = 'aeva_media';
elseif (file_exists($sourcedir . '/MGallery.php'))
$mod = 'smf_media_gallery';
elseif (file_exists($sourcedir . '/Gallery.php'))
$mod = 'smf_gallery';
}
if (empty($mod))
{
echo '
', $txt['error_sp_no_gallery_found'];
return;
}
elseif ($mod == 'aeva_media')
{
require_once($sourcedir . '/Aeva-Subs.php');
$items = aeva_getMediaItems(0, $limit, $type ? 'RAND()' : 'm.id_media DESC');
}
elseif ($mod == 'smf_media_gallery')
{
require_once($sourcedir . '/Subs-MGallery.php');
loadMGal_Settings();
if (loadLanguage('MGallery', '', false) === false)
loadLanguage('MGallery', 'english', false);
$items = getMediaItems(0, $limit, $type ? 'RAND()' : 'm.id_media DESC');
}
elseif ($mod == 'smf_gallery')
{
if (loadLanguage('Gallery', '', false) === false)
loadLanguage('Gallery', 'english', false);
if (!isset($GD_Installed))
$GD_Installed = function_exists('imagecreate');
if (empty($modSettings['gallery_url']))
$modSettings['gallery_url'] = $boardurl . '/gallery/';
$request = db_query("
SELECT
p.ID_PICTURE, p.commenttotal, p.filesize, p.views, p.thumbfilename,
p.filename, p.height, p.width, p.title, p.ID_MEMBER, m.memberName,
m.realName, p.date, p.description
FROM {$db_prefix}gallery_pic AS p
LEFT JOIN {$db_prefix}members AS m ON (m.ID_MEMBER = p.ID_MEMBER)
WHERE p.approved = 1
ORDER BY " . ($type ? 'RAND()' : 'p.ID_PICTURE DESC') . "
LIMIT $limit", __FILE__, __LINE__);
$items = array();
while ($row = mysql_fetch_assoc($request))
{
$items[] = array(
'id' => $row['ID_PICTURE'],
'title' => $row['title'],
'views' => $row['views'],
'poster_id' => $row['ID_MEMBER'],
'poster_name' => $row['realName'],
'poster_link' => empty($row['ID_MEMBER']) ? $txt['gallery_guest'] : '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '">' . $row['realName'] . '</a>',
'thumbfilename' => $row['thumbfilename'],
'filename' => $row['filename'],
'src' => $modSettings['gallery_url'] . ($GD_Installed ? $row['thumbfilename'] : $row['filename'] . '" width="120'),
);
}
mysql_free_result($request);
}
if (empty($items))
{
echo '
', $txt['error_sp_no_pictures_found'];
return;
}
echo '
<table class="sp_auto_align">', $direction ? '
<tr>' : '';
foreach ($items as $item)
{
echo !$direction ? '
<tr>' : '', '
<td>
<div class="sp_image smalltext">';
if ($mod == 'aeva_media')
{
echo '
<a href="', $galurl, 'sa=item;id=', $item['id'], '"><img src="', $galurl, 'sa=media;id=', $item['id'], ';thumb" alt="" /></a><br />
<a href="', $galurl, 'sa=item;id=', $item['id'], '">', $item['title'], '</a><br />
', $item['is_new'] ?
'<br /><img alt="" src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/new.gif" border="0" />' : '';
}
elseif ($mod == 'smf_media_gallery')
{
echo '
<a href="', $galurl, 'sa=item;id=', $item['id'], '">', $item['title'], '</a><br />
<a href="', $galurl, 'sa=item;id=', $item['id'], '"><img src="', $galurl, 'sa=media;id=', $item['id'], ';thumb" alt="" /></a><br />
', $txt['mgallery_views'], ': ', $item['views'], '<br />
', $txt['mgallery_posted_by'], ': <a href="', $scripturl, '?action=profile;u=', $item['poster_id'], '">', $item['poster_name'], '</a><br />
', $txt['mgallery_in_album'], ': <a href="', $galurl, 'sa=album;id=', $item['id_album'], '">', $item['album_name'], '</a>', $item['is_new'] ?
'<br /><img alt="" src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/new.gif" border="0" />' : '';
}
elseif ($mod == 'smf_gallery')
{
echo '
<a href="', $scripturl, '?action=gallery;sa=view;id=', $item['id'], '">', $item['title'], '</a><br />
<a href="', $scripturl, '?action=gallery;sa=view;id=', $item['id'], '"><img src="', $item['src'], '" alt="" /></a><br />
', $txt['gallery_text_views'], $item['views'], '<br />
', $txt['gallery_text_by'], ' ', $item['poster_link'], '<br />';
}
echo '
</div>
</td>', !$direction ? '
</tr>' : '';
}
echo $direction ? '
</tr>' : '', '
</table>';
What happens is that I have a few glitches:
1 .- Do not be put to show the album I want, leaving only recently added in all albums
2 .- The code blocks that need, which is the code that I put first, not the style fits me, not if it's because I use SMF 1.1.12
It looks so:
(http://img822.imageshack.us/img822/1282/error1f.jpg) (http://img822.imageshack.us/my.php?image=error1f.jpg)
When clicking a Recent Posts looks like this:
(http://img232.imageshack.us/img232/1272/error20.jpg) (http://img232.imageshack.us/my.php?image=error20.jpg)
And in both cases. much space down :0
Can someone help me please:)
-
Up! :(