News:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu

Sticky First Post (extends sticky topic)

Started by kuklovod, December 16, 2005, 01:21:28 AM

Previous topic - Next topic

kuklovod

That's very strange, you probably modified something else too or inserted it in the wrong place (if there are more than one "</tr></td>';" in your file). If you attach your file, I can check.

Unnamed~

#21
This is mi Display.template.php:

<?php
// Version: 1.0; Display

function template_main()
{
global $context$settings$options$txt$scripturl$modSettings;

// Show the anchor for the top and for the first message.  If the first message is new, say so.
echo '
<a name="top"></a>
<a name="msg'
$context['first_message'], '"></a>'$context['first_new_message'] ? '<a name="new"></a>' '';

// Show the linktree as well as the "Who's Viewing" information.
echo '
<table width="100%" align="center" cellpadding="3" cellspacing="0">
<tr>
<td valign="bottom">'
theme_linktree(), '</td>';
if (!empty($settings['display_who_viewing']))
{
echo '
<td align="right" class="smalltext">'
;

// Show just numbers...?
if ($settings['display_who_viewing'] == 1)
echo count($context['view_members']), ' 'count($context['view_members']) == $txt['who_member'] : $txt[19];
// Or show the actual people viewing the topic?
else
echo empty($context['view_members_list']) ? '0 ' $txt[19] : implode(', '$context['view_members_list']) . (empty($context['view_num_hidden']) || $context['can_moderate_forum'] ? '' ' (+ ' $context['view_num_hidden'] . ' ' $txt['hidden'] . ')');

// Now show how many guests are here too.
echo $txt['who_and'], $context['view_num_guests'], ' '$context['view_num_guests'] == $txt['guest'] : $txt['guests'], $txt['who_viewing_topic'], '</td>';
}

echo '

</tr>
</table>'
;

// Is this topic also a poll?
if ($context['is_poll'])
{
echo '

<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="120" height="30" align="left" valign="top"><img src="' 
$settings['images_url'] . '/top_left.gif" width="120" height="30" alt=" " border="0" /></td>
    <td width="100%" style="background-image:url(' 
$settings['images_url'] . '/top.gif)" valign="middle" align="center">
<img src="'
$settings['images_url'], '/topic/'$context['poll']['is_locked'] ? 'normal_poll_locked' 'normal_poll''.gif" alt="" align="top" /> 
<b>'
$txt['smf43'], '</b>

</td>
    <td width="120" height="30" align="right" valign="top"><img src="' 
$settings['images_url'] . '/top_right.gif" width="120" height="30" alt=" " border="0" /></td>
  </tr>
</table>
<table cellpadding="3" cellspacing="0" border="0" align="center" width="100%" class="tborder">
<tr class="windowbg">
<td width="5%" valign="top"><b>'
$txt['smf21'], ':</b></td>
<td>
'
$context['poll']['question'];
if (!empty($context['poll']['expire_time']))
echo '
&nbsp;('
, ($context['poll']['is_expired'] ? $txt['poll_expired_on'] : $txt['poll_expires_on']), ': '$context['poll']['expire_time'], ')';

// Are they not allowed to vote but allowed to view the options?
if (!$context['allow_vote'])
{
echo '
<table>
<tr>
<td style="padding-top: 2ex;">
<table border="0" cellpadding="0" cellspacing="0">'
;

// Show each option with it's corresponding percentage bar.
foreach ($context['poll']['options'] as $option)
echo '
<tr>
<td style="padding-right: 2ex;">'
$option['option'], '</td>'$context['allow_poll_view'] ? '
<td nowrap="nowrap">' 
$option['bar'] . ' ' $option['votes'] . ' (' $option['percent'] . '%)</td>' '''
</tr>'
;

echo '
</table>
</td>
<td valign="bottom" style="padding-left: 15px;">'
;

// If they are allowed to revote - show them a link!
if ($context['allow_change_vote'])
echo '
<a href="'
$scripturl'?action=vote;topic='$context['current_topic'], '.'$context['start'], ';poll='$context['poll']['id'], ';sesc='$context['session_id'], '">'$txt['poll_change_vote'], '</a><br />';        

// If they're allowed to lock the poll, show a link!
if ($context['poll']['lock'])
echo '
<a href="'
$scripturl'?action=lockVoting;topic='$context['current_topic'], '.'$context['start'], ';sesc='$context['session_id'], '">', !$context['poll']['is_locked'] ? $txt['smf30'] : $txt['smf30b'], '</a><br />';

// If they're allowed to edit the poll... show a link!
if ($context['poll']['edit'])
echo '
<a href="'
$scripturl'?action=editpoll;topic='$context['current_topic'], '.'$context['start'], '">'$txt['smf39'], '</a>';

echo '
</td>
</tr>'
$context['allow_poll_view'] ? '
<tr>
<td colspan="2"><b>' 
$txt['smf24'] . ': ' $context['poll']['total_votes'] . '</b></td>
</tr>' 
'''
</table><br />'
;
}
// They are allowed to vote!  Go to it!
else
{
echo '
<form action="'
$scripturl'?action=vote;topic='$context['current_topic'], '.'$context['start'], ';poll='$context['poll']['id'], '" method="post" style="margin: 0px;">
<table>
<tr>
<td colspan="2">'
;

// Show a warning if they are allowed more than one option.
if ($context['poll']['allowed_warning'])
echo '
'
$context['poll']['allowed_warning'], '
</td>
</tr><tr>
<td>'
;

// Show each option with it's button - a radio likely.
foreach ($context['poll']['options'] as $option)
echo '
'
$option['vote_button'], ' '$option['option'], '<br />';

echo '
</td>
<td valign="bottom" style="padding-left: 15px;">'
;

// Allowed to view the results? (without voting!)
if ($context['allow_poll_view'])
echo '
<a href="'
$scripturl'?topic='$context['current_topic'], '.'$context['start'], ';viewResults">'$txt['smf29'], '</a><br />';

// Show a link for locking the poll as well...
if ($context['poll']['lock'])
echo '
<a href="'
$scripturl'?action=lockVoting;topic='$context['current_topic'], '.'$context['start'], ';sesc='$context['session_id'], '">', (!$context['poll']['is_locked'] ? $txt['smf30'] : $txt['smf30b']), '</a><br />';

// Want to edit it?  Click right here......
if ($context['poll']['edit'])
echo '
<a href="'
$scripturl'?action=editpoll;topic='$context['current_topic'], '.'$context['start'], '">'$txt['smf39'], '</a>';

echo '
</td>
</tr><tr>
<td colspan="2"><input type="submit" value="'
$txt['smf23'], '" /></td>
</tr>
</table>
<input type="hidden" name="sc" value="'
$context['session_id'], '" />
</form>'
;
}

echo '
</td>
</tr>
</table>
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="120" height="16" align="left" valign="top"><img src="' 
$settings['images_url'] . '/bottom_left.gif" width="120" height="16" alt="" border="0" /></td>
    <td width="100%" style="background-image:url(' 
$settings['images_url'] . '/bottom.gif)" align="center" valign="middle"></td>
    <td width="120" height="16" align="right" valign="top"><img src="' 
$settings['images_url'] . '/bottom_right.gif" width="120" height="16" alt="" border="0" /></td>
  </tr>
</table><br />'
;
}

// Show the page index... "Pages: [1]".
echo '

<table width="100%" align="center" cellpadding="0" cellspacing="1" border="0" class="bordercolor">
<tr><td height="10" class="catbg"></td></tr>
<tr>
<td align="left" class="windowbg2" width="100%">
<table cellpadding="3" cellspacing="0" width="100%">
<tr>
<td>
<b>'
$txt[139], ':</b> '$context['page_index'];

// Show a "go down" link?
if (!empty($modSettings['topbottomEnable']))
echo $context['menu_separator'], '<a href="#bot">'$settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/go_down.gif" alt="' $txt['topbottom5'] . '" border="0" align="top" />' $txt['topbottom5'], '</a>';

echo '
</td>
<td align="right" style="font-size: smaller;">'
;

          
$buttonArray = array();
if ($context['can_reply'])
   $buttonArray[] = '<a href="' $scripturl '?action=post;topic=' $context['current_topic'] . '.' $context['start'] . ';num_replies=' $context['num_replies'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/reply.gif" alt="' $txt[146] . '" border="0" />' $txt[146]) . '</a>';
if ($context['can_mark_notify'])
   $buttonArray[] = '<a href="' $scripturl '?action=notify;sa=' . ($context['is_marked_notify'] ? 'off' 'on') . ';topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '" onclick="return confirm(\'' . ($context['is_marked_notify'] ? $txt['notification_disable_topic'] : $txt['notification_enable_topic']) . '\');">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/notify.gif" alt="' $txt[131] . '" border="0" />' $txt[131]) . '</a>';

          
// This is a special case; if they can see mark unread, put it at the top... otherwise show add poll.
          
if ($context['user']['is_logged'] && $settings['show_mark_read'])
              
$buttonArray[] = '<a href="' $scripturl '?action=markasread;sa=topic;topic=' $context['current_topic'] . '.' $context['start'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/markunread.gif" alt="' $txt['mark_unread'] . '" border="0" />' $txt['mark_unread']) . '</a>';
          elseif (
$context['can_add_poll'])
              
$buttonArray[] = '<a href="' $scripturl '?action=post;poll;msg=' $context['topic_first_message'] . ';topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/addpoll.gif" alt="' $txt['add_poll'] . '" border="0" />' $txt['add_poll']) . '</a>';

          if (
$context['can_send_topic'])
              
$buttonArray[] = '<a href="' $scripturl '?action=sendtopic;topic=' $context['current_topic'] . '.0">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/sendtopic.gif" alt="' $txt[707] . '" border="0" />' $txt[707]) . '</a>';
          
$buttonArray[] = '<a href="' $scripturl '?action=printpage;topic=' $context['current_topic'] . '.0" target="_blank">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/print.gif" alt="' $txt[465] . '" border="0" />' $txt[465]) . '</a>';

          echo 
implode($context['menu_separator'], $buttonArray);

  echo 
'</td>
</tr>
</table>
</td>
</tr>
<tr><td height="10" class="catbg"></td></tr>
</table>
<br />'
;



// Get all the messages...
while ($message $context['get_message']())
{


echo '
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="120" height="30" align="left" valign="top"><img src="' 
$settings['images_url'] . '/top_left.gif" width="120" height="30" alt=" " border="0" /></td>
    <td width="100%" style="background-image:url(' 
$settings['images_url'] . '/top.gif)" valign="middle" align="center">
<a href="'
$message['href'], '"><img src="'$settings['images_url'], '/post/' $message['icon'] . '.gif" alt="" border="0" /></a>
<b><a href="'
$message['href'], '">'$message['subject'], '</a></b>

</td>
    <td width="120" height="30" align="right" valign="top"><img src="' 
$settings['images_url'] . '/top_right.gif" width="120" height="30" alt=" " border="0" /></td>
  </tr>
</table>
<table border="0" class="bordercolor" cellpadding="0" align="center" cellspacing="1" width="100%">
  <tr>
    <td>'
;


if (!empty($options['display_quick_mod']) && $options['display_quick_mod'] == 1)
echo '
<form action="'
$scripturl'?action=quickmod2;topic='$context['current_topic'], '.'$context['start'], '" method="post" name="quickModForm" style="margin: 0;">';
echo '
<table cellpadding="0" align="center" cellspacing="0" border="0" width="100%">'
;


echo '
<tr><td style="padding: 0px 0px 0 0px;">'
;

// Show the message anchor and a "new" anchor if this message is new.
if ($message['id'] != $context['first_message'])
echo '
<a name="msg'
$message['id'], '"></a>'$message['first_new'] ? '<a name="new"></a>' '';

echo '
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr><td class="'
$message['alternate'] == 'windowbg' 'windowbg2''">';

// Show information about the poster of this message.
echo '
<table width="100%" cellpadding="5" cellspacing="0" style="table-layout: fixed;">
<tr>
<td valign="top" align="center" width="16%" rowspan="2" style="overflow: hidden;">
<b>'
$message['member']['link'], '</b>
<div class="smalltext">'
;

// Show the member's custom title, if they have one.
if (isset($message['member']['title']) && $message['member']['title'] != '')
echo '
'
$message['member']['title'], '<br />';

// Show the member's primary group (like 'Administrator') if they have one.
if (isset($message['member']['group']) && $message['member']['group'] != '')
echo '
'
$message['member']['group'], '<br />';

// Don't show these things for guests.
if (!$message['member']['is_guest'])
{
// Show the post group if and only if they have no other group or the option is on, and they are in a post group.
if ((empty($settings['hide_post_group']) || $message['member']['group'] == '') && $message['member']['post_group'] != '')
echo '
'
$message['member']['post_group'], '<br />';
echo '
'
$message['member']['group_stars'], '<br />';

// Is karma display enabled?  Total or +/-?
if ($modSettings['karmaMode'] == '1')
echo '
<br />
'
$modSettings['karmaLabel'], ' '$message['member']['karma']['good'] - $message['member']['karma']['bad'], '<br />';
elseif ($modSettings['karmaMode'] == '2')
echo '
<br />
'
$modSettings['karmaLabel'], ' +'$message['member']['karma']['good'], '/-'$message['member']['karma']['bad'], '<br />';

// Is this user allowed to modify this member's karma?
if ($message['member']['karma']['allow'])
echo '
<a href="'
$scripturl'?action=modifykarma;sa=applaud;uid='$message['member']['id'], ';topic='$context['current_topic'], '.' $context['start'], ';m='$message['id'], '">'$modSettings['karmaApplaudLabel'], '</a>
<a href="'
$scripturl'?action=modifykarma;sa=smite;uid='$message['member']['id'], ';topic='$context['current_topic'], '.'$context['start'], ';m='$message['id'], '">'$modSettings['karmaSmiteLabel'], '</a><br />';

// Show online and offline buttons?
if (!empty($modSettings['onlineEnable']) && !$message['member']['is_guest'])
echo '
'
$context['can_send_pm'] ? '<a href="' $message['member']['online']['href'] . '" title="' $message['member']['online']['label'] . '">' ''$settings['use_image_buttons'] ? '<img src="' $message['member']['online']['image_href'] . '" alt="' $message['member']['online']['text'] . '" border="0" align="middle" />' $message['member']['online']['text'], $context['can_send_pm'] ? '</a>' ''$settings['use_image_buttons'] ? '<span class="smalltext"> ' $message['member']['online']['text'] . '</span>' '''<br /><br />';

// Show the member's gender icon?
if (!empty($settings['show_gender']) && $message['member']['gender']['image'] != '')
echo '
'
$txt[231], ': '$message['member']['gender']['image'], '<br />';

// Show how many posts they have made.
echo '
'
$txt[26], ': '$message['member']['posts'], '<br />
<br />'
;

// Show avatars, images, etc.?
if (!empty($settings['show_user_images']) && empty($options['show_no_avatars']) && !empty($message['member']['avatar']['image']))
echo '
<div style="overflow: auto; width: 100%;">'
$message['member']['avatar']['image'], '</div><br />';

// Show their personal text?
if (!empty($settings['show_blurb']) && $message['member']['blurb'] != '')
echo '
'
$message['member']['blurb'], '<br />
<br />'
;

// This shows the popular messaging icons.
echo '
'
$message['member']['msn']['link'], '
'
$message['member']['aim']['link'], '';


// Show the profile, website, email address, and personal message buttons.
if ($settings['show_profile_buttons'])
{
// Don't show the profile button if you're not allowed to view the profile.
if ($message['member']['can_view_profile'])
echo '
<a href="'
$message['member']['href'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/icons/profile_sm.gif" alt="' $txt[27] . '" title="' $txt[27] . '" border="0" />' $txt[27]), '</a>';

// Don't show an icon if they haven't specified a website.
if ($message['member']['website']['url'] != '')
echo '
<a href="'
$message['member']['website']['url'], '" title="' $message['member']['website']['title'] . '" target="_blank">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/www_sm.gif" alt="' $txt[515] . '" border="0" />' $txt[515]), '</a>';

// Don't show the email address if they want it hidden.
if (empty($message['member']['hide_email']))
echo '
<a href="mailto:'
$message['member']['email'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/email_sm.gif" alt="' $txt[69] . '" title="' $txt[69] . '" border="0" />' $txt[69]), '</a>';

// Since we know this person is a guest, you *can* message them.
if ($context['can_send_pm'])
echo '
<a href="'
$scripturl'?action=pm;sa=send;u='$message['member']['id'], '" title="'$message['member']['online']['label'], '">'$settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/im_' . ($message['member']['online']['is_online'] ? 'on' 'off') . '.gif" alt="' $message['member']['online']['label'] . '" border="0" />' $message['member']['online']['label'], '</a>';
}
}
// Otherwise, show the guest's email.
else
echo '
<br />
<br />
<a href="mailto:'
$message['member']['email'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/email_sm.gif" alt="' $txt[69] . '" title="' $txt[69] . '" border="0" />' $txt[69]), '</a>';
echo '
<br />'
$message['member']['icq']['link'], '
'
$message['member']['yim']['link'], '<br />';
// Done with the information about the poster... on to the post itself.
echo '
</div>
</td>
<td valign="top" width="85%" height="100%">
<table width="100%" border="0"><tr>
<td align="left" valign="middle">'
;

// If this is the first post, (#0) just say when it was posted - otherwise give the reply #.
echo '
<div class="smalltext">« <b>'
, !($message['id'] == $context['topic_first_message']) ? $txt[146] . ' #' $message['counter'] : ''' Posted '$txt[30], ':</b> '$message['time'], ' »</div></td>
<td align="right" valign="bottom" height="20" nowrap="nowrap" style="font-size: smaller;">'
;

// Can they reply?  Have they turned on quick reply?
if ($context['can_reply'] && !empty($options['display_quick_reply']))
echo '
<a href="'
$scripturl'?action=post;quote='$message['id'], ';topic='$context['current_topic'], '.'$context['start'], ';num_replies='$context['num_replies'], ';sesc='$context['session_id'], '" onclick="if (!currentSwap) doQuote('$message['id'], '); else window.location.href = this.href; return false;">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/quote.gif" alt="' $txt[145] . '" border="0" />' $txt[145]), '</a>';
// So... quick reply is off, but they *can* reply?
elseif ($context['can_reply'])
echo '
<a href="'
$scripturl'?action=post;quote='$message['id'], ';topic='$context['current_topic'], '.'$context['start'], ';num_replies='$context['num_replies'], ';sesc='$context['session_id'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/quote.gif" alt="' $txt[145] . '" border="0" />' $txt[145]), '</a>';

// Can the user modify the contents of this post?
if ($message['can_modify'])
echo '
<a href="'
$scripturl'?action=post;msg='$message['id'], ';topic='$context['current_topic'], '.'$context['start'], ';sesc='$context['session_id'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/modify.gif" alt="' $txt[66] . '" border="0" />' $txt[17]), '</a>';

// How about... even... remove it entirely?!
if ($message['can_remove'])
echo '
<a href="'
$scripturl'?action=deletemsg;topic='$context['current_topic'], '.'$context['start'], ';msg='$message['id'], ';sesc='$context['session_id'], '" onclick="return confirm(\''$txt[154], '?\');">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/delete.gif" alt="' $txt[121] . '" border="0" />' $txt[31]), '</a>';

// What about splitting it off the rest of the topic?
if ($context['can_split'])
echo '
<a href="'
$scripturl'?action=splittopics;topic='$context['current_topic'], '.0;at='$message['id'], '">', ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/split.gif" alt="' $txt['smf251'] . '" border="0" />' $txt['smf251']), '</a>';

// Show a checkbox for quick moderation?
if (!empty($options['display_quick_mod']) && $options['display_quick_mod'] == && $message['can_remove'])
echo '
<input type="checkbox" name="msgs[]" value="'
$message['id'], '" class="check" />';

// Show the post itself, finally!
echo '
</td>
</tr></table>
<hr width="100%" size="1" class="hrcolor" />
<div style="overflow: auto; width: 100%;">'
$message['body'], '</div>
</td>
</tr>'
;

// Now for the attachments, signature, ip logged, etc...
echo '
<tr>
<td valign="bottom" class="smalltext" width="85%">
<table width="100%" border="0" style="table-layout: fixed;"><tr>
<td align="left" colspan="2" class="smalltext" width="100%">'
;

// Assuming there are attachments...
if (!empty($message['attachment']))
{
echo '
<hr width="100%" size="1" class="hrcolor" />
<div style="overflow: auto; width: 100%;">'
;

foreach ($message['attachment'] as $attachment)
{
if (isset($attachment['image']))
echo '
'
$attachment['image'], '<br />';
echo '
<a href="' 
$attachment['href'] . '"><img src="' $settings['images_url'] . '/icons/clip.gif" align="middle" alt="*" border="0" />&nbsp;' $attachment['name'] . '</a> ('$attachment['size'], ($attachment['is_image'] ? ', ' $attachment['width'] . 'x' $attachment['height'] . ' - ' $txt['attach_viewed'] : ' - ' $txt['attach_downloaded']) . ' ' $attachment['downloads'] . ' ' $txt['attach_times'] . '.)<br />';
}

echo '
</div>'
;
}

echo '
</td>
</tr><tr>
<td align="left" valign="bottom" class="smalltext">'
;

// Show "« Last Edit: Time by Person »" if this post was edited.
if ($settings['show_modify'] && !empty($message['modified']['name']))
echo '
« <i>'
$txt[211], ': '$message['modified']['time'], ' '$txt[525], ' '$message['modified']['name'], '</i> »';

echo '
</td>
<td align="right" valign="bottom" class="smalltext">'
;

// Maybe they want to report this post to the moderator(s)?
if ($context['can_report_moderator'])
echo '
<a href="'
$scripturl'?action=reporttm;topic='$context['current_topic'], '.'$message['counter'], ';msg='$message['id'], '">'$txt['rtm1'], '</a> &nbsp;';
echo '
<img src="'
$settings['images_url'], '/ip.gif" alt="" border="0" />';

// Show the IP to this user for this post - because you can moderate?
if ($context['can_moderate_forum'] && !empty($message['member']['ip']))
echo '
<a href="'
$scripturl'?action=trackip;searchip='$message['member']['ip'], '">'$message['member']['ip'], '</a> <a href="'$scripturl'?action=helpadmin;help=see_admin_ip" onclick="return reqWin(this.href);" class="help">(?)</a>';
// Or, should we show it because this is you?
elseif ($message['can_see_ip'])
echo '
<a href="'
$scripturl'?action=helpadmin;help=see_member_ip" onclick="return reqWin(this.href);" class="help">'$message['member']['ip'], '</a>';
// Okay, are you at least logged in?  Then we can show something about why IPs are logged...
elseif (!$context['user']['is_guest'])
echo '
<a href="'
$scripturl'?action=helpadmin;help=see_member_ip" onclick="return reqWin(this.href);" class="help">'$txt[511], '</a>';
// Otherwise, you see NOTHING!
else
echo '
'
$txt[511];

echo '
</td>
</tr></table>'
;

// Show the member's signature?
if (!empty($message['member']['signature']) && empty($options['show_no_signatures']))
echo '
<hr width="100%" size="1" class="hrcolor" />
<div style="overflow: auto; width: 100%; padding-bottom: 3px;" class="signature">'
$message['member']['signature'], '</div>';

echo '
</td>
</tr>
</table>
</td></tr>

</table>
</td></tr>
</table>


    </td>
    </tr>
</table>
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="120" height="16" align="left" valign="top"><img src="' 
$settings['images_url'] . '/bottom_left.gif" width="120" height="16" alt="" border="0" /></td>
    <td width="100%" style="background-image:url(' 
$settings['images_url'] . '/bottom.gif)" align="center" valign="middle"></td>
    <td width="120" height="16" align="right" valign="top"><img src="' 
$settings['images_url'] . '/bottom_right.gif" width="120" height="16" alt="" border="0" /></td>
  </tr>
</table><br />'
;

}
echo '
<a name="lastPost"></a>

<table width="100%" cellpadding="0" align="center" cellspacing="1" border="0" class="bordercolor">
<tr><td height="10" class="catbg"></td></tr>
<tr>
<td align="left" class="windowbg2" width="100%">
<table cellpadding="3" cellspacing="0" width="100%">
<tr>
<td>
<a name="bot"></a><b>'
$txt[139], ':</b> '$context['page_index'], ($modSettings['topbottomEnable'] ? $context['menu_separator'] . '<a href="#top">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/go_up.gif" alt="' $txt['topbottom4'] . '" border="0" align="top" />' $txt['topbottom4']) . '</a>' ''), '
</td>
<td align="right" style="font-size: smaller;">'
;

$buttonArray = array();
        
if ($context['can_reply'])
        
$buttonArray[] = '<a href="' $scripturl '?action=post;topic=' $context['current_topic'] . '.' $context['start'] . ';num_replies=' $context['num_replies'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/reply.gif" alt="' $txt[146] . '" border="0" />' $txt[146]) . '</a>';
        
if ($context['can_mark_notify'])
        
$buttonArray[] = '<a href="' $scripturl '?action=notify;sa=' . ($context['is_marked_notify'] ? 'off' 'on') . ';topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '" onclick="return confirm(\'' . ($context['is_marked_notify'] ? $txt['notification_disable_topic'] : $txt['notification_enable_topic']) . '\');">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/notify.gif" alt="' $txt[131] . '" border="0" />' $txt[131]) . '</a>';

        
// Another special case, similar to above but reversed.  Show "add poll" unless they can't - then show unread here too.
        
if ($context['can_add_poll'])
        
$buttonArray[] = '<a href="' $scripturl '?action=post;poll;msg=' $context['topic_first_message'] . ';topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/addpoll.gif" alt="' $txt['add_poll'] . '" border="0" />' $txt['add_poll']) . '</a>';
        
elseif ($context['user']['is_logged'] && $settings['show_mark_read'])
        
$buttonArray[] = '<a href="' $scripturl '?action=markasread;sa=topic;topic=' $context['current_topic'] . '.' $context['start'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/markunread.gif" alt="' $txt['mark_unread'] . '" border="0" />' $txt['mark_unread']) . '</a>';

        
if ($context['can_send_topic'])
        
$buttonArray[] = '<a href="' $scripturl '?action=sendtopic;topic=' $context['current_topic'] . '.0">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/sendtopic.gif" alt="' $txt[707] . '" border="0" />' $txt[707]) . '</a>';
        
$buttonArray[] = '<a href="' $scripturl '?action=printpage;topic=' $context['current_topic'] . '.0" target="_blank">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/print.gif" alt="' $txt[465] . '" border="0" />' $txt[465]) . '</a>';

echo implode($context['menu_separator'], $buttonArray);

echo '&nbsp;
</td>
</tr>
</table>
</td>
</tr>
<tr><td height="10" class="catbg"></td></tr>
</table>

<script language="JavaScript1.2" type="text/javascript"><!--'
;
if (!empty($options['display_quick_reply']))
echo '
var currentSwap = '
$options['display_quick_reply'] == 'false' 'true'';
function swapOptions()
{
document.getElementById("quickReplyExpand").src = smf_images_url + "/" + (currentSwap ? "collapse.gif" : "expand.gif");
document.getElementById("quickReplyOptions").style.display = currentSwap ? "" : "none";

currentSwap = !currentSwap;
}

setTimeout("fetchSession();", 600000);
function fetchSession()
{
document.getElementById("fetchSessionTemp").src = "'
$scripturl'?action=jsoption;sesc='$context['session_id'], ';" + (new Date().getTime());
setTimeout("fetchSession();", 600000);
}'
;
else
echo '
var currentSwap = true'
;
echo '
function doQuote(messageid)
{
if (currentSwap)
window.location.href = "'
$scripturl'?action=post;quote=" + messageid + ";topic='$context['current_topic'], '.'$context['start'], ';sesc='$context['session_id'], '";
else
{
window.open("'
$scripturl'?action=quotefast;quote=" + messageid + ";sesc='$context['session_id'], '", "quote", "toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,top=40,left=40,width=240,height=90,resizable=no;");
if (navigator.appName == "Microsoft Internet Explorer")
window.location.hash = "quickreply";
else
window.location.hash = "#quickreply";
}
}
// --></script>
<table border="0" width="100%" cellpadding="0" cellspacing="0">
<tr>'
;
if ($settings['linktree_inline'])
echo '
<td valign="top" align="left">'
theme_linktree(), '</td> ';
echo '
<td valign="top" align="right" class="smalltext"> <span class="nav"> '
$context['previous_next'], '</span></td>
</tr>
</table>
<div style="padding-top: 10px; padding-bottom: 4px;">'
theme_show_mod_buttons(), '</div>';

if (!empty($options['display_quick_mod']) && $options['display_quick_mod'] == && $context['can_remove_post'])
echo '
<input type="hidden" name="sc" value="'
$context['session_id'], '" />
</form>'
;

echo '
<div align="right" style="margin-bottom: 1ex;">
<form action="'
$scripturl'" method="get" name="jumptoForm">
<span class="smalltext">' 
$txt[160] . ':</span>
<select name="jumpto" onchange="if (this.options[this.selectedIndex].value) window.location.href=\''
$scripturl'\' + this.options[this.selectedIndex].value;">
<option value="">' 
$txt[251] . ':</option>';
foreach ($context['jump_to'] as $category)
{
echo '
<option value="" disabled="disabled">-----------------------------</option>
<option value="#'
$category['id'], '">'$category['name'], '</option>
<option value="" disabled="disabled">-----------------------------</option>'
;
foreach ($category['boards'] as $board)
echo '
<option value="?board='
$board['id'], '.0"'$board['is_current'] ? ' selected="selected"' '''> ' str_repeat('=='$board['child_level']) . '=> ' $board['name'] . '</option>';
}
echo '
</select>&nbsp;
<input type="button" value="'
$txt[161], '" onclick="if (document.jumptoForm.jumpto.options[document.jumptoForm.jumpto.selectedIndex].value) window.location.href = \''$scripturl'\' + document.jumptoForm.jumpto.options[document.jumptoForm.jumpto.selectedIndex].value;" />
</form>
</div>
<br />'
;

if ($context['can_reply'] && !empty($options['display_quick_reply']))
{
if ($context['show_spellchecking'])
echo '
<script language="JavaScript1.2" type="text/javascript" src="' 
$settings['default_theme_url'] . '/spellcheck.js"></script>';

echo '
<a name="quickreply"></a>
<table border="0" cellspacing="1" cellpadding="3" class="bordercolor" width="100%" style="clear: both;">
<tr>
<td colspan="2" class="catbg"><a href="javascript:swapOptions();"><img src="'
$settings['images_url'], '/'$options['display_quick_reply'] == 'collapse' 'expand''.gif" alt="+" border="0" id="quickReplyExpand" /></a> <a href="javascript:swapOptions();">'$txt['quick_reply_1'], '</a></td>
</tr>
<tr id="quickReplyOptions"'
$options['display_quick_reply'] == '' ' style="display: none"''>
<td class="windowbg" width="25%" valign="top">'
$txt['quick_reply_2'], $context['is_locked'] ? '<br /><br /><b>' $txt['quick_reply_warning'] . '</b>' '''</td>
<td class="windowbg" width="75%" align="center">
<form action="'
$scripturl'?action=post2" method="post" name="postmodify" onsubmit="submitonce(this);" style="margin:0;">
<input type="hidden" name="topic" value="' 
$context['current_topic'] . '" />
<input type="hidden" name="subject" value="' 
$txt['response_prefix'] . $context['subject'] . '" />
<input type="hidden" name="icon" value="xx" />
<input type="hidden" name="notify" value="'
$context['is_marked_notify'] || empty($options['auto_notify']) ? '0' '1''" />
<input type="hidden" name="goback" value="'
, empty($options['return_to_post']) ? '0' '1''" />
<input type="hidden" name="num_replies" value="'
$context['num_replies'], '" />
<textarea cols="75" rows="7" style="width: 95%; height: 100px;" name="message" tabindex="1"></textarea><br />
<input type="submit" name="post" value="' 
$txt[105] . '" onclick="return submitThisOnce(this);" accesskey="s" tabindex="2" />
<input type="submit" name="preview" value="' 
$txt[507] . '" onclick="return submitThisOnce(this);" accesskey="p" tabindex="4" />';
if ($context['show_spellchecking'])
echo '
<input type="button" value="'
$txt['spell_check'], '" onclick="spellCheck(\'postmodify\', \'message\');" />';
echo '
<input type="hidden" name="sc" value="' 
$context['session_id'] . '" />
<input type="hidden" name="seqnum" value="'
$context['form_sequence_number'], '" />
</form>
</td>
</tr>
</table>
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="120" height="16" align="left" valign="top"><img src="' 
$settings['images_url'] . '/bottom_left.gif" width="120" height="16" alt="" border="0" /></td>
    <td width="100%" style="background-image:url(' 
$settings['images_url'] . '/bottom.gif)" align="center" valign="middle"></td>
    <td width="120" height="16" align="right" valign="top"><img src="' 
$settings['images_url'] . '/bottom_right.gif" width="120" height="16" alt="" border="0" /></td>
  </tr>
</table>'
;
if ($context['show_spellchecking'])
echo '
<form name="spell_form" id="spell_form" method="post" target="spellWindow" action="'
$scripturl'?action=spellcheck"><input type="hidden" name="spell_formname" value="" /><input type="hidden" name="spell_fieldname" value="" /><input type="hidden" name="spellstring" value="" /></form>';

echo '
</div>'
;
}
echo '<img src="'$settings['images_url'], '/blank.gif" alt="" id="fetchSessionTemp" />';
}

function 
theme_show_mod_buttons()
{
global $context$settings$options$txt$scripturl$modSettings;

$moderationButtons = array();

if ($context['can_move'])
$moderationButtons[] = '<a href="' $scripturl '?action=movetopic;topic=' $context['current_topic'] . '.0">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/admin_move.gif" alt="' $txt[132] . '" border="0" />' $txt[132]) . '</a>';
if ($context['can_delete'])
$moderationButtons[] = '<a href="' $scripturl '?action=removetopic2;topic=' $context['current_topic'] . '.0;sesc=' $context['session_id'] . '" onclick="return confirm(\'' $txt[162] . '\');">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/admin_rem.gif" alt="' $txt[63] . '" border="0" />' $txt[63]) . '</a>';
if ($context['can_lock'])
$moderationButtons[] = '<a href="' $scripturl '?action=lock;topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/admin_lock.gif" alt="' . (empty($context['is_locked']) ? $txt['smf279'] : $txt['smf280']) . '" border="0" />' : (empty($context['is_locked']) ? $txt['smf279'] : $txt['smf280'])) . '</a>';
if ($context['can_sticky'])
$moderationButtons[] = '<a href="' $scripturl '?action=sticky;topic=' $context['current_topic'] . '.' $context['start'] . ';sesc=' $context['session_id'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/admin_sticky.gif" alt="' . (empty($context['is_sticky']) ? $txt['smf277'] : $txt['smf278']) . '" border="0" />' : (empty($context['is_sticky']) ? $txt['smf277'] : $txt['smf278'])) . '</a>';
if ($context['can_merge'])
$moderationButtons[] = '<a href="' $scripturl '?action=mergetopics;board=' $context['current_board'] . '.0;from=' $context['current_topic'] . '">' . ($settings['use_image_buttons'] ? '<img src="' $settings['images_url'] . '/' $context['user']['language'] . '/merge.gif" alt="' $txt['smf252'] . '" border="0" />' $txt['smf252']) . '</a>';
if ($context['can_remove_poll'])
$moderationButtons[] = '<a href="' $scripturl '?action=removepoll;topic=' $context['current_topic'] . '.' $context['start'] . '&q
· DConsolas.com.ar - Consolas made in Argentina ·

kuklovod

Somewhere close to 2/3rds of your file, there is this line:

</table><br />';


Add something like this after it:


if ($context['is_sticky'] && ($message['id']==$context['topic_first_message'])) {
echo 'Add a separator';
}


As your template uses separate table for each post, you will have to come up with some separator between sticky and non-sticky posts yourself - just replace 'Add a separator' text above with any html (try to avoid single quotes in it); it could be as simlpe as '<hr />' or some table with gfx or anything else. I would write something but I can't test how it will look so you will have to do it yourself. Really, it's not possible to cover every existing theme, especially those which change generic "one row for one post" appearance of SMF.

Unnamed~

· DConsolas.com.ar - Consolas made in Argentina ·

kezayah

Quote from: kuklovod on December 22, 2005, 11:07:35 AM
For now, you can manually modify two files: first, edit Sources/Display.php:

find "// always get post number 0 for sticky topics"
on next line after it remove "&& $context['is_sticky']"

And then, edit Themes/(yourtheme)/Display.template.php:

find "</td></tr>';"
on next line after it, remove "$context['is_sticky'] && "

This way, first post will be sticky for all topics. I will make it into a topic option someday, but it requires extra topic moderator options which is alot of changes with permissions etc :)

Excellent !!!  8)
But it's possible to add to "additional Option" the check : Sticky First Post ???
Hum I'm french, I hope you understand me ...  :-[

Tarek

hello :
when i used this MOD , i got the pages numbers Not working in the same topic , and the result is always the same , First page

i tried to post a new posts at the topic , but Not worked .

ExistenZ

Can someone make this mod work with RC2, perhaps, or does it already?
Regards,
Andre

tuga

Quote from: ExistenZ on January 04, 2006, 12:10:38 PM
Can someone make this mod work with RC2, perhaps, or does it already?

ya im looking too for RC2

thx

kuklovod

will be ported to RC2 in a day or two at most.

Azumi_chan

Can't get the RC2 version to work with the "Amber" theme, some help please? :)



kuklovod

Nope, need MessageIndex.template.php for first post sticky and Display.template.php for sticky topic separator (if you need, since RC2 has color distinction of stickied topics).

scoobyx

Quote from: Tarek on January 01, 2006, 11:25:37 AM
hello :
when i used this MOD , i got the pages numbers Not working in the same topic , and the result is always the same , First page

i tried to post a new posts at the topic , but Not worked .

I get this problem also, , I removed the mod and everthing was fine as it should , then re-installed the mod and yes page numbers within stickys do not work. I'm using a default template with RC2 1.1

Anyone find a fix to this yet?, as its a shame not having this wonderful mod running on my boards.


kuklovod

What exactly you mean by page numbers not working? They sure work fine for all forums I installed this on.

Can you send me a screenshot/link, since I can't figure out from your description what seems to be the problem. Forum link preferrable if something is really broken, to look at the code.

scoobyx

The page numbers that are in a sticky thread, i.e. if there is a big thread with 30 posts it may span over 3 pages, on the subject title is shows the number  i.e This is a stick thread << 1 2  3 >> or down at the bottom of the page it will show Pages : 1 2 3 >>

Basically if I select page 2 or 3 it does nothing, just stays on page 1, this meaning that nobody is able to view page 2 or page 3.






perplexed

hello,

I have installed this mod a few weeks ago and it installed successfully ie no errors and 'seems' to be working correctly...

BUT in the forum error log I get pages and pages of errors that say:

8: Undefined index: sticky_topics
File: /home/mysite/public_html/forum/Themes/default/MessageIndex.template.php (main sub template - eval?)
Line: 160

and

8: Undefined index: sticky_topics
File: /home/mysite/public_html/forum/Themes/default/MessageIndex.template.php (main sub template - eval?)
Line: 162

and

8: Undefined index: non_sticky_topics
File: /home/mysite/public_html/forum/Themes/default/MessageIndex.template.php (main sub template - eval?)
Line: 213

Do you know what is wrong and how to fix it please?




kuklovod

yes, you are not using english language? For all non-english installations you have to copy two lines from Themes/your_theme/languages/Modifications.english.php - to Modifications.your_language.php - the lines which define sticky and non_sticky strings.


kuklovod

Can you check Themes/default/Modifications.english.php then, whether it exists and has sticky and non_sticky defined? You probably downloaded older version which did not have it, or your languagedir is not default.

It modifies/creates the $languagedir/Modifications.english.php and adds the following two lines to it:

$txt['non_sticky_topics'] = "Regular topics";
$txt['sticky_topics'] = "Sticky topics";

Advertisement: