1 sayfadan 1. sayfa

Yeni Mesajların Konu ve Forumları Renklendirmesi

İletiTarih: 03.02.2007, 16:57
WILT
LeBron'un verdiği kodlar var ama ben çalıştıramadım onları. O yüzden XS temalarından ayıkladığımı buraya aynen yazıyorum. Tabii bunun çalışabilmesi için forumunuzda XS modunun yüklü olması lazım.

Kod: Tümünü seç
Öncelikle index.php'de çıkması için bu değişiklikler..

[ AÇ ]

templates/tema_adın/index_body.tpl

[ SAYFANIN BAŞINA EKLE ]

<?php

/* check for new messages */
$catrow_count = ( isset($this->_tpldata['catrow.']) ) ?  sizeof($this->_tpldata['catrow.']) : 0;
for($catrow_i = 0; $catrow_i < $catrow_count; $catrow_i++)
{
   $catrow_item = &$this->_tpldata['catrow.'][$catrow_i];
   // check for new messages
   $new_msg = false;
   $forumrow_count = ( isset($catrow_item['forumrow.']) ) ? sizeof($catrow_item['forumrow.']) : 0;
   for ($forumrow_i = 0; $forumrow_i < $forumrow_count; $forumrow_i++)
   {
      $forumrow_item = &$catrow_item['forumrow.'][$forumrow_i];
      $new_item = strpos($forumrow_item['FORUM_FOLDER_IMG'], '_new') > 0 ? true : false;
      if($new_item)
      {
         $new_msg = true;
         $forumrow_item['XS_NEW'] = '-new';
         $forumrow_item['LAST_POST'] = str_replace('icon_latest_reply.gif','icon_newest_reply.gif', $forumrow_item['LAST_POST']);
      }
      if(strlen($forumrow_item['L_MODERATOR']) && $forumrow_item['L_MODERATOR'] !== '&nbsp;')
      {
         $forumrow_item['L_MODERATOR'] .= ':';
      }
   }
}

?>

[ BUL ]

<a href="{catrow.forumrow.U_VIEWFORUM}" class="forumlink

[ SATIR İÇİNDE SONRASINA EKLE ] Not: Dikka edin, forumlink'ten sonra " gelmiyor.

<!-- IF catrow.forumrow.TOTAL_UNREAD --> topic-new<!-- ENDIF -->


Şimdi sıra viewforum.php'de..

[ AÇ ]

templates/tema_adın/viewforum_body.tpl

[ SAYFANIN BAŞINA EKLE ]

<?php

$topicrow_count = ( isset($this->_tpldata['topicrow.']) ) ?  sizeof($this->_tpldata['topicrow.']) : 0;
$new_posts = false;
// check own posts
global $userdata, $db;
$topic_ids = array();
$user_topics = array();
if ($userdata['user_id'] != ANONYMOUS)
{
   for ($topicrow_i = 0; $topicrow_i < $topicrow_count; $topicrow_i++)
   {
      $topicrow_item = &$this->_tpldata['topicrow.'][$topicrow_i];
      $topic_ids[] = $topicrow_item['TOPIC_ID'];
   }
   if (!empty($topic_ids))
   {
      // check the posts
      $s_topic_ids = implode(', ', $topic_ids);
      $sql = "SELECT DISTINCT topic_id FROM " . POSTS_TABLE . "
         WHERE topic_id IN ($s_topic_ids)
            AND poster_id = " . $userdata['user_id'];
      if ( ($result = $db->sql_query($sql)) )
      {
         while ($row = $db->sql_fetchrow($result))
         {
            $user_topics[$row['topic_id']] = true;
         }
      }
   }
}
// check for new posts and change folder for own posts
for ($topicrow_i = 0; $topicrow_i < $topicrow_count; $topicrow_i++)
{
   $topicrow_item = &$this->_tpldata['topicrow.'][$topicrow_i];
   if(strpos($topicrow_item['TOPIC_FOLDER_IMG'], '_new') > 0)
   {
      $topicrow_item['XS_NEW'] = '-new';
      $new_posts = true;
   }
   else
   {
      $topicrow_item['XS_NEW'] = '';
   }
   $user_replied = isset($user_topics[$topicrow_item['TOPIC_ID']]);
   if($user_replied)
   {
      $topicrow_item['TOPIC_FOLDER_IMG'] = str_replace('.gif', '_own.gif', $topicrow_item['TOPIC_FOLDER_IMG']);
   }
}
?>

[ BUL ]
Satırın devamında "{topicrow.TOPIC_TITLE}" girdisi var.

<a href="{topicrow.U_VIEW_TOPIC}"

[ DEĞİŞTİR ]

<a href="{topicrow.U_VIEW_TOPIC}{topicrow.XS_NEW}"


Şimdi ise overall_header.tpl dosyamıza scripts.js'yi ekleyeceğiz.

[ AÇ ]

templates/tema_adın/overall_header.tpl

[ BUL ]

<!-- BEGIN switch_enable_pm_popup -->

[ ÖNCESİNE EKLE ] Not: "TEMA_ADIN" kısmının yerine mutlaka kendi temanızın adını yazın.

<script language="javascript" type="text/javascript" src="templates/[b]TEMA_ADIN[/b]/scripts.js"></script>

[ YÜKLE ]

scripts.js --> templates/tema_adın/scripts.js

[ AÇ ]

templates/tema_adın/tema_adın.css

[ BUL ]

a.mainmenu:hover

[ SONRASINA EKLE ] Not: Simple Subforums kurulu olanlar bu bölümü yapmasınlar.

a.topic-new, a.topic-new:visited { color: {T_BODY_HLINK}; }
a.topic-new:hover, a.topic-new:active { color: {T_BODY_LINK}; }

Tüm dosyaları kaydedin ve kapatın.


Simple Subforum'u olanlarda kendiliğinden çıkacaktır bu. :) Umarım işinize yarar. Yapamadığınız birşey olursa lütfen sormaktan çekinmeyin.