Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 07-03-2005, 02:22 PM
iPrecisionNET iPrecisionNET is offline
 
Join Date: Apr 2005
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Ive got this new post hack and it works great, how do i block hidden forums?

below I've attached the code for a really nice new posts block for non-vb pages that I found on vbulletin.com a while back. The only problem with it is that it doesn't block out new posts from the hidden forums. So a guest or regular user can see post titles for posts made in the hidden forums and when they click on the link it tells them theyre not allowed in. I'm trying to find a way to prune out hidden forums from this hack. Anyone have any ideas? Hack code below;

Quote:
<?

//...........Last X Posts v1.0.5...........\\
//......by Kevin (kevin@tubescan.com)......\\

// For vBulletin version 2 (betas 3, 4, 5, RC1, RC2, RC3)
// (c) 2001 Jelsoft Enterprises, Ltd.

// vBulletin.com thread: http://www.vbulletin.com/forum/showt...threadid=12324

// let's get connected
require("last10config.php");
require("$path/config.php");
$db=mysql_connect($servername,$dbusername,$dbpassw ord) or die("Can't open connection to MySQL");
mysql_select_db($dbname) or die("Can't select database");

$hfs = $fs+2;
$fs .= "pt";
$hfs .= "pt";
if ($tw == "") {
$twt = "";
} else {
$twt = "width=\"$tw\"";
}
if ($cs == "") {
$cs = 0;
}
// start up our table, decide whether to show
echo("<table style=\"width:100%;\" border=0 cellpadding=4 cellspacing=$cs $twt><!--<tr bgcolor=\"$hc\">\n");
if ($showicon == "1") {
//echo("<td>&nbsp;</td>");
}
echo("<td style=\"text-align:left; font-family:$f; font-size:$hfs; color:$tc;\"><b><nobr>Thread Title</nobr></b></td>\n");
// the last poster column,
if ($lastposter == "1") {
echo("<td style=\"text-align:left; font-family:$f; font-size:$hfs; color:$tc;\" align=\"center\"><b><nobr>Last Poster</nobr></b></td>\n");
}
// the last post date & time column,
if ($lastpostdate == "1") {
echo("<td style=\"text-align:left; font-family:$f; font-size:$hfs; color:$tc;\" align=\"center\"><b><nobr>Last Post</nobr></b></td>\n");
}
// the views column,
if ($views == "1") {
echo("<td style=\"text-align:left; font-family:$f; font-size:$hfs; color:$tc;\" align=\"center\"><b>Views</b></td>\n");
}
// and/or the replies column
if ($replies == "1") {
echo("<td style=\"text-align:left; font-family:$f; font-size:$hfs; color:$tc;\" align=\"center\"><b>Replies</b></td>\n");
}
echo("</tr>-->\n");

// the base WHERE statement
$wheresql = "WHERE thread.lastposter=user.username AND thread.open!='10'";

// we can't have both the last 24 hours *and* the last 7 days, so error out if needed
if ($last24 == "1" && $last7 == "1") {
print("Error: \$last24 and \$last7 are both set to 1. Please change one of them to 0.");
exit;
}
// otherwise we're gonna find out which one it is
// last 24
if ($last24 == "1") {
$time = time()-86400;
$wheresql .= " AND thread.lastpost>'$time'";
}
// last 7
if ($last7 == "1") {
$time = time()-604800;
$wheresql .= " AND thread.lastpost>'$time'";
}
// are we trying to exclude *and* include forums? if so, error out
if ($excludeforums != "" && $includeforums != "") {
print("Error: \$includeforums and \$excludeforums are both set with numbers. Please remove the numbers from <b>one</b> of these two to proceed.");
exit;
}
// otherwise figure out which one we're using
// include forums
if ($includeforums == "" or $includeforums <= "0") {
$quarter = "no";
} else {
$incfid = explode(",",$includeforums); $i = 0; $a = count($incfid);
if ($a > 1) {
$wheresql .= " AND (thread.forumid='$incfid[0]'";
++$i;
while ($i < $a) {
$wheresql .= " OR thread.forumid='$incfid[$i]'"; ++$i;
}
$wheresql .= ")";
} else {
$wheresql .= " AND thread.forumid='$incfid[$i]'";
}
}
// or exclude forums
if ($excludeforums == "" or $excludeforums <= "0") {
$quarter = "no";
} else {
$excfid = explode(",",$excludeforums); $i = 0; $a = count($excfid);
while ($i < $a) {
$wheresql .= " AND thread.forumid!='$excfid[$i]'"; ++$i;
}
}
if ($showforumtitle == "1") {
$ftitle = ",forum";
$fsel = ",forum.title AS ftitle";
$wheresql .= " AND thread.forumid=forum.forumid";
}
// ooh a query!
$query = "SELECT thread.lastpost,thread.title,thread.lastposter,thr ead.replycount,thread.views,user.userid,thread.thr eadid,thread.forumid$fsel,thread.iconid FROM thread,user$ftitle $wheresql ORDER BY thread.$ob $obdir LIMIT $maxthreads";
// let's get the info
$tr = mysql_query($query) or die("MySQL reported this error while trying to retreive the info: ".mysql_error());
$dtf = mysql_query("SELECT value FROM setting WHERE varname='dateformat' OR varname='timeformat' OR varname='timeoffset' ORDER BY varname");
$df = mysql_result($dtf,0,0);
$tf = mysql_result($dtf,1,0);
$tof = mysql_result($dtf,2,0);
if ($showdate == "1") {
$fdt = "$df $tf";
} else {
$fdt = "$tf";
}
$cols = 1;
// let's display the info
while ($threads = mysql_fetch_array($tr)) {
// are we going to show the message too?
if ($showmessages == "1") {
$query0 = "SELECT pagetext,postid,dateline,iconid FROM post WHERE threadid='$threads[threadid]' ORDER BY dateline DESC LIMIT 1";
$lastpost = mysql_query($query0) or die("MySQL reported this error while trying to retrieve the last post info: ".mysql_error());
while ($lastpost1 = mysql_fetch_array($lastpost)) {
$lastpostshort = $lastpost1[pagetext];
$postii = $lastpost1[iconid];
}
if (strlen($lastpostshort) > $lplen) {
$lastpostshort = substr($lastpostshort,0,$lplen);
$lastpostshort .= "...";
}
$smilies = mysql_query("SELECT smilietext,smiliepath FROM smilie");
while ($smiles = mysql_fetch_array($smilies)) {
$lastpostshort = str_replace($smiles[smilietext],"<img src=\"".$url."/".$smiles[smiliepath]."\" border=0>",$lastpostshort);
}
if ($nb == "1") {
$lastpostshort = nl2br($lastpostshort);
}
$lastpostshort = str_replace("","<i>",$lastpostshort);
$lastpostshort = str_replace("
","</i>",$lastpostshort);
$lastpostshort = str_replace("","<u>",$lastpostshort);
$lastpostshort = str_replace("
","</u>",$lastpostshort);
$lastpostshort = str_replace("","<b>",$lastpostshort);
$lastpostshort = str_replace("
","</b>",$lastpostshort);
$lastpostshort = str_replace("
Quote:
","<br>quote:<br><hr> ",$lastpostshort);
$lastpostshort = str_replace("
"," <hr><br>\n",$lastpostshort);
$lastpostshort = str_replace("","<i>",$lastpostshort);
$lastpostshort = str_replace("
","</i>",$lastpostshort);
$lastpostshort = str_replace("","<u>",$lastpostshort);
$lastpostshort = str_replace("
","</u>",$lastpostshort);
$lastpostshort = str_replace("","<b>",$lastpostshort);
$lastpostshort = str_replace("
","</b>",$lastpostshort);
$lastpostshort = str_replace("
Quote:
","<br>quote:<br><hr> ",$lastpostshort);
$lastpostshort = str_replace("
"," <hr><br>\n",$lastpostshort);
$lastpostshort = str_replace("
Code:
","<br>code:<br><hr> ",$lastpostshort);
		$lastpostshort = str_replace("
"," <hr><br>\n",$lastpostshort);
$lastpostshort = str_replace("
Code:
","<br>code:<br><hr> ",$lastpostshort);
		$lastpostshort = str_replace("
"," <hr><br>\n",$lastpostshort);
$lastpostshort = str_replace("[img]","",$lastpostshort);
$lastpostshort = str_replace("[/img]","",$lastpostshort);
$lastpostshort = str_replace("","",$lastpostshort);
$lastpostshort = str_replace("http://","",$lastpostshort);<br /> ... str_replace("","",$lastpostshort);
$lastpostshort = str_replace("http://","",$lastpostshort);<br /> ... str_replace("","",$lastpostshort);
}
// thanks to kier for this idea to do the alternating row colors
if (($counter++ % 2) != 0) {
$bc=$bc1;
} else {
$bc=$bc2;
}
// if the title is more than $len characters, we need to cut it off and add ... to the end
if (strlen($threads[title]) > $len) {
$title = substr($threads[title],0,$len);
$title .= "...";
} else {
$title = $threads[title];
}
// convert the date to a format readable by non-unix geeks
$fd = date($fdt,$threads[lastpost]);
// display everything in a nice table. in the future we're gonna try to do this so others can format the data, but this is sufficient for now
echo("<tr>");
if ($showicon == "1") {
echo("<td bgcolor=\"$bc\">");
if ($postii != "0" && $postii != "") {
echo("<img src=\"$urlimg/icons/icon$postii.gif\" border=\"0\">");
}
if (($postii == "0" || $postii == "") && $threads[iconid] != "0" && $threads[iconid] != "") {
echo("<img src=\"$urlimg/icons/icon$threads[iconid].gif\" border=\"0\">");
}
if (($postii == "0" || $postii == "") && ($threads[iconid] == "0" || $threads[iconid] == "")) {
echo("&nbsp;");
}
echo("</td>");
++$cols;
}
echo("<td bgcolor=\"$bc\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\"><nobr>");
if ($showforumtitle == "1") {
echo("<a href=\"$url/forumdisplay.php?forumid=$threads[forumid]\" style=\"color: $lc;\">$threads[ftitle]</a>: ");
}
echo("<a href=\"$url/showthread.php?threadid=$threads[threadid]&goto=newpost\" style=\"color: $lc;\" title=\"$threads[title]\">$title</a></nobr></td>\n");
// last poster column?
if ($lastposter == "1") {
echo("<td bgcolor=\"$bc\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"center\"><a href=\"$url/member.php?action=getinfo&userid=$threads[userid]\" style=\"color: $lc;\">$threads[lastposter]</a></td>\n");
++$cols;
}
// the last post date & time column,
if ($lastpostdate == "1") {
echo("<td bgcolor=\"$bc\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"center\">$fd</td>\n");
++$cols;
}
// views column?
if ($views == "1") {
echo("<td bgcolor=\"$bc\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"center\">$threads[views]</td>\n");
++$cols;
}
// replies column?
if ($replies == "1") {
echo("<td bgcolor=\"$bc\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"center\">$threads[replycount]</td>\n");
++$cols;
}
echo("</tr>");
// are we showing the last post?
if ($showmessages == "1") {
echo("<tr bgcolor=\"$bc\"><td colspan=\"$cols\" style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"left\">\n");
echo("<table border=0 cellpadding=4 cellspacing=0 style=\"width:100%;\">\n");
echo("<tr bgcolor=\"$bc\"><td style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"right\" valign=\"top\"><b><nobr>Last Post:</nobr></b></td>\n");
echo("<td style=\"text-align:left; font-family:$f; font-size:$fs; color:$tc;\" align=\"left\" width=\"100%\">$lastpostshort</td></tr>\n");
echo("</table></td>\n");
}
$fd = "";
}
// close it all up
echo("</table>");
// bye!
?>
anyone?
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 05:07 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05449 seconds
  • Memory Usage 2,280KB
  • Queries Executed 12 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (2)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete