vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3 Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=187)
-   -   How to create your own vBulletin-powered page! (uses vB templates) (https://vborg.vbsupport.ru/showthread.php?t=62164)

welo 04-30-2004 05:37 AM

I've been playing with this and it's a pretty neat thing :). Cheers for putting this info together. I do a quick question I'm hoping someone can point me in the right direction on, however.

I'm working on being able to being able to display a list of agreements all from one primary page using the do= thing. So I have agreement.php setup like is described in the tutorial and instead of

Code:

eval('print_output("' . fetch_template('AGREEMENT') . '");');
...at the end of the file, I have instead added something like:

Code:

// Grab template for standard agreement
if ($_REQUEST['do'] == 'standard')
{
    eval('print_output("' . fetch_template('agree_standard') . '");');
}

// Or grab template for special agreement
elseif ($_REQUEST['do'] == 'special')
{
    eval('print_output("' . fetch_template('agree_special') . '");');
}

// Template for main agreement page if no 'do' statement
else
{
        eval('print_output("' . fetch_template('AGREEMENT') . '");');
}

This works fine except the templates for AGREEMENT, agree_standard, and agree_special all basically contain the same code except for the body of the agreement itself. Meaning, it sounds to me like each template contains a lot of redundant code, e.g.

Code:

$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]</title>
$headinclude

etc.

How do I set it up so the AGREEMENT template contains this primary structure while child templates like agree_standard aren't forced to repeat it within their own structure, and just contain the HTML I need for that page's 'do' statement?

sross 04-30-2004 11:17 AM

I'm on the verge of a nervous breakdown here! lol

I have a nice page working, but I need the "what's going on?" info at the bottom. I've been trying to do this for 4 hours now. I think I've tried everything I'm capable of with no luck. I took the 'What's going on?' box and added it to the template, I then took the what's going on php info and added that to my php file for this hack. I got a few items to work but not all of them. Can someone please help me do this? Thanks

SVTBlackLight01 04-30-2004 05:30 PM

welo,

Put the HTML you need for that page's 'do' statement in avariable like this:

PHP Code:

if ($_REQUEST['do'] == 'agree_standard')
{
    eval(
'$whatever = "' fetch_template('agree_standard') . '";');
    eval(
'print_output("' fetch_template('AGREEMENT') . '");');
}
if (
$_REQUEST['do'] == 'agree_special')
{
    eval(
'$whatever = "' fetch_template('agree_special') . '";');
    eval(
'print_output("' fetch_template('AGREEMENT') . '");');
}
else
{
    eval(
'$whatever = "' fetch_template('default_do_template') . '";');
    eval(
'print_output("' fetch_template('AGREEMENT') . '");');


Then add $whatever in your AGREEMENT template where you want the 'do' stuff to appear.

welo 04-30-2004 05:51 PM

That's exactly what I was trying to do. Thanks man. I've been switching off between working on this and writing all kinds of legal crap for the actual agreements, and just couldn't see it. Sure makes sense now :). Thanks again.

sross 04-30-2004 08:27 PM

I'll donate $15 to someone's paypal account if they can help me with my issue in post #163 , I'm desperate!

welo 04-30-2004 09:16 PM

Quote:

Originally Posted by sross
I need the "what's going on?" info at the bottom.

I don't think anyone knows what you mean. I know I sure don't have a "What's going on" something-or-other anywhere on my VB.

[edit]Okay, I see what you mean. Sorry about that. I'm running into the same issue with trying to add in "Currently Active Users Viewing..."[/edit]

Mr. HillBilly 04-30-2004 09:42 PM

Here guys, try this.

Edit the lines at the top of the file so they look like this, be sure to include your own changes if you had made any.

PHP Code:

  // ################### PRE-CACHE TEMPLATES AND DATA ######################
  // get special phrase groups
  
$phrasegroups = array('holiday');
  
  
// get special data templates from the datastore
  
$specialtemplates = array(
      
'userstats',
      
'birthdaycache',
      
'maxloggedin',
      
'iconcache',
      
'eventcache',
      
'mailqueue'
  
);
  
  
// pre-cache templates used by all actions
  
$globaltemplates = array(
      
'FORUMHOME',
      
'forumhome_event',
      
'forumhome_lastpostby',
      
'forumhome_loggedinuser',
  );
  
  
// pre-cache templates used by specific actions
  
$actiontemplates = array(
  
  );
  
  
// ######################### REQUIRE BACK-END ############################
  
require_once('./global.php');
  require_once(
'./includes/functions_bigthree.php'); 

Add the lines below to your script near the bottom.

PHP Code:

  // ### TODAY'S BIRTHDAYS #################################################
  
if ($vboptions['showbirthdays'])
  {
      
$birthdaystore unserialize($datastore['birthdaycache']);
     if (!
is_array($birthdaystore) OR ($today != $birthdaystore['day1'] AND $today != $birthdaystore['day2']))
      {
          
// Need to update!
          
require_once('./includes/functions_databuild.php');
          
$birthdaystore build_birthdays();
          
DEVDEBUG('Updated Birthdays');
      }
      switch(
$today)
      {
          case 
$birthdaystore['day1']:
              
$birthdays $birthdaystore['users1'];
              break;
  
          case 
$birthdaystore['day2'];
              
$birthdays $birthdaystore['users2'];
              break;
      }
      
// memory saving
      
unset($birthdaystore);
  
      
$show['birthdays'] = iif ($birthdaystruefalse);
  }
  else
  {
      
$show['birthdays'] = false;
  }
  
  
// ### TODAY'S EVENTS #################################################
  
if ($vboptions['showevents'])
  {
      require_once(
'./includes/functions_calendar.php');
  
      
$future gmdate('n-j-Y' TIMENOW 43200 + (86400 * ($vboptions['showevents'] - 1)));
      
$eventstore unserialize($datastore['eventcache']);
  
      if (!
is_array($eventstore) OR $future != $eventstore['date'])
      {
          
// Need to update!
          
require_once('./includes/functions_databuild.php');
          
$eventstore build_events();
          
DEVDEBUG('Updated Events');
      }
  
      unset(
$eventstore['date']);
      
$events = array();
      
$eventcount 0;
      foreach (
$eventstore AS $eventid => $eventinfo)
      {
         
$offset iif (!$eventinfo['utc'], $bbuserinfo['tzoffset'], $bbuserinfo['timezoneoffset']);
         
$eventinfo['dateline_from_user'] = $eventinfo['dateline_from'] + $offset 3600;
          
$eventinfo['dateline_to_user'] = $eventinfo['dateline_to'] + $offset 3600;
          
$gettime TIMENOW $vboptions['hourdiff'];
          
$iterations 0;
  
         if (
$bbuserinfo['calendarpermissions']["$eventinfo[calendarid]"] & CANVIEWCALENDAR OR $eventinfo['holidayid'])
          {
             if (
$eventinfo['userid'] == $bbuserinfo['userid'] OR $bbuserinfo['calendarpermissions']["$eventinfo[calendarid]"] & CANVIEWOTHERSEVENT OR $eventinfo['holidayid'])
              {
                 while (
$iterations $vboptions['showevents'])
                  {
                     
$todaydate getdate($gettime);
                  if (
cache_event_info($eventinfo$todaydate['mon'], $todaydate['mday'], $todaydate['year']))
                      {
                      if (!
$vboptions['showeventtype'])
                         {
                       
$events["$eventinfo[eventid]"][] = $gettime;
                         }
                         else
                         {
                       
$events["$gettime"][] = $eventinfo['eventid'];
                         }
                         
$eventcount++;
                      }
                     
$iterations++;
                     
$gettime += 86400;
                  }
              }
          }
      }
  
      if (!empty(
$events))
      {
          
ksort($eventsSORT_NUMERIC);
          foreach(
$events AS $index => $value)
          {
              
$pastevent 0;
              
$pastcount 0;
              unset(
$eventdates$comma$daysevents);
              if (!
$vboptions['showeventtype'])
             {    
// Group by Event // $index = $eventid
                  
unset($day);
                 foreach(
$value AS $key => $dateline)
                  {
                  if ((
$dateline 86400) == $pastevent AND !$eventinfo['holidayid'])
                      {
                      
$pastevent $dateline;
                         
$pastcount++;
                         continue;
                      }
                      else
                      {
                      if (
$pastcount)
                         {
                       
$eventdates construct_phrase($vbphrase['event_x_to_y'], $eventdatesvbdate($vboptions['dateformat'], $pasteventfalsetruefalse));
                         }
                      
$pastcount 0;
                      
$pastevent $dateline;
                      }
                     if (!
$day)
                      {
                      
$day vbdate('Y-n-j'$datelinefalsefalse);
                      }
                  
$eventdates .= $comma vbdate($vboptions['dateformat'], $datelinefalsetruefalse);
                     
$comma ', ';
                  
$eventinfo $eventstore["$index"];
                  }
                  if (
$pastcount)
                  {
                  
$eventdates construct_phrase($vbphrase['event_x_to_y'], $eventdatesvbdate($vboptions['dateformat'], $pasteventfalsetruefalse));
                  }
  
  
  
                  if (
$eventinfo['holidayid'])
                  {
                  
$callink "<a href=\"calendar.php?$session[sessionurl]do=getinfo&amp;day=$day\">" $vbphrase['holiday_title_' $eventinfo['varname']] . "</a>";
                  }
                  else
                  {
                  
$callink "<a href=\"calendar.php?$session[sessionurl]do=getinfo&amp;day=$day&amp;e=$eventinfo[eventid]&amp;c=$eventinfo[calendarid]\">$eventinfo[title]</a>";
                  }
              }
              else
              {    
// Group by Date
              
$eventdate vbdate($vboptions['dateformat'], $indexfalsetruefalse);
                 
$day vbdate('Y-n-j'$indexfalsefalse);
                 foreach(
$value AS $key => $eventid)
                  {
                  
$eventinfo $eventstore["$eventid"];
                     if (
$eventinfo['holidayid'])
                      {
                      
$daysevents .= $comma "<a href=\"calendar.php?$session[sessionurl]do=getinfo&amp;day=$day\">" $vbphrase['holiday_title_' $eventinfo['varname']] . "</a>";
                      }
                      else
                      {
                      
$daysevents .= $comma "<a href=\"calendar.php?$session[sessionurl]do=getinfo&amp;day=$day&amp;e=$eventinfo[eventid]&amp;c=$eventinfo[calendarid]\">$eventinfo[title]</a>";
                      }
                     
$comma ', ';
                  }
              }
              eval(
'$upcomingevents .= "' fetch_template('forumhome_event') . '";');
          }
          
// memory saving
          
unset($events$eventstore);
      }
      
$show['upcomingevents'] = iif ($upcomingeventstruefalse);
      
$show['todaysevents'] = iif ($vboptions['showevents'] == 1truefalse);
  }
  else
  {
      
$show['upcomingevents'] = false;
  }
  
  
// ### LOGGED IN USERS #################################################
  
$activeusers '';
  if (
$vboptions['displayloggedin'])
  {
      
$datecut TIMENOW $vboptions['cookietimeout'];
      
$numbervisible 0;
      
$numberregistered 0;
      
$numberguest 0;
  
      
$forumusers $DB_site->query("
          SELECT
             user.username, (user.options & 
$_USEROPTIONS[invisible]) AS invisible, user.usergroupid,
              session.userid, session.inforum, session.lastactivity,
              IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
          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($permissions['genericpermissions'] & CANSEEHIDDEN'invisible ASC, ') . "username ASC, lastactivity DESC
      "
);
  
      if (
$bbuserinfo['userid'])
      {
          
// fakes the user being online for an initial page view of index.php
         
$bbuserinfo['joingroupid'] = iif($bbuserinfo['displaygroupid'], $bbuserinfo['displaygroupid'], $bbuserinfo['usergroupid']);
          
$userinfos = array
          (
              
$bbuserinfo['userid'] => array
              (
                 
'userid' => $bbuserinfo['userid'],
                 
'username' => $bbuserinfo['username'],
                 
'invisible' => $bbuserinfo['invisible'],
                  
'inforum' => 0,
                  
'lastactivity' => TIMENOW,
              
'musername' => fetch_musername($bbuserinfo'joingroupid')
              )
          );
          
$numberregistered 1;
          
$numbervisible 1;
          
fetch_online_status($userinfos["$bbuserinfo[userid]"]);
          
$loggedin $userinfos["$bbuserinfo[userid]"];
          eval(
'$activeusers = ", ' fetch_template('forumhome_loggedinuser') . '";');
      }
      else
      {
          
$userinfos = array();
      }
      
$inforum = array();
  
      while (
$loggedin $DB_site->fetch_array($forumusers))
      {
          
$userid $loggedin['userid'];
          if (!
$userid)
          {    
// Guest
              
$numberguest++;
              
$inforum["$loggedin[inforum]"]++;
          }
         else if (empty(
$userinfos["$userid"]['lastactivity']) OR ($userinfos["$userid"]['lastactivity'] < $loggedin['lastactivity']))
          {
              
$userinfos["$userid"] = $loggedin;
              
$numberregistered++;
              if (
$userid != $bbuserinfo['userid'])
              {
                 
$inforum["$loggedin[inforum]"]++;
              }
              
$loggedin['musername'] = fetch_musername($loggedin);
  
              if (
fetch_online_status($loggedin))
              {
                  
$numbervisible++;
              eval(
'$activeusers .= ", ' fetch_template('forumhome_loggedinuser') . '";');
              }
          }
      }
  
      
// memory saving
      
unset($userinfos$loggedin);
  
      
$activeusers substr($activeusers 2); // get rid of initial comma
  
      
$DB_site->free_result($loggedins);
  
      
$totalonline $numberregistered $numberguest;
      
$numberinvisible $numberregistered $numbervisible;
  
      
// ### MAX LOGGEDIN USERS ################################
      
$maxusers unserialize($datastore['maxloggedin']);
      if (
intval($maxusers['maxonline']) <= $totalonline)
      {
          
$maxusers['maxonline'] = $totalonline;
          
$maxusers['maxonlinedate'] = TIMENOW;
          
build_datastore('maxloggedin'serialize($maxusers));
      }
  
      
$recordusers $maxusers['maxonline'];
      
$recorddate vbdate($vboptions['dateformat'], $maxusers['maxonlinedate'], true);
      
$recordtime vbdate($vboptions['timeformat'], $maxusers['maxonlinedate']);
  
      
$show['loggedinusers'] = true;
  }
  else
  {
      
$show['loggedinusers'] = false;
  }

// ### BOARD STATISTICS #################################################

// get total threads & posts from the forumcache
$totalthreads 0;
$totalposts 0;
if (
is_array($forumcache))
{
    foreach (
$forumcache AS $forum)
    {
        
$totalthreads += $forum['threadcount'];
        
$totalposts += $forum['replycount'];
    }
}
$totalthreads vb_number_format($totalthreads);
$totalposts vb_number_format($totalposts);

// get total members and newest member from template
$userstats unserialize($datastore['userstats']);
$numbermembers vb_number_format($userstats['numbermembers']);
$newusername $userstats['newusername'];
$newuserid $userstats['newuserid'];

// ### ALL DONE! SPIT OUT THE HTML AND LET'S GET OUTA HERE... ### 

Save your file and upload it.

Now for the template edits,

place the following code anywhere you want the Whos online to show.

HTML Code:

  <!-- what's going on box -->
 <table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
  <thead>
      <tr>
          <td class="tcat" colspan="2">$vbphrase[whats_going_on]</td>
      </tr>
  </thead>
  <if condition="$show['loggedinusers']">
  <!-- logged-in users -->
  <tbody>
      <tr>
          <td class="thead" colspan="2">
 <a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_activeusers')"><img id="collapseimg_forumhome_activeusers" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_activeusers].gif" alt="" border="0" /></a>
 <a href="online.php?$session[sessionurl]">$vbphrase[currently_active_users]</a>: $totalonline (<phrase 1="$numberregistered" 2="$numberguest">$vbphrase[x_members_and_y_guests]</phrase>)
          </td>
      </tr>
  </tbody>
  <tbody id="collapseobj_forumhome_activeusers" style="$vbcollapse[collapseobj_forumhome_activeusers]">
      <tr>
 <td class="alt2"><a href="online.php?$session[sessionurl]"><img src="$stylevar[imgdir_misc]/whos_online.gif" alt="$vbphrase[view_whos_online]" border="0" /></a></td>
          <td class="alt1" width="100%">
              <div class="smallfont">
 <div style="white-space: nowrap"><phrase 1="$recordusers" 2="$recorddate" 3="$recordtime">$vbphrase[most_users_ever_online_was_x_y_at_z]</phrase></div>
                  <div>$activeusers</div>
              </div>
          </td>
      </tr>
  </tbody>
  <!-- end logged-in users -->
  </if>
  <tbody>
      <tr>
          <td class="thead" colspan="2">
 <a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_stats')"><img id="collapseimg_forumhome_stats" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_stats].gif" alt="" border="0" /></a>
              <phrase 1="$vboptions[bbtitle]">$vbphrase[x_statistics]</phrase>
          </td>
      </tr>
  </tbody>
  <tbody id="collapseobj_forumhome_stats" style="$vbcollapse[collapseobj_forumhome_stats]">
      <tr>
 <td class="alt2"><img src="$stylevar[imgdir_misc]/stats.gif" alt="<phrase 1="$vboptions[bbtitle]">$vbphrase[x_statistics]</phrase>" border="0" /></td>
          <td class="alt1" width="100%">
          <div class="smallfont">
 <div>$vbphrase[threads]: $totalthreads, $vbphrase[posts]: $totalposts, $vbphrase[members]: $numbermembers</div>
 <div><phrase 1="member.php?$session[sessionurl]u=$newuserid" 2="$newusername">$vbphrase[welcome_to_our_newest_member_x]</phrase></div>
          </div>
          </td>
      </tr>
  </tbody>
  <if condition="$show['birthdays']">
  <!-- today's birthdays -->
  <tbody>
      <tr>
          <td class="thead" colspan="2">
 <a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_birthdays')"><img id="collapseimg_forumhome_birthdays" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_birthdays].gif" alt="" border="0" /></a>
              $vbphrase[todays_birthdays]
          </td>
      </tr>
  </tbody>
  <tbody id="collapseobj_forumhome_birthdays" style="$vbcollapse[collapseobj_forumhome_birthdays]">
      <tr>
 <td class="alt2"><a href="calendar.php?$session[sessionurl]do=getday&amp;day=$today&amp;sb=1"><img src="$stylevar[imgdir_misc]/birthday.gif" alt="$vbphrase[view_birthdays]" border="0" /></a></td>
          <td class="alt1" width="100%"><div class="smallfont">$birthdays</div></td>
      </tr>
  </tbody>
  <!-- end today's birthdays -->
  </if>
  <if condition="$show['upcomingevents']">
  <tbody>
      <tr>
          <td class="thead" colspan="2">
 <a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_events')"><img id="collapseimg_forumhome_events" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_events].gif" alt="" border="0" /></a>
 <if condition="$show['todaysevents']">$vbphrase[todays_events]<else /><phrase 1="$vboptions[showevents]">$vbphrase[upcoming_events_for_the_next_x_days]</phrase></if>
          </td>
      </tr>
  </tbody>
  <tbody id="collapseobj_forumhome_events" style="$vbcollapse[collapseobj_forumhome_events]">
      <tr>
 <td class="alt2"><a href="calendar.php?$session[sessionurl]"><img src="$stylevar[imgdir_misc]/calendar.gif" alt="$vbphrase[calendar]" border="0" /></a></td>
          <td class="alt1" width="100%"><div class="smallfont">$upcomingevents</div></td>
      </tr>
  </tbody>
  </if>
  </table>
  <br />
  <!-- end what's going on box -->


sross 05-01-2004 12:28 AM

1 Attachment(s)
Mr. Hillbilly, thanks for the help so far! Still not working though. I'm not sure what I'm doing wrong. I have attachment my php code and template code. The following code shows the what's going on box as:

APUG Forums Statistics
Threads: , Posts: , Members:
Welcome to our newest member,

It only shows a few stats and they are blank. Hope you can help, thanks again!

Mr. HillBilly 05-01-2004 03:48 AM

1 Attachment(s)
Forgot to add a couple of lines, this one should work.

sross 05-01-2004 04:13 AM

Quote:

Originally Posted by Mr. HillBilly
Forgot to add a couple of lines, this one should work.

updated the new php file, cleared cache, went back to the page and still no change, looks the same :( seems like it should work, weird

Synicide 05-01-2004 06:38 PM

Well, here's a question for you guys. :D
I'd be forever grateful if somebody could get this to even semi-work.

I've chosen to use this method of creating pages since the thought of customizing a portal to get rid of all the blocks is beyond me. Pretty much all I need to do what a lot of the portals do, display threads from a "news" forum with simple comment links.

That's it, I just need to know how to get the title, date, author and comment links on there and I'd be all good - from there I can customize the template normally. ^_^

Thank you for all your help in advance, and I really hope somebody can solve this for me.

BTW: Does anybody find it odd that Greg hasn't visited this thread in a while?

caislander 05-02-2004 03:01 AM

Ok I got the extra page to display, thank all of you for the information :) I have this code in my template
Code:

$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]</title>
$headinclude
</head>
<body>
$header

$navbar

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>
        <td class="tcat"><h2>City Ordinances (the Rules)</h2>
This forum is a great place to post questions,
answers, or have a productive discussion on web
development. While we may delete anything we
find inappropriate, it is rare that such a post is
made as the members here have been very helpful
to each other. The following are guidelines to follow
when posting a message or reply:</td>
</tr>
<tr>
<td class="alt1">$vbphrase[insult_flame]</td>
</tr>
<tr>
<td class="alt2">$vbphrase[no_spam]</td>
</tr>
<tr>
<td class="alt1">$vbphrase[illegal_material]</td>
</tr>
<tr>
<td class="alt2">$vbphrase[cross_posting]</td>
</tr>
<tr>
<td class="alt1">$vbphrase[homework]</td>
</tr>
<tr>
<td class="alt2">$vbphrase[flooding]</td>
</tr>
<tr>
<td class="alt1">$vbphrase[all_caps]</td>
</tr>
<tr>
<td class="alt2">$vbphrase[no_politics]</td>
</tr>
<td class="alt1">$vbphrase[mod_time]</td>
</tr>
<tr>
<td class="alt2">$vbphrase[read_faq_first]</td>
</tr>

</table>

$footer
</body>
</html>

the part that is hard coded into it displays just fine but the $vbphrases don't display at all, any ideas what i might have done wrong ?

Thanks for any assistance

Synicide 05-02-2004 03:35 AM

So can anybody help me with my little problem? :]

Synicide 05-03-2004 08:35 PM

I apologize for posting a 3rd time, but is there nobody that can help with this? It's been 2 days! o_O

SVTBlackLight01 05-03-2004 09:25 PM

Quote:

Originally Posted by Synicide
I apologize for posting a 3rd time, but is there nobody that can help with this? It's been 2 days! o_O


IMHO, it would be easier to modify one of the portals to do this than to add everything to this hack to accomplish what you need.

sross 05-03-2004 10:37 PM

i fixed my issue a few lines up, eval stuff was in the wrong place. mine works like I want now.

Synicide 05-04-2004 01:57 AM

Quote:

Originally Posted by SVTBlackLight01
IMHO, it would be easier to modify one of the portals to do this than to add everything to this hack to accomplish what you need.

Hmmm... just add it to the PHP... I guess I could take a look at that, Thanks SVT. :]

SVTBlackLight01 05-04-2004 02:04 AM

Take a look at vBadvanced. You could propably get by with a simple template mod once you get it installed (unless you are already running one instance of it). All the blocks are contained in the index template, so you could either remove them from the template or comment them out.

Bro_Joey_Gowdy 05-08-2004 07:48 PM

I have a statement then one question:

Ive placed this in the websites root directory as the main page of my site:
http://www.joeygowdy.com

My forums are in a different directory:
http://www.joeygowdy.com/forum

Ive already made all the required changes, now for the question:
If I ever choose the have the vbboard switched offline for updates, will the main site also be unavailable due to the fact that Im useing vbtemplates to power my main site?

Kwak 05-09-2004 03:58 PM

Is there a way that you can add new pages on your index directory rather than the forum directory?

Meaning, the new template works only if the file is added within the forum directory but would like to know if you can make these page work outside of a forum page.


BTW: Great hack! Clicks Install.

Edit: Sorry, I just realized you can not ask questions in here. :o

SVTBlackLight01 05-09-2004 05:08 PM

Quote:

Originally Posted by iKwak
Is there a way that you can add new pages on your index directory rather than the forum directory?

This should get you started.

https://vborg.vbsupport.ru/showpost....2&postcount=23

All your menu links will need to be absolute instead of relative too.

cinq 05-10-2004 01:20 PM

I used your code :

PHP Code:

chdir('/usr/home/mydomain/www/forum');
require(
'./global.php'); 

But it still does not function properly, i am still getting js errors and images are not showing.
I have this .php file outside my forum directory too.

any help ?

caislander 05-10-2004 04:41 PM

Anybody,

I can't get phrases created via the phrase manager to show up? Any ideas what i might have done wrong ? here is the info in my template if it helps :)

As always Thanks for any assistance :0

airlinebuzz 05-20-2004 12:42 AM

I am trying to make a rather large template (950 lines of code), for a page using this "hack" and when I try to save and reload the template in the Control Panel it won't refresh like it saved and the changes don't load when I go to the page. Is there a maximum template size limit that I am bumping into?

airlinebuzz 05-23-2004 02:45 AM

bump

Skyline_GT 06-02-2004 12:29 AM

great:)
love it

SVTBlackLight01 06-02-2004 01:29 AM

Quote:

Originally Posted by cinq
I used your code :

PHP Code:

chdir('/usr/home/mydomain/www/forum');
require(
'./global.php'); 

But it still does not function properly, i am still getting js errors and images are not showing.
I have this .php file outside my forum directory too.

any help ?

All the js references in the headinclude template need to have an absolute path.

Code:

<script type="text/javascript" src="$vboptions[bburl]/clientscript/vbulletin_global.js"></script>
<if condition="$show['popups']"><script type="text/javascript" src="$vboptions[bburl]/clientscript/vbulletin_menu.js"></script></if>


Cold Steel 06-06-2004 07:10 PM

I'd like to do something a little different with this:

I have a PHP file as instructed, but I only want to include a header and footer (I've already set up templates for those). For the main page I want to include another page.

This is what I tried in the PHP file:

Code:

<snip>
$navbits = construct_navbits($navbits);
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('extrapage_top') . '");');
include("extrapage_contents.html");
eval('print_output("' . fetch_template('extrapage_bottom') . '");');
?>

Except it only shows the information from the template extrapage_top.

It doesn't show extrapage_contents.html, nor does it show the code from the template extrapage_bottom.

What am I doing wrong?

SVTBlackLight01 06-07-2004 02:11 PM

Includes have to go in the phpinclude_start template. Use the example as a guide:

Code:

// Example of how to include a seperate file:
// ob_start();
// require("yourheader.html");
// $header = ob_get_contents();
// ob_end_clean();

All you have to add to your template is the variable for the page you want to include ($header in the example).

Cold Steel 06-08-2004 07:41 AM

Excellent - worked like a charm. Thanks!

SVTBlackLight01 06-08-2004 03:26 PM

Great. Glad to help. :)

lichtflits 06-13-2004 09:11 AM

Can cany one please tell my how i can add login,latest treads and that sort of things to the vb powerd page.

Seanie 06-13-2004 12:38 PM

Hi

Is it possible for this to work when the forums in a subdomain on the same server?

I have tried it using PHP includes (storing the root php file in the forums dir) and that works, however permissions dont seem to work and when i use permissions via the templates(<if> statments) it doesnt recognise that Im logged in...


thanks in advance for any help

armani1072 06-15-2004 11:54 PM

1 Attachment(s)
great hack :D

however i am having a few issues when i try to align the tables in the body. if i try to align the table on the left the time stamp will appear on the right in stead of the bottom of where it should be. in the attached image you can see how i made two tables side by side and the time stamp appears in between the two tables. no matter what i try in the code nothing seems to move it. i will attach the code too. Any help will be appreciated :) thanks.


HTML Code:

$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]&nbsp:: Links</title>
$headinclude
</head>
<body>
$header

$navbar

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>
        <td class="tcat">Links</td>
</tr>
<tr>
        <td class="alt1"><p>Great links and friends of Mysite.org.<br>
        </td>
</tr>
</table>
<br>

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="48%" align="left">
<tr>
        <td class="tcat">Discussion Boards</td>
</tr>
<tr valign="center">
        <td class="alt1"><br><a href="http://www.site1.org/" target="_blank">Description</a><br><br><a href="http://www.site2.com/" target="_blank">Description2</a><br><br><a href="http://www.site3.com/" target="_blank">Description3</a><br><br><i>more to come...</i><br>
        </td>
</tr>
</table>


<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="48%" align="right">
<tr>
        <td class="tcat">Other Sites</td>
</tr>
<tr>
        <td class="alt1"><br><a href="http://www.site1.org/" target="_blank">Description1</a><br><br><a href="http://www.site2.com/" target="_blank">Description2</a><br><br><a href="http://www.site3.com/" target="_blank">Description3</a><br><br><i>more to come...</i><br>
        </td>
</tr>
</table>
<br>
<br>
<br>
$footer

</html>


The Realist 06-20-2004 08:17 PM

Installed the test pages "Test"

Its all white and nothing shows?

Whats up, anyone?

Dean C 06-21-2004 08:20 AM

Make sure you added the template and also added it to the template cache at the top of the page :)

sarahk 06-23-2004 09:30 AM

I want to call this hack from the control panel but right now I'm just getting a blank screen. The template is called MAILLIST and is unchanged from page 1 of this thread.

here's my file called maillist.php which is stored at /forum/
(comments removed for brevity)
PHP Code:

<?php 
error_reporting
(E_ALL & ~E_NOTICE); 

define('NO_REGISTER_GLOBALS'1); 
define('THIS_SCRIPT''maillist'); // change this depending on your filename 

// get special phrase groups 
$phrasegroups = array( ); 

$specialtemplates = array( ); 

$globaltemplates = array(     'MAILLIST',     'usercp_nav_folderbit'); 

$actiontemplates = array( 'MAILLIST'); 

require_once(
'./global.php'); 

$navbits = array(); 
$navbits[$parent] = 'Test Page'

$navbits construct_navbits($navbits); 
eval(
'$navbar = "' fetch_template('navbar') . '";'); 
eval(
'print_output("' fetch_template('MAIL LIST MAINTENANCE') . '");'); 

?>

Can't see where I've gone wrong? sure it's something simple, any ideas?

Plus, how do I ensure that I get the control panel nav rather than the normal nav?

Sarah

Dean C 06-23-2004 10:21 AM

You can't call templates from within the admincp :)

sarahk 06-23-2004 09:00 PM

Thanks Dean

I'm trying to run this from within the user CP.

Found my mistake:
Code:

eval('print_output("' . fetch_template('MAILLIST') . '");');
should be
Code:

eval('print_output("' . fetch_template('MAIL LIST MAINTENANCE') . '");');
but I'm actually going to be doing a hybrid of this technique and extra profile fields so hopefully I'm on my way!

Dean C 06-24-2004 11:51 AM

No problem Sarah. Good luck with whatever you're coding :D!


All times are GMT. The time now is 10:48 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.03492 seconds
  • Memory Usage 2,079KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (9)bbcode_code_printable
  • (2)bbcode_html_printable
  • (6)bbcode_php_printable
  • (6)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete