Yeni Mesajların Konu ve Forumları Renklendirmesi

Eklenti geliştirme bölümü.

Yeni Mesajların Konu ve Forumları Renklendirmesi

İleti WILT 03.02.2007, 16:57

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.
Eklentiler
scripts.js.rar
(893 bayt) 826 defa indirildi
Galatasaray Basketbol Portalı
"Ne gülüyorsun, bu anlattığım senin hikayen!"
Kullanıcı avatarı
WILT
Üye
Üye
 
İleti: 284
Kayıt: 03.02.2007, 10:27
Konum: İstanbul

Eklenti Geliştirme



Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 0 misafir

cron