home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2005 April
/
PCWorld_2005-04_cd.bin
/
akce
/
web
/
unitednuke
/
unitednuke.exe
/
html
/
modules
/
News
/
index.php
< prev
next >
Wrap
PHP Script
|
2004-01-31
|
15KB
|
348 lines
<?php
/************************************************************************/
/* PHP-NUKE: Web Portal System */
/* =========================== */
/* */
/* Copyright (c) 2002 by Francisco Burzi */
/* http://phpnuke.org */
/* */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License. */
/************************************************************************/
if (!eregi("modules.php", $_SERVER['PHP_SELF'])) {
die ("You can't access this file directly...");
}
$index = 1;
require_once("mainfile.php");
$module_name = basename(dirname(__FILE__));
get_lang($module_name);
function theindex($new_topic=0) {
//nize pridany $pagenum pro cisla stranek a $new_topic pro pripad dvouslopcovych temat
global $db, $storyhome, $topicname, $topicimage, $topictext, $datetime, $user, $cookie, $nukeurl, $prefix, $multilingual, $currentlang, $articlecomm, $sitename, $user_news, $new_topic, $pagenum, $bgcolor1, $name;
if ($multilingual == 1) {
$querylang = "AND (alanguage='$currentlang' OR alanguage='')";
} else {
$querylang = "";
}
include("header.php");
automated_news();
if (isset($cookie[3]) AND $user_news == 1) {
$storynum = $cookie[3];
} else {
$storynum = $storyhome;
}
if ($new_topic == 0) {
$qdb = "WHERE (ihome='0' OR catid='0')";
$home_msg = "";
} else {
$qdb = "WHERE topic='$new_topic'";
$sql_a = "SELECT topictext FROM ".$prefix."_topics WHERE topicid='$new_topic'";
$result_a = $db->sql_query($sql_a);
$row_a = $db->sql_fetchrow($result_a);
$numrows_a = $db->sql_numrows($result_a);
$topic_title = $row_a['topictext'];
OpenTable();
if ($numrows_a == 0) {
echo "<center><font class=\"title\">$sitename</font><br><br>"._NOINFO4TOPIC."<br><br>[ <a href=\"modules.php?name=News\">"._GOTONEWSINDEX."</a> | <a href=\"modules.php?name=Topics\">"._SELECTNEWTOPIC."</a> ]</center>";
} else {
echo "<center><font class=\"title\">$sitename: $topic_title</font><br><br>"
."<form action=\"modules.php?name=Search\" method=\"post\">"
."<input type=\"hidden\" name=\"topic\" value=\"$new_topic\">"
.""._SEARCHONTOPIC.": <input type=\"name\" name=\"query\" size=\"30\"> "
."<input type=\"submit\" value=\""._TOPICSEARCHING."\">"
."</form>"
."[ <a href=\"index.php\">"._GOTOHOME."</a> | <a href=\"modules.php?name=Topics\">"._SELECTNEWTOPIC."</a> ]</center>";
}
CloseTable();
echo "<br>";
}
if ($pagenum == "") { $pagenum = 1 ; }
$offset = ($pagenum-1) * $storynum ;
$offset = intval($offset);
$storynum = intval($storynum);
$sql = "SELECT sid, catid, aid, title, time, hometext, bodytext, comments, counter, topic, informant, notes, acomm, score, ratings FROM ".$prefix."_stories $qdb $querylang ORDER BY sid DESC limit $offset, $storynum";
//upraveno vyse pro cisla stranek
//$sql = "SELECT sid, catid, aid, title, time, hometext, bodytext, comments, counter, topic, informant, notes, acomm, score, ratings FROM ".$prefix."_stories $qdb $querylang ORDER BY sid DESC limit $storynum";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result)) {
$s_sid = intval($row['sid']);
$catid = intval($row['catid']);
$aid = $row['aid'];
$title = $row['title'];
$time = $row['time'];
$hometext = $row['hometext'];
$bodytext = $row['bodytext'];
$comments = $row['comments'];
$counter = $row['counter'];
$topic = $row['topic'];
$informant = $row['informant'];
$notes = $row['notes'];
$acomm = intval($row['acomm']);
$score = intval($row['score']);
$ratings = intval($row['ratings']);
if ($catid > 0) {
$sql2 = "SELECT title FROM ".$prefix."_stories_cat WHERE catid='$catid'";
$result2 = $db->sql_query($sql2);
$row2 = $db->sql_fetchrow($result2);
$cattitle = $row2['title'];
}
getTopics($s_sid);
formatTimestamp($time);
$subject = stripslashes($subject);
$hometext = stripslashes($hometext);
$notes = stripslashes($notes);
$introcount = strlen($hometext);
$fullcount = strlen($bodytext);
$totalcount = $introcount + $fullcount;
$c_count = $comments;
$r_options = "";
if (isset($cookie[4])) { $r_options .= "&mode=$cookie[4]"; }
if (isset($cookie[5])) { $r_options .= "&order=$cookie[5]"; }
if (isset($cookie[6])) { $r_options .= "&thold=$cookie[6]"; }
if (is_user($user)) {
$the_icons = " | <a href=\"modules.php?name=News&file=print&sid=$s_sid\"><img src=\"images/print.gif\" border=\"0\" alt=\""._PRINTER."\" title=\""._PRINTER."\" width=\"16\" height=\"11\"></a> <a href=\"modules.php?name=News&file=friend&op=FriendSend&sid=$s_sid\"><img src=\"images/friend.gif\" border=\"0\" alt=\""._FRIEND."\" title=\""._FRIEND."\" width=\"16\" height=\"11\"></a>";
} else {
$the_icons = "";
}
$story_link = "<a href=\"modules.php?name=News&file=article&sid=$s_sid$r_options\">";
$morelink = "(";
if ($fullcount > 0 OR $c_count > 0 OR $articlecomm == 0 OR $acomm == 1) {
$morelink .= "$story_link<b>"._READMORE."</b></a> | ";
} else {
$morelink .= "";
}
if ($fullcount > 0) { $morelink .= "$totalcount "._BYTESMORE." | "; }
if ($articlecomm == 1 AND $acomm == 0) {
if ($c_count == 0) { $morelink .= "$story_link"._COMMENTSQ."</a>"; } elseif ($c_count == 1) { $morelink .= "$story_link$c_count "._COMMENT."</a>"; } elseif ($c_count > 1 and $c_count <= 4) { $morelink .= "$story_link$c_count "._COMMENTS4."</a>"; } elseif ($c_count > 4) { $morelink .= "$story_link$c_count "._COMMENTS5."</a>"; }
}
$morelink .= "$the_icons";
$sid = $s_sid;
if ($catid != 0) {
$sql3 = "SELECT title FROM ".$prefix."_stories_cat WHERE catid='$catid'";
$result3 = $db->sql_query($sql3);
$row3 = $db->sql_fetchrow($result3);
$title1 = $row3['title'];
$title = "<a href=\"modules.php?name=News&file=categories&op=newindex&catid=$catid\"><font class=\"storycat\">$title1</font></a>: $title";
$morelink .= " | <a href=\"modules.php?name=News&file=categories&op=newindex&catid=$catid\">$title1</a>";
}
if ($score != 0) {
$rated = substr($score / $ratings, 0, 4);
} else {
$rated = 0;
}
$morelink .= " | "._SCORE." $rated";
$morelink .= ")";
$morelink = str_replace(" | | ", " | ", $morelink);
if (!eregi("modules.php", $_SERVER['REQUEST_URI'])) {
$mainpage = 1;
} else {
$mainpage = 0;
}
//zobrazeni aktualit start
if ($init == 1 AND !isset($new_topic) AND $mainpage == 1) { //je-li prvni clanek
// je-li aktivni modul Flashnews a existuje patricny modul a neni zobrazen blokovy styl aktualit, zobrazi Flashnews - zacatek
$sql_fn = "SELECT active, title FROM ".$prefix."_blocks WHERE blockfile='block-Flashnews.php' $querylang";
$result_fn = $db->sql_query($sql_fn);
$row_fn = $db->sql_fetchrow($result_fn);
$active_fn = $row_fn['active'];
$title_fn = $row_fn['title'];
if ($title_fn == "") { //neni-li blok uveden v DB, musime vlozit staticky titulek :-(
$title_fn = ""._FN_ACTUAL."";
}
if (is_active("Flashnews") AND $active_fn != 1) {
render_blocks("c", "block-Flashnews.php", $title_fn, "", "1", "");
}
}
$init++;
// zobrazeni Aktualit konec
$theme_init++;
themeindex($aid, $informant, $datetime, $title, $counter, $topic, $hometext, $notes, $morelink, $topicname, $topicimage, $topictext);
}
#zacatek cislovani stranek
$sql_pn = "select sid from ".$prefix."_stories $qdb $querylang";
$result_pn = $db->sql_query($sql_pn);
$numstories = $db->sql_numrows($result_pn);
$numpages = ceil($numstories / $storynum);
if ($numpages > 1 AND $pagenum <= $numpages AND $pagenum != "0" AND $pagenum > 0) {
Opentable();
echo "<center>$numstories "._STORIES." ($numpages "._PAGES.", $storynum "._PERPAGE.")<br>" ;
if ($pagenum > 1) {
$prevpage = $pagenum - 1 ;
$leftarrow = "images/left.gif" ;
if(isset($new_topic)) {
echo "<a href=\"modules.php?name=News&new_topic=$new_topic&pagenum=$prevpage\">";
echo "<img src=\"$leftarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
} elseif ($mainpage == 1){
echo "<a href=\"index.php?pagenum=$prevpage\">";
echo "<img src=\"$leftarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
} else {
echo "<a href=\"modules.php?name=News&pagenum=$prevpage\">";
echo "<img src=\"$leftarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
}
}
echo "[ " ;
if ($pagenum == 1 OR $pagenum == $numpages) {
$pagenum_pom = $pagenum+1;
} else {
$pagenum_pom = $pagenum;
}
if ($pagenum == $numpages) {
$pom_num = 2;
} else {
$pom_num = 1;
}
for ($i=$pagenum-$pom_num; $i < $pagenum_pom+2; $i++) {
if ($pom_num == 2) {
if ($i != $pagenum-2 AND $i != $pagenum+1 AND $i != $pagenum+2) {
if ($numpages == 2 AND $i == 2) {
echo " | ";
} elseif ($numpages != 2) {
echo " | ";
}
}
} else {
if ($i != 1 AND $i != $numpages+1 AND $i != $pagenum-1 AND $i != $pagenum+2) {
echo " | ";
} elseif ($pagenum == 1 AND $i == 3 AND $numpages != 2) {
echo " | ";
}
}
if ($i == $pagenum) {
echo "<b>$i</b>";
} elseif ($i != 0 AND $i <= $numpages) {
if(isset($new_topic) AND $i != 0 AND $i <= $numpages) {
echo "<a href=\"modules.php?name=News&new_topic=$new_topic&pagenum=$i\">$i</a>";
} elseif ($i != 0 AND $i <= $numpages AND $mainpage == 1){
echo "<a href=\"index.php?pagenum=$i\">$i</a>";
} elseif ($i != 0 AND $i <= $numpages) {
echo "<a href=\"modules.php?name=News&pagenum=$i\">$i</a>";
}
}
}
echo " ]";
if ($pagenum < $numpages) {
$nextpage = $pagenum + 1 ;
$rightarrow = "images/right.gif" ;
if(isset($new_topic)) {
echo "<a href=\"modules.php?name=News&new_topic=$new_topic&pagenum=$nextpage\">";
echo "<img src=\"$rightarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
} elseif ($mainpage == 1){
echo "<a href=\"index.php?pagenum=$nextpage\">";
echo "<img src=\"$rightarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
} else {
echo "<a href=\"modules.php?name=News&pagenum=$nextpage\">";
echo "<img src=\"$rightarrow\" align=\"middle\" border=\"0\" hspace=\"10\" alt=\"\"></a>";
}
}
if ($mainpage == 1) {
echo "<form name=\"pagenums\" method=\"get\" action=\"index.php\">\n";
} else {
echo "<form name=\"pagenums\" method=\"get\" action=\"modules.php\">\n";
echo " <input type=\"hidden\" name=\"name\" value=\"News\">\n";
if(isset($new_topic)) {
echo " <input type=\"hidden\" name=\"new_topic\" value=\"$new_topic\">\n";
}
}
echo " "._NEWPAGENUMSGOTO." <input type=\"text\" name=\"pagenum\" value=\"$pagenum\" size=\"2\" style=\"background-color: $bgcolor1\">\n";
echo " <input type=\"submit\" value=\"OK\" style=\"font-size: 9px; font-weight: bold;\">\n";
echo "</form>\n";
echo "</center>" ;
Closetable();
} elseif ($numpages > 1 OR $pagenum = "0" OR $pagenum < 0) {
Opentable();
echo ""._NEWPAGENOTFOUND."";
Closetable();
}
#konec cislovani stranek
include("footer.php");
}
function rate_article($sid, $score) {
global $prefix, $dbi, $ratecookie, $sitename, $r_options;
$score = intval($score);
$sid = intval($sid);
if ($score) {
if ($score > 5) { $score = 5; }
if ($score < 1) { $score = 1; }
if ($score != 1 AND $score != 2 AND $score != 3 AND $score != 4 AND $score != 5) {
Header("Location: index.php");
die();
}
if (isset($ratecookie)) {
$rcookie = base64_decode($ratecookie);
$r_cookie = explode(":", $rcookie);
}
for ($i=0; $i < sizeof($r_cookie); $i++) {
if ($r_cookie[$i] == $sid) {
$a = 1;
}
}
if ($a == 1) {
Header("Location: modules.php?name=News&op=rate_complete&sid=$sid&rated=1");
} else {
$result = sql_query("update ".$prefix."_stories set score=score+$score, ratings=ratings+1 where sid='$sid'", $dbi);
$info = base64_encode("$rcookie$sid:");
setcookie("ratecookie","$info",time()+3600);
Header("Location: modules.php?name=News&op=rate_complete&sid=$sid$r_options");
}
} else {
include("header.php");
title("$sitename: "._ARTICLERATING."");
OpenTable();
echo "<center>"._DIDNTRATE."<br><br>"
.""._GOBACK."</center>";
CloseTable();
include("footer.php");
}
}
function rate_complete($sid, $rated=0) {
global $sitename, $user, $cookie;
$r_options = "";
if (is_user($user)) {
if (isset($cookie[4])) { $r_options .= "&mode=$cookie[4]"; }
if (isset($cookie[5])) { $r_options .= "&order=$cookie[5]"; }
if (isset($cookie[6])) { $r_options .= "&thold=$cookie[6]"; }
}
include("header.php");
title("$sitename: "._ARTICLERATING."");
OpenTable();
if ($rated == 0) {
echo "<center>"._THANKSVOTEARTICLE."<br><br>"
."[ <a href=\"modules.php?name=News&file=article&sid=$sid$r_options\">"._BACKTOARTICLEPAGE."</a> ]</center>";
} elseif ($rated == 1) {
echo "<center>"._ALREADYVOTEDARTICLE."<br><br>"
."[ <a href=\"modules.php?name=News&file=article&sid=$sid$r_options\">"._BACKTOARTICLEPAGE."</a> ]</center>";
}
CloseTable();
include("footer.php");
}
switch ($op) {
default:
theindex($new_topic);
break;
case "rate_article":
rate_article($sid, $score);
break;
case "rate_complete":
rate_complete($sid, $rated);
break;
}
?>