Simple subforum için mysql dışı desteği kaldırmak

Eklenti geliştirme bölümü.

Simple subforum için mysql dışı desteği kaldırmak

İleti sabri ünal 20.05.2006, 15:31

Kod: Tümünü seç
##############################################################
## MOD Adı: Simple subforum için mysql dışı desteği kaldırmak
## MOD Yazarı: yakusha (sabri ünal) <yakusha@tnn.net> (http://www.canver.net)
## Mod Versiyon: 1.0.0
## Mod Türü: fix
## Mod işlevi: sayfa işlemlerini hızlandırmaya katkıda bulunur
## Mod Açıklama: Simple subforuda, mysql dışı db lere destek için konulmuş olan swich döngüsünü kaldırır.
##
## Kurulum Seviyesi: Orta
## Kurulum Süresi  : 5 Dakika
##
## İşlenecek Dosya: (1)
##   - viewforum.php
## Yüklenecek Dosya: (0)
##
######################################################################################
##
## Destek ve Yardım : http://www.canver.net
## Telif Hakkı      : Copyleft © - canver|net, canver|soft - www.canversoft.com
## Lisans           : GNU Public License v2 http://opensource.org/licenses/gpl-license.php
##
######################################################################################
## Güvenlik Uyarısı:
##
##   Modun son sürümü için lütfen http://www.canver.net adresini kontrol ediniz.
##   Modu başka siteden indirdiyseniz, içinde art niyetli kod olmadığını garanti edemeyiz.
##   Modu eklemeden önce, güvenlik kopyası amacıyla lütfen dosyalarınızın yedeğini alınız.
##
#####################################################################################
## Yazar Notları:
##
## Bu modun çalışması için, forumunuzda simple subforum modunun kurulu olması gerekmektedir.
## Sonuçta bu, ilgili mod için bir fix. :)
##
######################################################################################
## Mod Geçmişi:
##
##   20.05.2006 - versiyon: 1.0.0
##     - Deneme amaçlı ilk sürüm
##     - BETA
##
######################################################################################



#
#-----[ AÇ ]------------------------------------------
#

viewforum.php

#
#-----[ BUL ]------------------------------------------
#

// Begin Simple Subforums MOD
switch(SQL_LAYER)
{
   case 'postgresql':
      $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
         FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
         WHERE p.post_id = f.forum_last_post_id
            AND u.user_id = p.poster_id
            AND f.forum_parent = '{$forum_id}'
            UNION (
               SELECT f.*, NULL, NULL, NULL, NULL
               FROM " . FORUMS_TABLE . " f
               WHERE NOT EXISTS (
                  SELECT p.post_time
                  FROM " . POSTS_TABLE . " p
                  WHERE p.post_id = f.forum_last_post_id
               )
            )
            ORDER BY cat_id, forum_order";
      break;

   case 'oracle':
      $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
         FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
         WHERE p.post_id = f.forum_last_post_id(+)
            AND u.user_id = p.poster_id(+)
            AND f.forum_parent = '{$forum_id}'
         ORDER BY f.cat_id, f.forum_order";
      break;

   default:
      $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
         FROM (( " . FORUMS_TABLE . " f
         LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
         LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
         WHERE f.forum_parent = '{$forum_id}'
         ORDER BY f.cat_id, f.forum_order";
      break;
}
if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query subforums information', '', __LINE__, __FILE__, $sql);
}


#
#-----[ BUNUNLA DEĞİŞTİR ]------------------------------------------
#

// Begin Simple Subforums MOD
$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
   FROM (( " . FORUMS_TABLE . " f
   LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
   LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
   WHERE f.forum_parent = '{$forum_id}'
   ORDER BY f.cat_id, f.forum_order";

if ( !($result = $db->sql_query($sql)) )
{
   message_die(GENERAL_ERROR, 'Could not query subforums information', '', __LINE__, __FILE__, $sql);
}

#
#-----[ KAYDET - KAPAT ]------------------------------------------
#
Mutluyum, biraz komedi takılıyorum! sakın kızmayın yakında geçer, sebebini ben de bilmiyorum! yeni bir aşk da bulmuş değilim!
Kullanıcı avatarı
sabri ünal
Üye
Üye
 
İleti: 1325
Kayıt: 27.10.2005, 15:49
Konum: İstanbul

Eklenti Geliştirme



Kimler çevrimiçi

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