Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Тематические » Системы управления сайтами » PHP-Fusion: кто что знает?

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7

Открыть новую тему     Написать ответ в эту тему

apatit



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Всем привет!

Офицальный сайт
Русский сайт
Сайты посвященные модам:
Mods RU
Mods EN
Mods DE
Mods DK
Mods PL
Mods SE
Файлы на скачку:
PHP-Fusion 6.01.6 [eng]
PHP-Fusion 6.00.307

Всего записей: 1169 | Зарегистр. 09-10-2001 | Отправлено: 12:31 20-10-2004 | Исправлено: Paha_W, 08:52 25-10-2006
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Seriozka
есть, конечно, я исправил верхний пост и сейчас выложу:
 
[mod] color-name в коментариях и на форуме.

 

Цитата:
level: Суперадминистратор и Администратор
color: green
---
level: Модератор
color: green
---
v.6.00.307
---
у остальных пользователей так же останется тот цвет который и был до мода.

открываешь файлик forum\viewthread.php
находишь строчку:

Код:
<a href='../profile.php?lookup=".$data['user_id']."'>".$data['user_name']."</a><br>

и заменяешь на эту:

Код:
<a href='../profile.php?lookup=".$data['user_id']."'>";
if (iSUPERADMIN || iADMIN) {
echo "<font color='red'>".$data['user_name']."</font>";
} elseif (iMOD) {
echo "<font color='green'>".$data['user_name']."</font>";
} else {
echo $data['user_name'];
}
echo "</a><br>

 
вроде должно работать сам не проверял...
 
открываешь news.php
находишь строчку:

Код:
$news_[$ncolumn] .= "<span class='small2'><img src='".THEME."images/bullet.gif' alt=''> <a href='profile.php?lookup=".$news_info['user_id']."'>".$news_info['user_name']."</a> ".$locale['041'].showdate("longdate", $news_info['news_date']);

 
заменяешь на эту:
 

Код:
$news_[$ncolumn] .= "<span class='small2'><img src='".THEME."images/bullet.gif' alt=''> <a href='profile.php?lookup=".$news_info['user_id']."'>";
//mod color-name by PahaW - start
$rows_forum = dbrows(dbquery("SELECT * FROM ".DB_PREFIX."forums"));
for ($i=1;$i<=$rows_forum;$i++){
    $result_mod = dbquery("SELECT * FROM ".DB_PREFIX."forums WHERE forum_id='".$i."'");
    if (dbrows($result_mod)) {
    $fdata_mod = dbarray($result_mod);
    } else {
    fallback("index.php");
    }
    $forum_mods = explode(".", $fdata_mod['forum_moderators']);
    if (iMEMBER && in_array($data['user_id'], $forum_mods)){
       $moder=true;
       break;
    } else {
       $moder=false;
    }
}
if ($data['user_level']>=102) {
   echo "<font color='red'>".$data['user_name']."</font>";  
} elseif ($moder==true) {
   echo "<font color='green'>".$data['user_name']."</font>";  
} else {
   echo $data['user_name'];  
}  
////mod color-name by PahaW - end
echo "</a> ".$locale['041'].showdate("longdate", $news_info['news_date']);

 
открываешь includes\comments_include.php
находишь строчку:

Код:
echo "<a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'>".$data['user_name']."</a>";

 
заменяешь на:

Код:
echo "<a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'>";
//mod color-name by PahaW - start
$rows_forum = dbrows(dbquery("SELECT * FROM ".DB_PREFIX."forums"));
for ($i=1;$i<=$rows_forum;$i++){
    $result_mod = dbquery("SELECT * FROM ".DB_PREFIX."forums WHERE forum_id='".$i."'");
    if (dbrows($result_mod)) {
    $fdata_mod = dbarray($result_mod);
    } else {
    fallback("index.php");
    }
    $forum_mods = explode(".", $fdata_mod['forum_moderators']);
    if (iMEMBER && in_array($data['user_id'], $forum_mods)){
       $moder=true;
       break;
    } else {
       $moder=false;
    }
}
if ($data['user_level']>=102) {
   echo "<font color='red'>".$data['user_name']."</font>";  
} elseif ($moder==true) {
   echo "<font color='green'>".$data['user_name']."</font>";  
} else {
   echo $data['user_name'];  
}  
////mod color-name by PahaW - end
echo "</a>";


----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 10:12 20-10-2006 | Исправлено: Paha_W, 08:53 25-10-2006
Seriozka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Блин теперь вобще ничего не работает )))
без изменений

Всего записей: 7 | Зарегистр. 16-10-2006 | Отправлено: 20:10 21-10-2006
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Seriozka
какая версия жвижка у тебя просто я писал под 6.00.307.
могу переписать под 6.01.5

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 09:18 23-10-2006
iogun



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Установил фьюжен, и когда выхожу на главную страницу у меня русские символы не правильно отображаются. Кодировка в браузере стоит "Западноевропейская-ISO" , ставлю кирилицу и усе нормально, но когда перехожу к другой странице кодировка опять меняется. Подскажите где это можно поравить?

Всего записей: 477 | Зарегистр. 31-08-2004 | Отправлено: 09:49 24-10-2006
Seriozka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Paha_W:  
 6.01.3

Всего записей: 7 | Зарегистр. 16-10-2006 | Отправлено: 18:36 24-10-2006
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Paha_W

Цитата:
если ты обращаешься ко мне скажи где я добавил лишнее?

первый closeside оставь и последний, всё между ними убери....
вот в downloads.php (выше я спрашивал)
 там надо ведь как-то условия убрать   if (iMEMBER),  да?
А как будет гость? Или это не сработает?

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 17:26 25-10-2006 | Исправлено: kore, 18:43 25-10-2006
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
kore

Цитата:
первый closeside оставь и последний, всё между ними убери....  вот в downloads.php (выше я спрашивал)   там надо ведь как-то условия убрать   if (iMEMBER),  да?  А как будет гость? Или это не сработает?

ты просто начал не уточняя тему спрашивать, понял ты про закачку обяснил, чтобы она работала ты убрал closeside.
на счет того чтобы скачивать мог любой даже гость, нужно просто убрать условие  

Цитата:
 if (iMEMBER)

 
примерно  должно быть вот так:

Цитата:
 
            $max = "0";  
            $posts = $userdata['user_posts'];  
            $comment = dbcount("(comment_id)", "comments", "comment_name='".$userdata['user_id']."'");  
            $shoutbox = dbcount("(shout_id)", "shoutbox", "shout_name='".$userdata['user_id']."'");  
            $rating = dbcount("(rating_id)", "ratings", "rating_user='".$userdata['user_id']."'");  
            $sum = ($posts+$comment+$shoutbox+$rating);  
            if ($sum >= $max) {
if (isset($download_id)) {  
    $res = 0;  
    if ($data = dbarray(dbquery("SELECT download_url,download_cat FROM ".$db_prefix."downloads WHERE download_id='$view'"))) {  
        $cdata = dbarray(dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE download_cat_id='$view'"));  
        if (checkgroup($cdata['download_cat_access'])) {  
            $res = 1;  
            $result = dbquery("UPDATE ".$db_prefix."downloads SET download_count=download_count+1 WHERE download_id='$view'");  
            redirect($data['download_url']);  
        }  
    }  
    if ($res == 0) redirect("downloads.php");  
}  
            echo"<div class=button align=center><a href='$PHP_SELF?view=$view&download_id=$view' target='_blank' class=shoutboxname>ЗАКАЧАТЬ</a></div>";  
            }  
            else {  
            echo"<div class=button align=center>У ВАС: $sum Exp</div>Необходимо: $max Exp";  
            }

 
if (isset($download_url)) {  
echo"<br>Access Denied";  
}

 
если у тебя не стоит мод exp (точно название не помню, то что выделенно красным тоже надо удалить красным).
То есть в зависимости от количества у тебя суммарных баллов считается можно ли тебе скачивать или нельзя файл.
 
----
 
Seriozka
выложи куда-нибудь свои файлы и дай ссылку я посмотрю.

----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 02:20 26-10-2006 | Исправлено: Paha_W, 11:51 27-10-2006
Seriozka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На 14 версию и ниже есть сплоит, скул инъекция http://forum.antichat.ru/thread25249.html !
О Б Н О В Л Я Е М С Я  С Р О Ч Н О !
Paha_w сейчас обновлю до 15. так что по-идеи не надо =)

Всего записей: 7 | Зарегистр. 16-10-2006 | Отправлено: 22:55 03-11-2006
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Paha_W
Сделал, не в сети попробовал, идёт, ну ... на денвере.
а в сеть кинул файл, попробовал гостем скачать - перекидывает на downloads.php

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 15:37 09-11-2006
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
найди блок:

Цитата:
if (isset($download_id)) {  
    $res = 0;  
    if ($data = dbarray(dbquery("SELECT download_url,download_cat FROM ".$db_prefix."downloads WHERE download_id='$view'"))) {  
        $cdata = dbarray(dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE download_cat_id='$view'"));  
        if (checkgroup($cdata['download_cat_access'])) {  
            $res = 1;  

            $result = dbquery("UPDATE ".$db_prefix."downloads SET download_count=download_count+1 WHERE download_id='$view'");  
            redirect($data['download_url']);  
       }
    }  
    if ($res == 0) redirect("downloads.php");
}  

и закоментируй строчки выделенные красным.
тоесть перед ними поставь  #
примерно будет выглядить вот так:

Цитата:
if (isset($download_id)) {  
    #$res = 0;  
    if ($data = dbarray(dbquery("SELECT download_url,download_cat FROM ".$db_prefix."downloads WHERE download_id='$view'"))) {  
        $cdata = dbarray(dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE download_cat_id='$view'"));  
        #if (checkgroup($cdata['download_cat_access'])) {  
            $res = 1;  

            $result = dbquery("UPDATE ".$db_prefix."downloads SET download_count=download_count+1 WHERE download_id='$view'");  
            redirect($data['download_url']);  
       #}
    }  
    #if ($res == 0) redirect("downloads.php");
}  


----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 03:47 10-11-2006 | Исправлено: Paha_W, 03:48 10-11-2006
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Спс, всё получилось!
А ты не знаешь такой мод...
Ну вообщем, чтоб когда заходишь, можно было бы заходить невидимым.
Да, вообще, сколько там максимум юзеров в строке "Кто в он-лайн" появиться может?
Можно ли сделать строчку показать всех, например?

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 15:41 10-11-2006
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
kore

Цитата:
Да, вообще, сколько там максимум юзеров в строке "Кто в он-лайн" появиться может?

infusions\online_users_panel\online_users_panel.php  
 
вот этот блок отвечает за вывод пользователей:

Цитата:
$result = dbquery(
                "SELECT ton.*, user_id,user_name FROM ".$db_prefix."online ton
                LEFT JOIN ".$db_prefix."users tu ON ton.online_user=tu.user_id
                WHERE online_user!='0'"
        );
        $members = dbrows($result);
        if ($members != 0) {
                $i = 1;
                echo $locale['012'];
                while($data = dbarray($result)) {
                        echo "<a href='".BASEDIR."profile.php?lookup=".$data['user_id']."' class='side'>".$data['user_name']."</a>";
                        if ($i != $members) echo ", ";
                        $i++;
                }
                echo "<br>\n";
        } else {
                echo $locale['013']."<br>\n";
        }

 
еще вот такая панелька:
http://php-fusion.foxel.ru/mod_view.php?mod_id=38
 

Цитата:
Можно ли сделать строчку показать всех, например?

можно, делаешь новую панель с таким кодом
 

Цитата:
openside($locale['010']);
if ($settings['maintenance'] != "1") {
        $cond = ($userdata['user_level'] != 0 ? "'".$userdata['user_id']."'" : "'0' AND online_ip='".USER_IP."'");
        $result = dbquery("SELECT * FROM ".$db_prefix."online WHERE online_user=".$cond."");
        if (dbrows($result) != 0) {
                $result = dbquery("UPDATE ".$db_prefix."online SET online_lastactive='".time()."' WHERE online_user=".$cond."");
        } else {
                $name = ($userdata['user_level'] != 0 ? $userdata['user_id'] : "0");
                $result = dbquery("INSERT INTO ".$db_prefix."online (online_user, online_ip, online_lastactive) VALUES ('$name', '".USER_IP."', '".time()."')");
        }
        $result = dbquery("DELETE FROM ".$db_prefix."online WHERE online_lastactive<".(time()-3600).""); //вместо time()-60) поставил time()-3600)
        $result = dbquery(
                "SELECT ton.*, user_id,user_name FROM ".$db_prefix."online ton
                LEFT JOIN ".$db_prefix."users tu ON ton.online_user=tu.user_id
                WHERE online_user!='0'"
        );
        $members = dbrows($result);
        if ($members != 0) {
                $i = 1;
                while($data = dbarray($result)) {
                        echo "<a href='".BASEDIR."profile.php?lookup=".$data['user_id']."' class='side'>".$data['user_name']."</a><br>";
                        if ($i != $members) echo ", ";
                        $i++;
                }
                echo "<br>\n";
        } else {
                echo $locale['013']."<br>\n";
        }
}
closeside();

 
а для админа можно сделать файлик who_is_online.php в папке administration
c таким содержимым:
 

Цитата:
<?php
require_once "../maincore.php";
include BASEDIR."subheader.php";
include ADMIN."navigation.php";
include LOCALE.LOCALESET."admin/wioa.php";
 
if (!iADMIN) { header("Location:../index.php"); exit; }
opentable($locale['WIOA_000']);
$serverdate = date("Y.m.d, h:i");
echo "<br><p align=center><br>".$locale['WIOA_001']." - <B>$serverdate</B></p><br>
<br><table width='90%' border='0' cellspacing='0' cellpadding='2' align='center'><tr>
<td style='border: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_002']."</b></td>
<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text."; border-top: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_003']."</b></td>
<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text."; border-top: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_004']."</b></td>
<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text."; border-top: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_005']."</b></td>
<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text."; border-top: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_006']."</b></td>
<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text."; border-top: 1px solid ".$body_text.";' align='center'><b>".$locale['WIOA_007']."</b></td></tr>";
$result=dbquery("SELECT * FROM ".$db_prefix."online ORDER BY online_ip");
while ($data=dbarray($result)) {
    if($data['online_user'] == 0) {
            $uname = "<img src='".BASEDIR."images/red_dot.gif' align='absmiddle' border='0' alt='".$locale['WIOA_008']."'>&nbsp;".$locale['WIOA_008']."";
    } else {
            $result2 = dbquery("SELECT * FROM ".$db_prefix."users WHERE user_id=".$data['online_user']."");
            $data3 = dbarray($result2);
            $uname = "<img src='".BASEDIR."images/green_dot.gif' align='absmiddle' border='0' alt='{$data3['user_name']}'>&nbsp;<b>".$data3['user_name']."</b>";
    }
    $host = gethostbyaddr ($data['online_ip']);
    $array = explode(".", $host);
    $country = $array[sizeof($array)-1];
    $country = strtoupper($country);
    if (is_numeric($host)) {
        $country = $locale['WIOA_009'];
    } else {
        $country = $locale['WIOA_010'];
    }
 
// я добавил
function get_ip()
{
   if ($ip = getenv("HTTP_CLIENT_IP")) return $ip;
 
   if ($ip = getenv("HTTP_X_FORWARDED_FOR"))
   {
      if ($ip == '' || $ip == "unknown")
      {
          $ip = getenv("REMOTE_ADDR");
      }
      return $ip;
   }
 
   if ($ip = getenv("REMOTE_ADDR")) return $ip;
}
$ip=get_ip();
//закончил добавлять
//вместо .$data['online_wew_ip']. поставил $ip
    echo "
<tr>
    <td style='border-left: 1px solid ".$body_text."; border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";'>$uname</td>
    <td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";' align='center'>".$data['online_ip']."</td>
    <td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";' align='center'>&nbsp;".$ip."</td>
    <td style='font-size: 9px; border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";' align='center'><a href='http://".$host."' target='_blank'>$host</a></td>
    <td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";' align='center' align='center'>$country</td>";
    $unixtime = time() - ($data['online_lastactive']);
    if($unixtime < 60){
        $sec=$unixtime;
        $min=0;
        $hour=0;
    } else if($unixtime < 3600){
        $sec=$unixtime%60;
        $hour=0;
        $min_t = explode('.', number_format($unixtime/60,2));
        $min=$min_t[0];
    } else if($unixtime >= 216000){
        $hour_t = explode('.',number_format($unixtime/216000,2));
        $hour=$hour_t[0];
        $sec=$unixtime%60;
        $min_te = $unixtime%216000;
        $min_t = explode('.',number_format($min_te/60,2));
        $min=$min_t[0];
    }
    echo "<td style='border-bottom: 1px solid ".$body_text."; border-right: 1px solid ".$body_text.";' align='center'>".$min."м:".$sec."с</td>";
}
echo "</tr></table><br>";
$guest_online_count = dbrows(dbquery("SELECT * FROM ".$db_prefix."online where online_user=0"));
$member_online_count = dbrows(dbquery("SELECT * FROM ".$db_prefix."online where online_user=1"));
echo "<center><img src='".BASEDIR."images/group.gif' height='14' width='17'>&nbsp;&nbsp;".$locale['WIOA_011']."&nbsp;<b>$guest_online_count</b>&nbsp;".$locale['WIOA_012']."&nbsp;<b>$member_online_count</b>&nbsp;".$locale['WIOA_013'].".</center><br><br>";
closetable();
?>


----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 04:20 11-11-2006 | Исправлено: Paha_W, 04:27 11-11-2006
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Помогите пожалуйста сделать панель топ юзеров (десятка лучших).
Я создал панель top_members_panel и файл php для этого, но не знаю,  
что там прописать.
Файл top_members_panel.php должен обращаться к файлу exp_include.php из папки  
includes. Вот его содержимое:

Цитата:
function showexp($exp_user,$exp_posts,$exp_type) {
        if (iMEMBER) {  
            $posts = $exp_posts;
            $comment = dbcount("(comment_id)", "comments", "comment_name='$exp_user'");
            $shoutbox = dbcount("(shout_id)", "shoutbox", "shout_name='$exp_user'");
            $rating = dbcount("(rating_id)", "ratings", "rating_user='$exp_user'");
            $sum = ($posts+$comment+$shoutbox+$rating);
    if ($sum <= "1") {$rang = "0";$level = "0";}
    if ($sum >= "1") {$rang = "5";$level = "5";}
    if ($sum >= "5") {$rang = "25";$level = "25";}
    if ($sum >= "15") {$rang = "50";$level = "50";}
    if ($sum >= "25") {$rang = "100";$level = "100";}
    if ($sum >= "40") {$rang = "250";$level = "250";}
    if ($sum >= "55") {$rang = "500";$level = "500";}
    if ($sum >= "70") {$rang = "1000";$level = "1000";}
    if ($sum >= "100") {$rang = "2000";$level = "2000";}
    if ($sum >= "150") {$rang = "4000";$level = "4000";}
    if ($sum >= "400") {$rang = "10000";$level = "10000";}
    $poll_posts = $rang;
    $opt_posts = ($poll_posts ? number_format(100 / $poll_posts * $sum) : 0);
    //
        if ($exp_type == "1") {  
echo"<b>Рейтинг пользователя:</b>
<br>Звание: $level
<br>Проголосовал раз: <b>$rating</b>
<br>Комментариев: <b>$comment</b>
<br><b>Всего очков: $sum</b>";
        }
        if ($exp_type == "opt_posts") {  
        echo"$opt_posts";
        }
        if ($exp_type == "rang") {  
        echo"$rang";
        }
        if ($exp_type == "sum") {  
        echo"$sum";
        }        
        if ($exp_type == "posts") {  
        echo"$posts";
        }
        if ($exp_type == "shoutbox") {  
        echo"$shoutbox";
        }
        if ($exp_type == "comment") {  
        echo"$comment";
        }
        if ($exp_type == "rating") {  
        echo"$rating";
        }
        if ($exp_type == "level") {  
        echo"$level";
        }
    }
}
 

Т.е. в панели топа должны в убывающем порядке отобразиться 10 юзеров,
у которых количество очков больше всего ($sum).

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 16:21 31-12-2006
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ладно, сглупил я короче.
Я тут вот что хочу сделать. Вот код downloads.php (DownloadFront 1.1 Lite)

Цитата:
<?php
/*---------------------------------------------------+
| PHP-Fusion 6 Content Management System
+----------------------------------------------------+
| Copyright © 2002 - 2005 Nick Jones
| http://www.php-fusion.co.uk/
+----------------------------------------------------+
| Released under the terms & conditions of v2 of the
| GNU General Public License. For details refer to
| the included gpl.txt file or visit http://gnu.org
+-----------------------------------------------------
| PHP-Fusion 6 DownloadFront Management System
+-----------------------------------------------------
| Copyright © 2005 Sokolov Konstantin
| http://fusion.byweb.ru
| GNU General Public License visit http://gnu.org
+----------------------------------------------------*/
require_once "maincore.php";
require_once "subheader.php";
require_once "side_left.php";
include LOCALE.LOCALESET."downloads.php";
 
if (isset($download_id) && !isNum($download_id)) fallback("index.php");
 
 
if (!isset($cat_id)) {
    opentable($locale['400']);
    $result = dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE ".groupaccess('download_cat_access')." ORDER BY download_cat_name");
    $rows = dbrows($result);
    if ($rows != 0) {
        $counter = 0; $columns = 2;  
        echo "<table cellpadding='0' cellspacing='0' width='100%'>\n<tr>\n";
        while ($data = dbarray($result)) {
            if ($counter != 0 && ($counter % $columns == 0)) echo "</tr>\n<tr>\n";
            $num = dbcount("(download_cat)", "downloads", "download_cat='".$data['download_cat_id']."'");
            echo "<td align='left' valign='top' width='50%' class='tbl'><a href='".FUSION_SELF."?cat_id=".$data['download_cat_id']."'>".$data['download_cat_name']."</a> <span class='small2'>($num)</span>";
            if ($data['download_cat_description'] != "") echo "<br>\n<span class='small'>".$data['download_cat_description']."</span>";
            echo "</td>\n" ;
            $counter++;
        }
        echo "</tr>\n</table>\n";
    } else {
        echo "<center><br>\n".$locale['430']."<br><br>\n</center>\n";
    }
    closetable();
} else {
    $res = 0;
    if (!isNum($cat_id)) fallback(FUSION_SELF);
    $result = dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE download_cat_id='$cat_id'");
    if (dbrows($result) != 0) {
        $cdata = dbarray($result);
        if (checkgroup($cdata['download_cat_access'])) {
            $res = 1;
            opentable($locale['400'].": ".$cdata['download_cat_name']);
            $rows = dbcount("(*)", "downloads", "download_cat='$cat_id'");
            if (!isset($rowstart) || !isNum($rowstart)) $rowstart = 0;
            if ($rows != 0) {
                $result = dbquery("SELECT * FROM ".$db_prefix."downloads WHERE download_cat='$cat_id' ORDER BY ".$cdata['download_cat_sorting']." LIMIT $rowstart,15");
                $numrows = dbrows($result); $i = 1;
                while ($data = dbarray($result)) {
                    if ($data['download_datestamp']+604800 > time()+($settings['timeoffset']*3600)) {
                        $new = " <span class='small'>".$locale['410']."</span>";
                    } else {
                        $new = "";
                    }
$tot_votes = dbresult(dbquery("SELECT COUNT(rating_item_id) FROM ".$db_prefix."ratings WHERE rating_item_id='".$data['download_id']."' AND rating_type='F'"),0);
$sum_vote = dbresult(dbquery("SELECT SUM(rating_vote) FROM ".$db_prefix."ratings WHERE rating_item_id='".$data['download_id']."' AND rating_type='F'"),0);
if($tot_votes){
$pc_rating = sprintf("%.1f", $sum_vote/$tot_votes);
$pct_rating = "<span title='Оценка программы: $pc_rating/$tot_votes'><img src=".THEME."images/rating/$pc_rating.gif></span>";
}else {$pct_rating = "<span title='Оценка программы: 0.0/0'><img src=".THEME."images/rating/0.0.gif></span>";}
$comments = dbcount("(comment_id)", "comments", "comment_type='F' AND comment_item_id='".$data['download_id']."'");
 
    echo "<table width='100%' cellpadding='0' cellspacing='1' class='tbl-border'>\n";
    echo "<tr>\n<td colspan='4' class='forum-caption'>
    <a href='".FUSION_SELF."?view=".$data['download_id']."' ><b>".$data['download_title']."</b></a> $new</td>\n</tr>\n";
                    if ($data['download_description'] != "")  
    echo "<tr>\n<td colspan='4' class='tbl1'>".nl2br(stripslashes($data['download_description']))."</td>\n</tr>\n";
    echo "<tr>\n<td width='20%' class='tbl2'><b>".$locale['411']."</b> ".$data['download_license']."</td>\n<td width='20%' class='tbl1'><b>".$locale['412']."</b> ".$data['download_os']."</td>\n";
    echo "<td width='20%' class='tbl2'><b>".$locale['413']."</b> ".$data['download_version']."</td>\n<td width='40%' class='tbl1'><b>".$locale['414']."</b> ".showdate("%d.%m.%y", $data['download_datestamp'])."</td></tr>\n";
    echo "<tr><td width='20%' class='tbl1'><b>Комментарии:</b> $comments</td>\n<td width='20%' class='tbl2'><b>Размер:</b> ".$data['download_filesize']."</td>\n";
    echo "<td width='20%' class='tbl1'><b>".$locale['415']."</b> ".$data['download_count']."</td>\n<td width='40%' class='tbl2'>Рейтинг: $pct_rating</td>\n
        
    </tr>\n";
    echo "</table>\n";
                    if ($i != $numrows) {  
                    echo "<div align='center'><img src='".THEME."images/blank.gif' alt='' height='15' width='1'></div>\n"; $i++; }
                }
                closetable();
                if ($rows > 15) echo "<div align='center' style='margin-top:5px;'>\n".makePageNav($rowstart,15,$rows,3,FUSION_SELF."?cat_id=$cat_id&amp;")."\n</div>\n";
            } else {
                echo $locale['431']."\n";
                closetable();
            }
        }
    }
    if ($res == 0) redirect(FUSION_SELF);
}
if (isset($view)) {
    if (!isNum($view)) fallback(FUSION_SELF);
if (!$rowstart) {
    $rowstart = 0;  
 
$result = dbquery("SELECT * FROM ".$db_prefix."downloads WHERE download_id='$view'");
if (dbrows($result) != '') {
$data1 = dbarray($result);
$description = parseubb(nl2br($data1['download_description']));
 
$tot_votes = dbresult(dbquery("SELECT COUNT(rating_item_id) FROM ".$db_prefix."ratings WHERE rating_item_id='".$data1['download_id']."' AND rating_type='F'"),0);
$sum_vote = dbresult(dbquery("SELECT SUM(rating_vote) FROM ".$db_prefix."ratings WHERE rating_item_id='".$data1['download_id']."' AND rating_type='F'"),0);
if($tot_votes){
$pc_rating = sprintf("%.1f", $sum_vote/$tot_votes);
$pct_rating = "<span title='Оценка программы: $pc_rating/$tot_votes'><img src=".THEME."images/rating/$pc_rating.gif></span>";
}else {$pct_rating = "<span title='Оценка программы: 0.0/0'><img src=".THEME."images/rating/0.0.gif></span>";}
    echo"<table border=0 width=100% cellspacing=0 cellpadding=5><tr>
    <td width=70%><h2>".$data1['download_title']."</h2></td>
    <td align=center width=30%><b>Рейтинг: $pct_rating<br>";
 
        if (iMEMBER) {  
            $max = "5";  
            $posts = $userdata['user_posts'];
            $comment = dbcount("(comment_id)", "comments", "comment_name='".$userdata['user_id']."'");
            $shoutbox = dbcount("(shout_id)", "shoutbox", "shout_name='".$userdata['user_id']."'");
            $rating = dbcount("(rating_id)", "ratings", "rating_user='".$userdata['user_id']."'");
            $sum = ($posts+$comment+$shoutbox+$rating);
            if ($sum >= $max) {
if (isset($download_id)) {
    $res = 0;
    if ($data = dbarray(dbquery("SELECT download_url,download_cat FROM ".$db_prefix."downloads WHERE download_id='$view'"))) {
        $cdata = dbarray(dbquery("SELECT * FROM ".$db_prefix."download_cats WHERE download_cat_id='$view'"));
        if (checkgroup($cdata['download_cat_access'])) {
            $res = 1;
            $result = dbquery("UPDATE ".$db_prefix."downloads SET download_count=download_count+1 WHERE download_id='$view'");
            redirect($data['download_url']);
        }
    }
    if ($res == 0) redirect("downloads.php");
}
            echo"<div class=button align=center><a href='$PHP_SELF?view=$view&download_id=$view' target='_blank' class=shoutboxname>ЗАКАЧАТЬ</a></div>";
            }
            else {
            echo"<div class=button align=center>У ВАС: $sum Exp</div>Необходимо: $max Exp";
            }
        }
        else {echo"<div class=button align=center title='Закачка будет доступна после авторизации'>ВЫ НЕАВТОРИЗОВАННЫ</div><a href=".BASEDIR."register.php target=_blank>Регистрация</a>";}
if (isset($download_url)) {
echo"<br>Access Denied";
}
 
 
    echo"</td></tr>
    <tr><td colspan='2'>
        <div align=left class=tbl2>Дата добавления: ".showdate("<i>%d.%m.%Y</i> · Время добавления: <i>%H:%M</i>", $data1['download_datestamp'])." · Размер: ".$data1['download_filesize']." · Закачек: ".$data1['download_count']."";
        if (iAMDIN){echo" · <a href='".ADMIN."downloads.php?step=edit&download_id=$view' target='_blank'>EdiT</a>";}
        echo"</div>
        <br>$description</td><td></td></tr>
        <tr><td colspan='2'><div align=left class=tbl2>".$locale['411']." ".$data1['download_license']." · ".$locale['412']." ".$data1['download_os']." · ".$locale['413']. " ".$data1['download_version']." ";
        echo"</div></td><td></td></tr></table>";
include INCLUDES."downloadfront_ratings_include.php";
include INCLUDES."comments_include.php";
 
    showcomments("F","downloads","download_id",$view,FUSION_SELF."?view=$view");
    showratings("F",$view,FUSION_SELF."?view=$view");
}
else
    echo"В данной категории нет файлов. Возможно он был перенесен в другую категорию.";
}
}
echo"<div align=right><a href=http://fusion.byweb.ru target=_blank>DownloadFront</a> v.1.1 Lite | Copyright by <a href=mailto:webmaster@byweb.ru>DriveR</a> © 2005</div>";
require_once "side_right.php";
require_once "footer.php";
?>

Хочу спросить только одно - можно ли вставить на странице просмотра файла ссылку, ведущую на каталог, в котором этот файл расположен?

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 17:55 22-01-2007
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Хочу спросить только одно - можно ли вставить на странице просмотра файла ссылку, ведущую на каталог, в котором этот файл расположен?

а смысл?
ну можно вывести и ссылку, я вроде для DownloadFront 1.3.3.0 что-то подобное писал, еще чтобы юзеры могли закачивать.
здесь вроде описывал http://php-fusion.int.ru/index.php

----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 19:47 07-02-2007
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Смысл в том, что если человек придёт к файлу через поисковик, т.е. попадёт на ссылку
типа .../downloads.php?view=100  
где увидит описание файла, комментарии и пр., а понять, к к чему (к какой категории) этот файл относится, не сможет! И вернуться к списку файлов тоже не сможет. Нужно будет залазить в меню, а от туда выходить. Если категорий много?
Мне удалось сделать только ссылку, ведущую назад к списку файлов, но назвать согласно категории не удалось. Могу сделать вывод только её номера.
 
И если, например, захочется сделать строку состояния на странице скачки каждого файла, вроде этого:
Сайт -> Файловый архив -> Категория -> Файл

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 20:08 07-02-2007
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
kore
я так понял ты хочешь сделать, путь до файл?

----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 11:30 08-02-2007
kore



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ага.
То есть на странице http://сайт.ру/downloads.php?view=номер_файла
Перед описанием файла посетителю выдавалась строчка:

Цитата:
<a href='index.php'>Главная сайта</a> -> <a href='downloads.php'>Файловый архив</a> -> <a href='downloads.php?cat_id=номер_категории'>Название категории</a> -> Название файла

 
Я, собственно, смог сделать всё, кроме Названия категории.

Всего записей: 228 | Зарегистр. 12-01-2005 | Отправлено: 15:57 08-02-2007
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
kore
посмотри здесб что-то подобное я описывал но для старшей версии:
http://php-fusion.foxel.ru/forum/viewthread.php?forum_id=3&thread_id=108&pid=2075#post_1831
http://php-fusion.foxel.ru/forum/viewthread.php?forum_id=3&thread_id=108&getfile=1831
а это выводит название категории:
http://php-fusion.foxel.ru/forum/viewthread.php?forum_id=3&thread_id=108&pid=2075#post_1849
 
---
вот выкладываю кусок кода, думаю что тебе будет легче разобраться.
Надо просто сделать сделать запрос в базу каталога и подкаталога, чтобы узнать название категории и id
в данном кусоку в принципе все понятно.
кусок кода из readmore_php

----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 17:52 08-02-2007 | Исправлено: Paha_W, 18:18 08-02-2007
BakLAN



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поясните, плиз, чайнику, как прикрутить fckeditor к PHP-Fusion (SF). На сайте указано, только, что нужно разархиваровать в root-директорию сайта, а что дальше? Как прикрутить его к любому окошку создания сообщений?

Всего записей: 2850 | Зарегистр. 15-12-2003 | Отправлено: 23:54 30-05-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7

Компьютерный форум Ru.Board » Тематические » Системы управления сайтами » PHP-Fusion: кто что знает?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru