Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 10-21-2005, 09:03 PM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Noob to modding 3.5 need help please

This should be simple for someone who knows what they are doing. Basically i'm trying to show "active topics" from several vbulletin sites on a single page. I decided to use the sites rss feeds instead of making a search query on each database (7 sites, so server load would be high). I'm using magpie and have setup a file called scractivetopics.php. It contains everything necessary to show the rss feeds on screen. It's after this step that I am having problems. I've never created a mod for vbulletin much less 3.5 so I don't know the best way to proceed. I tried creating another php file (netactive.php) with all of the necessary vbulletin files included so I could just call a template, but i'm having issues there. Let me show you some of these files so you have an idea.

netactive.php - Vbulletin file used to call the templates

PHP Code:
<?php

// ######################## SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

// ##################### DEFINE IMPORTANT CONSTANTS #######################
// change the line below to the actual filename without ".php" extention.
// the reason for using actual filename without extention as a value of this constant is to ensure uniqueness of the value throughout every PHP file of any given vBulletin installation.

define('THIS_SCRIPT''netactive'); 

// #################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array(
    
// change the lines below to the list of actual templates used in the script
    
'netactive',

);

// pre-cache templates used by specific actions
$actiontemplates = array();

// ########################## REQUIRE BACK-END ############################
require_once('./global.php');

// #################### HARD CODE JAVASCRIPT PATHS ########################
$headinclude str_replace('"clientscript''"' $vbulletin->options['bburl'] . '/clientscript'$headinclude);

// ########################################################################
// ######################### START MAIN SCRIPT ############################
// ########################################################################

$navbits = array(); 
// change the line below to contain whatever you want to show in the navbar (title of your custom page)
$navbits[$parent] = 'SCR Network Active Topics';

$navbits construct_navbits($navbits);
eval(
'$navbar = "' fetch_template('navbar') . '";');

// change the line below to contain the name of the actual main output template used in your script
eval('print_output("' fetch_template('netactive') . '");');
?>

scractivetopics.php - magpie file used to read the rss feeds - I have html in here and would rather have it in a vbulletin template, but have no idea how to go about that

PHP Code:
<?php
define
("MAGPIE_CACHE_AGE""300");
define('MAGPIE_DIR''magpierss/');
require_once(
MAGPIE_DIR.'rss_fetch.inc');

?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.net/vbulletin/external.php?type=RSS2&items=active');
    

    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>     
            <?php
    
    $rss 
fetch_rss('http://www.xxx.com/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
   
            <?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
   
   <?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
netactive template from vbulletin itself

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

$header
$navbar
<table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" align="center" id="threadslist">
<
tr>
    <
td class="tcat" colspan="$threadcolspanstyle="font-weight:normal">
    
        <
span class="smallfont">Network Active Topics
        
</span>
</
td>

$scrnetactive

</tr>
</
table>

$footer
</body>
</
html

I had this setup so scractivetopics.php was a plugin and could be called in a template using $scrnetactive (an include in vbulletin). I setup a custom template called netactive and inside called $scrnetactive. This worked, but my server load went through the roof because of the way I used the plugin. I had the plugin set to "global_start" so it was being called with every page. I can't think of another way to do this.

Someone please help. I'm sure it is a simple mistake, but I can't find the answers I am looking for.
Reply With Quote
  #2  
Old 10-22-2005, 05:19 AM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

99SIVTEC,


You are currently showing up as unlicensed. To be able to download hacks and/or receive support here at vBulletin.org, we ask you to please click here (vB-germany users click here) and enter your email address, to show us that you are licensed.

You will need to use your customer number and password (which will be in the email you got when you paid for your license) to access that page. Please note that your email is case sensitive. The update of your account may take up to one hour.

Thank you.
Reply With Quote
  #3  
Old 10-22-2005, 11:40 AM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It expired yesterday what timing. Anyway can anyone help me on this?
Reply With Quote
  #4  
Old 10-22-2005, 01:58 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yup showing up nice as licensed again.

Sorry don't have the time right now to look into this, but if not solved by next week i will try to have a look.
Reply With Quote
  #5  
Old 10-22-2005, 02:59 PM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, I was able to include scractivetopics.php inside of netactive.php using the regular

PHP Code:
ob_start();
include(
'http://www.xxx.net/scractivetopics.php');
$scrnetactive ob_get_contents();
ob_end_clean(); 
Once again, the script works BUT I would still like to get my html out of the scractivetopics.php file and into a template. If anyone could help with that and how to package it as a product, extension, whatever the heck it is.
Reply With Quote
Reply

Thread Tools
Display Modes

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:38 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.04169 seconds
  • Memory Usage 2,276KB
  • Queries Executed 13 (?)
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
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)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_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
  • 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