Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.6 > vBulletin 3.6 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vBi-Gallery for vB 3.6.X Details »»
vBi-Gallery for vB 3.6.X
Version: 1.30, by Harald_T Harald_T is offline
Developer Last Online: Jan 2012 Show Printable Version Email this Page

Category: Forum Display Enhancements - Version: 3.6.2 Rating:
Released: 10-07-2006 Last Update: Never Installs: 200
DB Changes Uses Plugins Template Edits
Code Changes  
No support by the author.

This is the 3.6.X-Version of my vBi-Gallery for vBulletin.

It's an update to this hack:

https://vborg.vbsupport.ru/showthread.php?t=92875

This gallery-system integrates completly into vB, because it's a modification of the forum itself and uses the attachment-system of vb.

Therefore, it's neccessary to be sure, that the attachment-system is working and it's possible to create thumbs. Otherwise, the gallery won't work.

Btw, I want to thank all the people here, which are using this gallery.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #132  
Old 11-06-2006, 06:54 PM
Harald_T Harald_T is offline
 
Join Date: Aug 2003
Location: Kleve, Germany
Posts: 531
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Try this one:

In the template "gallery_threadbit" find:

Code:
<if condition="$bbuserinfo['field5'] != 'Ja'">
$ids[forumids]
<if condition="$rows">
<if condition="$rows == 1">
</tr><tr>
</if>	
<td class="alt1" width="25%" align="center" valign="middle">
<table cellpadding="0" cellspacing="0" border="0"  bgcolor="#000000">
and replace 25% with 100%.

Otherwise, the size depends on the amount of text, that is written.
Reply With Quote
  #133  
Old 11-07-2006, 02:51 AM
VBUsers's Avatar
VBUsers VBUsers is offline
 
Join Date: Aug 2004
Posts: 830
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Harald_T
Try this one:

In the template "gallery_threadbit" find:

Code:
<if condition="$bbuserinfo['field5'] != 'Ja'">
$ids[forumids]
<if condition="$rows">
<if condition="$rows == 1">
</tr><tr>
</if>    
<td class="alt1" width="25%" align="center" valign="middle">
<table cellpadding="0" cellspacing="0" border="0"  bgcolor="#000000">
and replace 25% with 100%.

Otherwise, the size depends on the amount of text, that is written.
that didnt do anything. and i type alot of text and it just creates a new line.

also in the navbar when i click on the gallery link nothing shows up. why is that?
Reply With Quote
  #134  
Old 11-07-2006, 09:13 AM
DrewM DrewM is offline
 
Join Date: Oct 2005
Posts: 564
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AR Forums
that didnt do anything. and i type alot of text and it just creates a new line.

also in the navbar when i click on the gallery link nothing shows up. why is that?
the gallery catagoreys do not work
Reply With Quote
  #135  
Old 11-07-2006, 06:59 PM
Axl-Rose Axl-Rose is offline
 
Join Date: Mar 2006
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

somebody can help me please? i've followed the instructions exactly but if i click on the gallery link this error comes up:
Quote:
################################################## ## || || # vBulletin 3.6.2 || # ---------------------------------------------------------------- # || || # Copyright ?2000-2006 Jelsoft Enterprises Ltd. All Rights Reserved. || || # This file may not be redistributed in whole or significant part. # || || # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # || || # http://www.vbulletin.com | http://www.vbulletin.com/license.html # || || ################################################## ################## || \*================================================ ======================*/ // ####################### SET PHP ENVIRONMENT ########################### error_reporting(E_ALL & ~E_NOTICE); // #################### DEFINE IMPORTANT CONSTANTS ####################### define('THIS_SCRIPT', 'forumdisplay'); // ################### PRE-CACHE TEMPLATES AND DATA ###################### // get special phrase groups $phrasegroups = array('forumdisplay', 'inlinemod'); // get special data templates from the datastore $specialtemplates = array( 'iconcache', 'mailqueue' ); // pre-cache templates used by all actions $globaltemplates = array(); // pre-cache templates used by specific actions $actiontemplates = array( 'none' => array( 'FORUMDISPLAY', 'threadbit', 'threadbit_deleted', 'threadbit_announcement', 'forumhome_lastpostby', 'forumhome_forumbit_level1_post', 'forumhome_forumbit_level2_post', 'forumhome_forumbit_level1_nopost', 'forumhome_forumbit_level2_nopost', 'forumhome_subforumbit_nopost', 'forumhome_subforumseparator_nopost', 'forumdisplay_loggedinuser', 'forumhome_moderator', 'forumdisplay_moderator', 'forumdisplay_sortarrow', 'forumhome_subforumbit_post', 'forumhome_subforumseparator_post', 'forumhome_markread_script', 'forumrules', 'threadadmin_imod_menu_thread', ) ); // ####################### PRE-BACK-END ACTIONS ########################## function exec_postvar_call_back() { global $vbulletin; $vbulletin->input->clean_array_gpc('r', array( 'forumid' => TYPE_STR, )); // jump from forumjump switch ($vbulletin->GPC['forumid']) { case 'search': $goto = 'search'; break; case 'pm': $goto = 'private'; break; case 'wol': $goto = 'online'; break; case 'cp': $goto = 'usercp'; break; case 'subs': $goto = 'subscription'; break; case 'home': case '-1': $goto = $vbulletin->options['forumhome']; break; } // intval() forumid since having text in it is not expected anywhere else and it can't be "cleaned" a second time $vbulletin->GPC['forumid'] = intval($vbulletin->GPC['forumid']); if ($goto != '') { if (!empty($vbulletin->session->vars['sessionurl_js'])) { exec_header_redirect("$goto.php?" . $vbulletin->session->vars['sessionurl_js']); } else { exec_header_redirect("$goto.php"); } } // end forumjump redirects } // ######################### REQUIRE BACK-END ############################ require_once('./global.php'); require_once(DIR . '/includes/functions_forumlist.php'); require_once(DIR . '/includes/functions_bigthree.php'); require_once(DIR . '/includes/functions_forumdisplay.php'); // ################################################## ##################### // ######################## START MAIN SCRIPT ############################ // ################################################## ##################### ($hook = vBulletinHook::fetch_hook('forumdisplay_start')) ? eval($hook) : false; // ############################### start mark forums read ############################### if ($_REQUEST['do'] == 'markread') { require_once(DIR . '/includes/functions_misc.php'); $mark_read_result = mark_forums_read($foruminfo['forumid']); $vbulletin->url = $mark_read_result['url']; eval(print_standard_redirect($mark_read_result['phrase'])); } // Don't allow access to anything below if an invalid $forumid was specified if (!$foruminfo['forumid']) { eval(standard_error(fetch_error('invalidid', $vbphrase['forum'], $vbulletin->options['contactuslink']))); } // ############################### start enter password ############################### if ($_REQUEST['do'] == 'doenterpwd') { $vbulletin->input->clean_array_gpc('r', array( 'newforumpwd' => TYPE_STR, 'url' => TYPE_STR, 'postvars' => TYPE_STR, )); if ($foruminfo['password'] == $vbulletin->GPC['newforumpwd']) { // set a temp cookie for guests if (!$vbulletin->userinfo['userid']) { set_bbarray_cookie('forumpwd', $foruminfo['forumid'], md5($vbulletin->userinfo['userid'] . $vbulletin->GPC['newforumpwd'])); } else { set_bbarray_cookie('forumpwd', $foruminfo['forumid'], md5($vbulletin->userinfo['userid'] . $vbulletin->GPC['newforumpwd']), 1); } if ($vbulletin->GPC['url'] == $vbulletin->options['forumhome'] . '.php') { $vbulletin->GPC['url'] = 'forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$foruminfo[forumid]"; } else if ($vbulletin->GPC['url'] != '' AND $vbulletin->GPC['url'] != 'forumdisplay.php') { $vbulletin->GPC['url'] = str_replace('"', '', $vbulletin->GPC['url']); } else { $vbulletin->GPC['url'] = 'forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$foruminfo[forumid]"; } // Allow POST based redirection... if ($vbulletin->GPC['postvars'] != '') { $temp = unserialize($vbulletin->GPC['postvars']); if ($temp['do'] != 'doenterpwd') { // ...but prevent an infinite loop require_once(DIR . '/includes/functions_misc.php'); $vbulletin->GPC['postvars'] = construct_hidden_var_fields($vbulletin->GPC['postvars']); } else { $vbulletin->GPC['postvars'] = ''; } } // workaround IIS cookie+location header bug $forceredirect = (strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS') !== false); eval(print_standard_redirect('forumpasswordcorrect ', true, $forceredirect)); } else { require_once(DIR . '/includes/functions_misc.php'); $vbulletin->GPC['url'] = str_replace('&', '&', $vbulletin->GPC['url']); $postvars = construct_post_vars_html(); eval(standard_error(fetch_error('forumpasswordinco rrect', $vbulletin->session->vars['sessionhash'], htmlspecialchars_uni($vbulletin->GPC['url']), $foruminfo['forumid'], $postvars, $stylevar['cellpadding'], $stylevar['cellspacing'] ))); } } // ###### END SPECIAL PATHS // These $_REQUEST values will get used in the sort template so they are assigned to normal variables $perpage = $vbulletin->input->clean_gpc('r', 'perpage', TYPE_UINT); $pagenumber = $vbulletin->input->clean_gpc('r', 'pagenumber', TYPE_UINT); $daysprune = $vbulletin->input->clean_gpc('r', 'daysprune', TYPE_INT); $sortfield = $vbulletin->input->clean_gpc('r', 'sortfield', TYPE_STR); // get permission to view forum $_permsgetter_ = 'forumdisplay'; $forumperms = fetch_permissions($foruminfo['forumid']); if (!($forumperms & $vbulletin->bf_ugp_forumpermissions['canview'])) { print_no_permission(); } // disable thread preview if we can't view threads if (!($forumperms & $vbulletin->bf_ugp_forumpermissions['canviewthreads'])) { $vbulletin->options['threadpreview'] = 0; } // check if there is a forum password and if so, ensure the user has it set verify_forum_password($foruminfo['forumid'], $foruminfo['password']); $show['newthreadlink'] = iif(!$show['search_engine'] AND $foruminfo['allowposting'], true, false); $show['threadicons'] = iif ($foruminfo['allowicons'], true, false); $show['threadratings'] = iif ($foruminfo['allowratings'], true, false); // get vbulletin->iforumcache - for use by makeforumjump and forums list // fetch the forum even if they are invisible since its needed // for the title but we'll unset that further down cache_ordered_forums(1, 1); if (!$daysprune) { if ($vbulletin->userinfo['daysprune']) { $daysprune = $vbulletin->userinfo['daysprune']; } else { $daysprune = iif($foruminfo['daysprune'], $foruminfo['daysprune'], 30); } } // ### GET FORUMS, PERMISSIONS, MODERATOR iCACHES ######################## cache_moderators(); // draw nav bar $navbits = array(); $parentlist = array_reverse(explode(',', substr($foruminfo['parentlist'], 0, -3))); foreach ($parentlist AS $forumID) { $forumTitle = $vbulletin->forumcache["$forumID"]['title']; $navbits['forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$forumID"] = $forumTitle; } // pop the last element off the end of the $nav array so that we can show it without a link array_pop($navbits); $navbits[''] = $foruminfo['title']; $navbits = construct_navbits($navbits); eval('$navbar = "' . fetch_template('navbar') . '";'); $moderatorslist = ''; $listexploded = explode(',', $foruminfo['parentlist']); $showmods = array(); $show['moderators'] = false; $totalmods = 0; foreach ($listexploded AS $parentforumid) { if (!$imodcache["$parentforumid"] OR $parentforumid == -1) { continue; } foreach ($imodcache["$parentforumid"] AS $moderator) { if ($showmods["$moderator[userid]"] === true) { continue; } ($hook = vBulletinHook::fetch_hook('forumdisplay_moderator' )) ? eval($hook) : false; $showmods["$moderator[userid]"] = true; if ($moderatorslist == '') { $show['moderators'] = true; eval('$moderatorslist = "' . fetch_template('forumdisplay_moderator') . '";'); } else { eval('$moderatorslist .= ", ' . fetch_template('forumdisplay_moderator') . '";'); } $totalmods++; } } // ### BUILD FORUMS LIST ################################################# // get an array of child forum ids for this forum $foruminfo['childlist'] = explode(',', $foruminfo['childlist']); $comma = ''; // define max depth for forums display based on $vbulletin->options[forumhomedepth] define('MAXFORUMDEPTH', $vbulletin->options['forumdisplaydepth']); if (($vbulletin->options['showforumusers'] == 1 OR $vbulletin->options['showforumusers'] == 2 OR ($vbulletin->options['showforumusers'] > 2 AND $vbulletin->userinfo['userid'])) AND !$show['search_engine']) { $datecut = TIMENOW - $vbulletin->options['cookietimeout']; $forumusers = $db->query_read_slave(" SELECT user.username, (user.options & " . $vbulletin->bf_misc_useroptions['invisible'] . ") AS invisible, user.usergroupid, session.userid, session.inforum, session.lastactivity, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid FROM " . TABLE_PREFIX . "session AS session LEFT JOIN " . TABLE_PREFIX . "user AS user ON(user.userid = session.userid) WHERE session.lastactivity > $datecut ORDER BY" . iif($vbulletin->options['showforumusers'] == 1 OR $vbulletin->options['showforumusers'] == 3, " username ASC,") . " lastactivity DESC "); $numberregistered = 0; $numberguest = 0; $doneuser = array(); if ($vbulletin->userinfo['userid']) { // fakes the user being in this forum $loggedin = array( 'userid' => $vbulletin->userinfo['userid'], 'username' => $vbulletin->userinfo['username'], 'invisible' => $vbulletin->userinfo['invisible'], 'invisiblemark' => $vbulletin->userinfo['invisiblemark'], 'inforum' => $foruminfo['forumid'], 'lastactivity' => TIMENOW, 'musername' => $vbulletin->userinfo['musername'], ); $numberregistered = 1; fetch_online_status($loggedin); ($hook = vBulletinHook::fetch_hook('forumdisplay_loggedinus er')) ? eval($hook) : false; eval('$activeusers = "' . fetch_template('forumdisplay_loggedinuser') . '";'); $doneuser["{$vbulletin->userinfo['userid']}"] = 1; $comma = ', '; } $inforum = array(); // this require the query to have lastactivity ordered by DESC so that the latest location will be the first encountered. while ($loggedin = $db->fetch_array($forumusers)) { if (empty($doneuser["$loggedin[userid]"])) { if (in_array($loggedin['inforum'], $foruminfo['childlist']) AND $loggedin['inforum'] != -1) { if (!$loggedin['userid']) { // this is a guest $numberguest++; $inforum["$loggedin[inforum]"]++; } else { $numberregistered++; $inforum["$loggedin[inforum]"]++; ($hook = vBulletinHook::fetch_hook('forumdisplay_loggedinus er')) ? eval($hook) : false; if (fetch_online_status($loggedin)) { fetch_musername($loggedin); eval('$activeusers .= "' . $comma . fetch_template('forumdisplay_loggedinuser') . '";'); $comma = ', '; } } } if ($loggedin['userid']) { $doneuser["$loggedin[userid]"] = 1; } } } if (!$vbulletin->userinfo['userid']) { $numberguest = ($numberguest == 0) ? 1 : $numberguest; } $totalonline = $numberregistered + $numberguest; unset($joingroupid, $key, $datecut , $comma, $invisibleuser, $userinfo, $userid, $loggedin, $index, $value, $forumusers, $parentarray ); $show['activeusers'] = true; } else { $show['activeusers'] = false; } // ################################################## ########################### // get read status for this forum and children $unreadchildforums = 0; foreach ($foruminfo['childlist'] AS $val) { if ($val == -1 OR $val == $foruminfo['forumid']) { continue; } if ($vbulletin->options['threadmarking'] AND $vbulletin->userinfo['userid']) { $lastread_child = max($vbulletin->forumcache["$val"]['forumread'], TIMENOW - ($vbulletin->options['markinglimit'] * 86400)); } else { $lastread_child = max(intval(fetch_bbarray_cookie('forum_view', $val)), $vbulletin->userinfo['lastvisit']); } if ($vbulletin->forumcache["$val"]['lastpost'] >= $lastread_child) { $unreadchildforums = 1; break; } } $forumbits = construct_forum_bit($foruminfo['forumid']); // admin tools $show['adminoptions'] = can_moderate($foruminfo['forumid']); $show['post_new_announcement'] = can_moderate($foruminfo['forumid'], 'canannounce'); $show['addmoderator'] = ($permissions['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['cancontrolpanel']); $curforumid = $foruminfo['forumid']; construct_forum_jump(); ///////////////////////////////// if ($foruminfo['cancontainthreads']) { ///////////////////////////////// if ($vbulletin->options['threadmarking'] AND $vbulletin->userinfo['userid']) { $foruminfo['forumread'] = $vbulletin->forumcache["$foruminfo[forumid]"]['forumread']; $lastread = max($foruminfo['forumread'], TIMENOW - ($vbulletin->options['markinglimit'] * 86400)); } else { $bbforumview = intval(fetch_bbarray_cookie('forum_view', $foruminfo['forumid'])); $lastread = max($bbforumview, $vbulletin->userinfo['lastvisit']); } // Inline Moderation $show['movethread'] = (can_moderate($forumid, 'canmanagethreads')) ? true : false; $show['deletethread'] = (can_moderate($forumid, 'candeleteposts') OR can_moderate($forumid, 'canremoveposts')) ? true : false; $show['approvethread'] = (can_moderate($forumid, 'canmoderateposts')) ? true : false; $show['openthread'] = (can_moderate($forumid, 'canopenclose')) ? true : false; $show['inlinemod'] = ($show['movethread'] OR $show['deletethread'] OR $show['approvethread'] OR $show['openthread']) ? true : false; $url = $show['inlinemod'] ? SCRIPTPATH : ''; // fetch popup menu if ($show['popups'] AND $show['inlinemod']) { eval('$threadadmin_imod_menu_thread = "' . fetch_template('threadadmin_imod_menu_thread') . '";'); } else { $threadadmin_imod_thread_menu = ''; } // get announcements $announcebits = ''; if ($show['threadicons'] AND $show['inlinemod']) { $announcecolspan = 6; } else if (!$show['threadicons'] AND !$show['inlinemod']) { $announcecolspan = 4; } else { $announcecolspan = 5; } $mindate = TIMENOW - 2592000; // 30 days $announcements = $db->query_read_slave(" SELECT announcement.announcementid, startdate, title, announcement.views, user.username, user.userid, user.usertitle, user.customtitle, user.usergroupid, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid " . (($vbulletin->userinfo['userid']) ? ", NOT ISNULL(announcementread.announcementid) AS readannounce" : "") . " FROM " . TABLE_PREFIX . "announcement AS announcement " . (($vbulletin->userinfo['userid']) ? "LEFT JOIN " . TABLE_PREFIX . "announcementread AS announcementread ON (announcementread.announcementid = announcement.announcementid AND announcementread.userid = " . $vbulletin->userinfo['userid'] . ")" : "") . " LEFT JOIN " . TABLE_PREFIX . "user AS user ON(user.userid = announcement.userid) WHERE startdate <= " . TIMENOW . " AND enddate >= " . TIMENOW . " AND " . fetch_forum_clause_sql($foruminfo['forumid'], 'forumid') . " ORDER BY startdate DESC, announcement.announcementid DESC " . iif($vbulletin->options['oneannounce'], "LIMIT 1")); while ($announcement = $db->fetch_array($announcements)) { fetch_musername($announcement); $announcement['postdate'] = vbdate($vbulletin->options['dateformat'], $announcement['startdate']); if ($announcement['readannounce'] OR $announcement['startdate'] <= $mindate) { $announcement['statusicon'] = 'old'; } else { $announcement['statusicon'] = 'new'; } $announcement['views'] = vb_number_format($announcement['views']); $announcementidlink = iif(!$vbulletin->options['oneannounce'] , "&a=$announcement[announcementid]"); ($hook = vBulletinHook::fetch_hook('forumdisplay_announceme nt')) ? eval($hook) : false; eval('$announcebits .= "' . fetch_template('threadbit_announcement') . '";'); } // display threads if (!($forumperms & $vbulletin->bf_ugp_forumpermissions['canviewothers'])) { $limitothers = "AND postuserid = " . $vbulletin->userinfo['userid'] . " AND " . $vbulletin->userinfo['userid'] . " <> 0"; } else { $limitothers = ''; } if (can_moderate($foruminfo['forumid'])) { $redirectjoin = "LEFT JOIN " . TABLE_PREFIX . "threadredirect AS threadredirect ON(thread.open = 10 AND thread.threadid = threadredirect.threadid)"; } else { $redirectjoin = ''; } // filter out deletion notices if can't be seen if ($forumperms & $vbulletin->bf_ugp_forumpermissions['canseedelnotice'] OR can_moderate($foruminfo['forumid'])) { $canseedelnotice = true; $deljoin = "LEFT JOIN " . TABLE_PREFIX . "deletionlog AS deletionlog ON(thread.threadid = deletionlog.primaryid AND deletionlog.type = 'thread')"; } else { $canseedelnotice = false; $deljoin = ''; } // remove threads from users on the global ignore list if user is not a moderator if ($Coventry = fetch_coventry('string') AND !can_moderate($foruminfo['forumid'])) { $globalignore = "AND postuserid NOT IN ($Coventry) "; } else { $globalignore = ''; } // look at thread limiting options $stickyids = ''; $stickycount = 0; if ($daysprune != -1) { if ($vbulletin->userinfo['userid'] AND in_coventry($vbulletin->userinfo['userid'], true)) { $tachyjoin = "LEFT JOIN " . TABLE_PREFIX . "tachythreadpost AS tachythreadpost ON " . "(tachythreadpost.threadid = thread.threadid AND tachythreadpost.userid = " . $vbulletin->userinfo['userid'] . ")"; $datecut = " AND (thread.lastpost >= " . (TIMENOW - ($daysprune * 86400)) . " OR tachythreadpost.lastpost >= " . (TIMENOW - ($daysprune * 86400)) . ")"; } else { $datecut = "AND lastpost >= " . (TIMENOW - ($daysprune * 86400)); $tachyjoin = ""; } $show['noposts'] = false; } else { $tachyjoin = ""; $datecut = ""; $show['noposts'] = true; } // complete form fields on page $daysprunesel = iif($daysprune == -1, 'all', $daysprune); $daysprunesel = array($daysprunesel => 'selected="selected"'); $vbulletin->input->clean_array_gpc('r', array( 'sortorder' => TYPE_NOHTML, )); // default sorting methods if (empty($sortfield)) { $sortfield = $foruminfo['defaultsortfield']; } if (empty($vbulletin->GPC['sortorder'])) { $vbulletin->GPC['sortorder'] = $foruminfo['defaultsortorder']; } // look at sorting options: if ($vbulletin->GPC['sortorder'] != 'asc') { $sqlsortorder = 'DESC'; $order = array('desc' => 'selected="selected"'); $vbulletin->GPC['sortorder'] = 'desc'; } else { $sqlsortorder = ''; $order = array('asc' => 'selected="selected"'); } switch ($sortfield) { case 'title': $sqlsortfield = 'thread.title'; break; case 'lastpost': $sqlsortfield = 'lastpost'; break; case 'replycount': case 'views': case 'postusername': $sqlsortfield = $sortfield; break; case 'voteavg': if ($foruminfo['allowratings']) { $sqlsortfield = 'voteavg'; break; } case 'dateline': $sqlsortfield = 'thread.dateline'; break; // else, use last post default: $handled = false; ($hook = vBulletinHook::fetch_hook('forumdisplay_sort')) ? eval($hook) : false; if (!$handled) { $sqlsortfield = 'lastpost'; $sortfield = 'lastpost'; } } $sort = array($sortfield => 'selected="selected"'); if (!can_moderate($forumid, 'canmoderateposts')) { if (!($forumperms & $vbulletin->bf_ugp_forumpermissions['canseedelnotice'])) { $visiblethreads = " AND visible = 1 "; } else { $visiblethreads = " AND visible IN (1,2)"; } } else { $visiblethreads = " AND visible IN (0,1,2)"; } $hook_query_fields = $hook_query_joins = $hook_query_where = ''; ($hook = vBulletinHook::fetch_hook('forumdisplay_query_thre adscount')) ? eval($hook) : false; # Include visible IN (0,1,2) in order to hit upon the 4 column index $threadscount = $db->query_first_slave(" SELECT COUNT(*) AS threads, SUM(IF(thread.lastpost >= $lastread AND open <> 10, 1, 0)) AS newthread $hook_query_fields FROM " . TABLE_PREFIX . "thread AS thread $tachyjoin $hook_query_joins WHERE forumid = $foruminfo[forumid] AND sticky = 0 $visiblethreads $globalignore $limitothers $datecut $hook_query_where "); $totalthreads = $threadscount['threads']; $newthreads = $threadscount['newthread']; // set defaults sanitize_pageresults($totalthreads, $pagenumber, $perpage, 200, $vbulletin->options['maxthreads']); // get number of sticky threads for the first page // on the first page there will be the sticky threads PLUS the $perpage other normal threads // not quite a bug, but a deliberate feature! if ($pagenumber == 1 OR $vbulletin->options['showstickies']) { $stickies = $db->query_read_slave(" SELECT thread.threadid, lastpost, open FROM " . TABLE_PREFIX . "thread AS thread WHERE forumid = $foruminfo[forumid] AND sticky = 1 $visiblethreads $limitothers $globalignore "); while ($thissticky = $db->fetch_array($stickies)) { $stickycount++; if ($thissticky['lastpost'] >= $lastread AND $thissticky['open'] <> 10) { $newthreads++; } $stickyids .= ",$thissticky[threadid]"; } $db->free_result($stickies); unset($thissticky, $stickies); } $limitlower = ($pagenumber - 1) * $perpage; $limitupper = ($pagenumber) * $perpage; if ($limitupper > $totalthreads) { $limitupper = $totalthreads; if ($limitlower > $totalthreads) { $limitlower = ($totalthreads - $perpage) - 1; } } if ($limitlower < 0) { $limitlower = 0; } if ($foruminfo['allowratings']) { $vbulletin->options['showvotes'] = intval($vbulletin->options['showvotes']); $votequery = " IF(votenum >= " . $vbulletin->options['showvotes'] . ", votenum, 0) AS votenum, IF(votenum >= " . $vbulletin->options['showvotes'] . " AND votenum > 0, votetotal / votenum, 0) AS voteavg, "; } else { $votequery = ''; } if ($vbulletin->options['threadpreview'] > 0) { $previewfield = "post.pagetext AS preview,"; $previewjoin = "LEFT JOIN " . TABLE_PREFIX . "post AS post ON(post.postid = thread.firstpostid)"; } else { $previewfield = ''; $previewjoin = ''; } if ($vbulletin->userinfo['userid'] AND in_coventry($vbulletin->userinfo['userid'], true)) { $lastpost_info1 = ",IF(tachythreadpost.userid IS NULL, thread.lastpost, tachythreadpost.lastpost) AS lastpost"; $lastpost_info2 = "IF(tachythreadpost.userid IS NULL, thread.lastpost, tachythreadpost.lastpost) AS lastpost, " . "IF(tachythreadpost.userid IS NULL, thread.lastposter, tachythreadpost.lastposter) AS lastposter, " . "IF(tachythreadpost.userid IS NULL, thread.lastpostid, tachythreadpost.lastpostid) AS lastpostid"; $tachyjoin = "LEFT JOIN " . TABLE_PREFIX . "tachythreadpost AS tachythreadpost ON " . "(tachythreadpost.threadid = thread.threadid AND tachythreadpost.userid = " . $vbulletin->userinfo['userid'] . ')'; } else { $lastpost_info1 = ""; $lastpost_info2 = "thread.lastpost, thread.lastposter, thread.lastpostid"; $tachyjoin = ""; } $hook_query_fields = $hook_query_joins = $hook_query_where = ''; ($hook = vBulletinHook::fetch_hook('forumdisplay_query_thre adid')) ? eval($hook) : false; $getthreadids = $db->query_read_slave(" SELECT " . iif($sortfield == 'voteavg', $votequery) . " thread.threadid $lastpost_info1 $hook_query_fields FROM " . TABLE_PREFIX . "thread AS thread $tachyjoin $hook_query_joins WHERE forumid = $foruminfo[forumid] AND sticky = 0 $visiblethreads $globalignore $limitothers $datecut $hook_query_where ORDER BY sticky DESC, $sqlsortfield $sqlsortorder LIMIT $limitlower, $perpage "); $ids = ''; while ($thread = $db->fetch_array($getthreadids)) { $ids .= ',' . $thread['threadid']; } $ids .= $stickyids; $db->free_result($getthreadids); unset ($thread, $getthreadids); $hook_query_fields = $hook_query_joins = $hook_query_where = ''; ($hook = vBulletinHook::fetch_hook('forumdisplay_query')) ? eval($hook) : false; $threads = $db->query_read_slave(" SELECT $votequery $previewfield thread.threadid, thread.title AS threadtitle, thread.forumid, pollid, open, replycount, postusername, postuserid, thread.iconid AS threadiconid, $lastpost_info2, thread.dateline, IF(views<=replycount, replycount+1, views) AS views, notes, thread.visible, sticky, votetotal, thread.attach, hiddencount, deletedcount " . (($vbulletin->options['threadsubscribed'] AND $vbulletin->userinfo['userid']) ? ", NOT ISNULL(subscribethread.subscribethreadid) AS issubscribed" : "") . " " . ($deljoin ? ", deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason" : "") . " " . (($vbulletin->options['threadmarking'] AND $vbulletin->userinfo['userid']) ? ", threadread.readtime AS threadread" : "") . " " . ($redirectjoin ? ", threadredirect.expires" : "") . " $hook_query_fields FROM " . TABLE_PREFIX . "thread AS thread $deljoin " . (($vbulletin->options['threadsubscribed'] AND $vbulletin->userinfo['userid']) ? " LEFT JOIN " . TABLE_PREFIX . "subscribethread AS subscribethread ON(subscribethread.threadid = thread.threadid AND subscribethread.userid = " . $vbulletin->userinfo['userid'] . " AND canview = 1)" : "") . " " . (($vbulletin->options['threadmarking'] AND $vbulletin->userinfo['userid']) ? " LEFT JOIN " . TABLE_PREFIX . "threadread AS threadread ON (threadread.threadid = thread.threadid AND threadread.userid = " . $vbulletin->userinfo['userid'] . ")" : "") . " $previewjoin $tachyjoin $redirectjoin $hook_query_joins WHERE thread.threadid IN (0$ids) $hook_query_where ORDER BY sticky DESC, $sqlsortfield $sqlsortorder "); unset($limitothers, $delthreadlimit, $deljoin, $datecut, $votequery, $sqlsortfield, $sqlsortorder, $threadids); // Get Dot Threads $dotthreads = fetch_dot_threads_array($ids); if ($vbulletin->options['showdots'] AND $vbulletin->userinfo['userid']) { $show['dotthreads'] = true; } else { $show['dotthreads'] = false; } unset($ids); // prepare sort things for column header row: $sorturl = 'forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$forumid&daysprune=$daysprune"; $oppositesort = iif($vbulletin->GPC['sortorder'] == 'asc', 'desc', 'asc'); if ($totalthreads > 0 OR $stickyids) { if ($totalthreads > 0) { $limitlower++; } // check to see if there are any threads to display. If there are, do so, otherwise, show message if ($vbulletin->options['threadpreview'] > 0) { // Get Buddy List $buddy = array(); if (trim($vbulletin->userinfo['buddylist'])) { $buddylist = preg_split('/( )+/', trim($vbulletin->userinfo['buddylist']), -1, PREG_SPLIT_NO_EMPTY); foreach ($buddylist AS $buddyuserid) { $buddy["$buddyuserid"] = 1; } } DEVDEBUG('buddies: ' . implode(', ', array_keys($buddy))); // Get Ignore Users $ignore = array(); if (trim($vbulletin->userinfo['ignorelist'])) { $ignorelist = preg_split('/( )+/', trim($vbulletin->userinfo['ignorelist']), -1, PREG_SPLIT_NO_EMPTY); foreach ($ignorelist AS $ignoreuserid) { if (!$buddy["$ignoreuserid"]) { $ignore["$ignoreuserid"] = 1; } } } DEVDEBUG('ignored users: ' . implode(', ', array_keys($ignore))); } $show['threads'] = true; $threadbits = ''; $threadbits_sticky = ''; $counter = 0; $toread = 0; while ($thread = $db->fetch_array($threads)) { // AND $counter++ < $perpage) // build thread data $thread = process_thread_array($thread, $lastread, $foruminfo['allowicons']); $realthreadid = $thread['realthreadid']; if ($thread['sticky']) { $threadbit =& $threadbits_sticky; } else { $threadbit =& $threadbits; } ($hook = vBulletinHook::fetch_hook('threadbit_display')) ? eval($hook) : false; // Soft Deleted Thread if ($thread['visible'] == 2) { $thread['deletedcount']++; $show['threadtitle'] = (can_moderate($forumid) OR ($vbulletin->userinfo['userid'] != 0 AND $vbulletin->userinfo['userid'] == $thread['postuserid'])) ? true : false; $show['deletereason'] = (!empty($thread['del_reason'])) ? true : false; $show['viewthread'] = (can_moderate($forumid)) ? true : false; $show['managethread'] = (can_moderate($forumid, 'candeleteposts') OR can_moderate($forumid, 'canremoveposts')) ? true : false; $show['moderated'] = ($thread['hiddencount'] > 0 AND can_moderate($forumid, 'canmoderateposts')) ? true : false; $show['deletedthread'] = $canseedelnotice; eval('$threadbit .= "' . fetch_template('threadbit_deleted') . '";'); } else { if (!$thread['visible']) { $thread['hiddencount']++; } $show['moderated'] = ($thread['hiddencount'] > 0 AND can_moderate($forumid, 'canmoderateposts')) ? true : false; $show['deletedthread'] = ($thread['deletedcount'] > 0 AND $canseedelnotice) ? true : false; //############################Gallery-Modification########################### if ($gallery == true) { eval('$threadbit .= "' . fetch_template('gallery_threadbit') . '";'); } else { eval('$threadbit .= "' . fetch_template('threadbit') . '";'); } //############################End Gallery-Modification######################## } } $db->free_result($threads); unset($thread, $counter); $pagenav = construct_page_nav($pagenumber, $perpage, $totalthreads, 'forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$forumid", "" . (!empty($vbulletin->GPC['perpage']) ? "&pp=$perpage" : "") . (!empty($vbulletin->GPC['sortfield']) ? "&sort=$sortfield" : "") . (!empty($vbulletin->GPC['sortorder']) ? "&order=" . $vbulletin->GPC['sortorder'] : "") . (!empty($vbulletin->GPC['daysprune']) ? "&daysprune=$daysprune" : "") ); eval('$sortarrow[' . $sortfield . '] = "' . fetch_template('forumdisplay_sortarrow') . '";'); } unset($threads, $dotthreads); // get colspan for bottom bar $foruminfo['bottomcolspan'] = 6; if ($foruminfo['allowicons']) { $foruminfo['bottomcolspan']++; } if ($foruminfo['allowratings']) { $foruminfo['bottomcolspan']++; } $show['threadslist'] = true; ///////////////////////////////// } // end forum can contain threads else { $show['threadslist'] = false; } ///////////////////////////////// if ($newthreads < 1 AND $unreadchildforums < 1) { mark_forum_read($foruminfo, $vbulletin->userinfo['userid'], TIMENOW); } eval('$forumhome_markread_script = "' . fetch_template('forumhome_markread_script') . '";'); construct_forum_rules($foruminfo, $forumperms); $show['forumsearch'] = iif (!$show['search_engine'] AND $forumperms & $vbulletin->bf_ugp_forumpermissions['cansearch'] AND $vbulletin->options['enablesearches'], true, false); $show['forumslist'] = iif ($forumshown, true, false); $show['stickies'] = iif ($threadbits_sticky != '', true, false); ($hook = vBulletinHook::fetch_hook('forumdisplay_complete') ) ? eval($hook) : false; eval('print_output("' . fetch_template('FORUMDISPLAY') . '");'); /*================================================= =====================*\ || ################################################## ################## || # Downloaded: 10.00, Wed Oct 4th 2006 || # CVS: $RCSfile: forumdisplay.php,v $ - $Revision: 1.320 $ || ################################################## ################## \*================================================ ======================*/ ?>
installed vb: 3.6.2
Reply With Quote
  #136  
Old 11-07-2006, 08:46 PM
FARMER FARMER is offline
 
Join Date: Jan 2005
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i can not view the image in thumbnail

please help me!!!
Reply With Quote
  #137  
Old 11-07-2006, 09:32 PM
hgb hgb is offline
 
Join Date: Nov 2005
Posts: 64
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by FMCS
After the mod was installed we noticed that the forum became horribly slow so I changed the 'gallery_images_forumhome' bit to the following:

PHP Code:
// #################### Latest Gallery-Additions #######################
// fetch the permissions for each forum
// global $vbulletin;

if (isset($forumid) == false)
{

$gal_num_rows $vbulletin->options['gal_num_rows'];

if (
$vbulletin->options['show_latest']==1)
{

// fetch latest pics
$thumbs $db->query_read("SELECT gallery, threadid, firstpostid, "TABLE_PREFIX "thread.title, attachmentid, "TABLE_PREFIX "attachment.dateline FROM "TABLE_PREFIX "attachment, "TABLE_PREFIX "thread, "TABLE_PREFIX "forum
WHERE gallery='1' AND "
TABLE_PREFIX "thread.forumid="TABLE_PREFIX "forum.forumid AND "TABLE_PREFIX "thread.firstpostid = "TABLE_PREFIX "attachment.postid AND "TABLE_PREFIX "attachment.dateline < " TIME() ."
GROUP BY "
.TABLE_PREFIX ."thread.threadid
ORDER BY "
TABLE_PREFIX "attachment.attachmentid DESC LIMIT $gal_num_rows");



while (
$gallery $db->fetch_array($thumbs))
{
eval(
'$latestgallery .= "' fetch_template('gallery_latestpictures') . '";');
}
}

// #################### Random Gallery-Additions #######################
// fetch random pics

if ($vbulletin->options['show_random']==1)
{
$random_thumbs $db->query_read("SELECT gallery, threadid, firstpostid, "TABLE_PREFIX "thread.title, attachmentid, "TABLE_PREFIX "attachment.dateline FROM "TABLE_PREFIX "attachment, "TABLE_PREFIX "thread, "TABLE_PREFIX "forum
WHERE gallery='1'AND "
TABLE_PREFIX "thread.featured!='1' AND  "TABLE_PREFIX "thread.forumid="TABLE_PREFIX "forum.forumid AND "TABLE_PREFIX "thread.firstpostid = "TABLE_PREFIX "attachment.postid AND "TABLE_PREFIX "attachment.dateline < " TIME() ." ORDER BY RAND() LIMIT $gal_num_rows");

while (
$rand_gallery $db->fetch_array($random_thumbs))
{
eval(
'$random_gallery .= "' fetch_template('gallery_randompictures') . '";');
}
}


the added bits are 'if (isset($forumid) == false)' so the thumbs aren't attempted to load on other pages than forumhome. (got a big speed-increase on the forums after doing this)

also added 'if ($vbulletin->options['show_random']==1)' and 'if ($vbulletin->options['show_latest']==1)' bits to get rid of redundant sqlqueries.

Hope this is of any use to people
been searching for a couple day and have no idea where this... littl help pointing me there please
Quote:
gallery_images_forumhome
this is not a template so kinda lost :cross-eyed:


the gallery is up and runs fine but slows down my site as well and would like to fix this...

thx
Reply With Quote
  #138  
Old 11-08-2006, 07:31 AM
Harald_T Harald_T is offline
 
Join Date: Aug 2003
Location: Kleve, Germany
Posts: 531
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

@Axl-Rose: This seems to be an php/apache-problem and shouldn't be a problem of the hack.

@Farmer: Please check, if your vb creates thumbnails for attachments. And be sure, that you didn't used linked pictures.
Reply With Quote
  #139  
Old 11-08-2006, 10:57 AM
ahmed-samara ahmed-samara is offline
 
Join Date: Dec 2004
Location: egypt
Posts: 178
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

owa >>>> thanks ....................
Reply With Quote
  #140  
Old 11-11-2006, 12:54 PM
FMCS's Avatar
FMCS FMCS is offline
 
Join Date: Oct 2006
Location: Sweden
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Harald_T
Thanks. You're right, i forgot to add the options for random and latest thumbs. And thanks for the hint regarding the forumid.
No problems

Quote:
Originally Posted by hgb
been searching for a couple day and have no idea where this... littl help pointing me there please

this is not a template so kinda lost :cross-eyed:


the gallery is up and runs fine but slows down my site as well and would like to fix this...

thx
I guess I was a bit vague on the location in the original post but here goes:
Open "Plugins & Products" in the left navigation in admincp
Then go to "Plugin manager" and you should find the template there.

The title is "gallery_images_forumhome" and the hook is "global_start", hope that you find your way
Reply With Quote
  #141  
Old 11-11-2006, 07:59 PM
Kalina's Avatar
Kalina Kalina is offline
 
Join Date: Mar 2005
Location: Canada
Posts: 99
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the great plugin.

I am having a problem others have had, but it's not been addressed.

The image is missing above this sentence:
"Click on the picture, to show it in original-size"

Anything I can do to fix this?

EDIT: Just discovered it only happens to small images, any way around this?
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 01:08 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.08655 seconds
  • Memory Usage 2,403KB
  • Queries Executed 25 (?)
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
  • (1)bbcode_php
  • (7)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (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_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • 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
  • 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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete