Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions

Reply
 
Thread Tools Display Modes
  #11  
Old 04-21-2005, 05:25 PM
Brad Brad is offline
 
Join Date: Nov 2001
Posts: 4,765
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I misunderstood your post sorry...

The problem marco brought up with cookies is easy to solve, just use the same copy of php files for both forums, as long as you have a license for each this won't matter.

Exactly how much of the forum do you want to change between sites? If you simply want the style to change it is not hard to do as long as cookies don't become a problem. To avoid the cookie problem I would just set two durring login (once for each domain).

With some code modification you can pull it off, but it all depends on how far you want to go with it.
Reply With Quote
  #12  
Old 04-21-2005, 07:42 PM
ChrisHasenpflug ChrisHasenpflug is offline
 
Join Date: Apr 2005
Location: Kansas City, MO
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Cookies won't be a problem as the users really only login to one URL. They know the others exist, but they don't frequent them. Only visit their home site.

Mods would most likely be the same across all instances as well.

Its really just the style (header/footer/css) that would change between sites. Thoughts on what/where to make modifications?

Additionally we're looking at using vBadvanced CMPS for our CMS/front page. Each site would have its own blocks/content on their front page, independant of the other sites. Any ideas on how that would work out?

Thanks for the help and assistance guys. Very much appreciated.
Reply With Quote
  #13  
Old 04-21-2005, 08:45 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I already gave some suggestions on where to put the code for the style change.

Sorry but i am not the best to answer your CMS questions.
Reply With Quote
  #14  
Old 04-22-2005, 07:57 AM
ChrisHasenpflug ChrisHasenpflug is offline
 
Join Date: Apr 2005
Location: Kansas City, MO
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Okay Marco, thanks a lot for your help Just trying to get more input. I will certainly work off of what you have given me!
Reply With Quote
  #15  
Old 04-22-2005, 09:44 AM
Brad Brad is offline
 
Join Date: Nov 2001
Posts: 4,765
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ChrisHasenpflug
Cookies won't be a problem as the users really only login to one URL. They know the others exist, but they don't frequent them. Only visit their home site.

Mods would most likely be the same across all instances as well.

Its really just the style (header/footer/css) that would change between sites. Thoughts on what/where to make modifications?

Additionally we're looking at using vBadvanced CMPS for our CMS/front page. Each site would have its own blocks/content on their front page, independant of the other sites. Any ideas on how that would work out?

Thanks for the help and assistance guys. Very much appreciated.
The best way to do the styles is to make modifications to global.php Baiscly you will look for which domain the user is on and inject a custom styleid based on that. Then you modify each style in the admincp to your liking, simple and easy

If you are confused let me know and I'll post some examples for you.

The CMS I am not sure about, as I do not run one. I recall it begin able to spawn multiple pages from one file (unlike the old portals) but I could be wrong, best to ask someone that uses the hack.
Reply With Quote
  #16  
Old 04-22-2005, 08:22 PM
ChrisHasenpflug ChrisHasenpflug is offline
 
Join Date: Apr 2005
Location: Kansas City, MO
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hey Brad, thank you for your offer to help out!!

I have started to try and make changes on my own. But I am certainly missing something

I'm working locally with apache set to respond to two host names, vbsite1 and vbsite2. They point to the same files.

The following code has been added to global.php at line 269

PHP Code:
// overwrite styles for specific sites
$sitestyles = array(
    
'vbsite1'    =>    1,
    
'vbsite2'    =>    2,);

$hostname $HTTP_SERVER_VARS['HTTP_HOST'];

if(
array_key_exists($hostname$sitestyles))
{
    
$styleid $sitestyles["$hostname"];    

That appeared to me to be the last place styleid is checked before setting up the templates. However, for some reason its not working as intended. I'm getting the Default Template for all sites, regardless.

Now I can to and do
PHP Code:
$styleid 2
after my if and it works. So I would think something is wrong with my if....well, I run the code segment on its own outside of vB and it echos the proper name just fine.

PHP Code:
//styletest.php
$styleid 0;

$sitestyles = array(
    
'vbsite1'    =>    1,
    
'vbsite2'    =>    2,);

$hostname $HTTP_SERVER_VARS['HTTP_HOST'];

if(
array_key_exists($hostname$sitestyles))
{
    
$styleid $sitestyles["$hostname"];    
}

echo 
$styleid
That works as expected.

Thanks for your help!!
Reply With Quote
  #17  
Old 04-22-2005, 08:29 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you do an echo of the styleid in the global, is it set correct?

I think you must write the new styleid to the cookie, or add "?styleid=$styleid" to the sessionurl.
Reply With Quote
  #18  
Old 04-22-2005, 08:49 PM
Brad Brad is offline
 
Join Date: Nov 2001
Posts: 4,765
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Styles are set multiple times within global.php/init.php based on the settings or if you are in a forum or on the front page. Let me do a little poking and i'll post back.
Reply With Quote
  #19  
Old 04-22-2005, 08:56 PM
Brad Brad is offline
 
Join Date: Nov 2001
Posts: 4,765
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok in global.php find:

PHP Code:
// figure out the chosen style settings
$codestyleid 0
Under that add:

PHP Code:
// switch style based on domain
$sitestyles = array(
    
'vbsite1'    =>    1,
    
'vbsite2'    =>    2);

$hostname $_SERVER['HTTP_HOST'];

if(
array_key_exists($hostname$sitestyles))
{
    
$codestyleid $sitestyles[$hostname];    

// end hack 
Then find:

PHP Code:
// automatically query $getpost, $threadinfo & $foruminfo if $threadid exists
if ($_REQUEST['postid'] AND $postinfo verify_id('post'$_REQUEST['postid'], 01))
{
    
$getpost $postinfo// Not needed other than to maintain newreply.php for now.
    
$postid $postinfo['postid'];
    
$_REQUEST['threadid'] = $postinfo['threadid'];

}

// automatically query $threadinfo & $foruminfo if $threadid exists
if ($_REQUEST['threadid'] AND $threadinfo verify_id('thread'$_REQUEST['threadid'], 01))
{
    
$threadid $threadinfo['threadid'];
    
$forumid $threadinfo['forumid'];
    if (
$forumid)
    {
        
$foruminfo fetch_foruminfo($threadinfo['forumid']);
        if ((
$foruminfo['styleoverride'] == OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
        {
            
$codestyleid $foruminfo['styleid'];
        }
    }
}
// automatically query $foruminfo if $forumid exists
else if ($_REQUEST['forumid'])
{
    
$foruminfo verify_id('forum'$_REQUEST['forumid'], 01);
    
$forumid $foruminfo['forumid'];
    if ((
$foruminfo['styleoverride'] == OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
    {
        
$codestyleid $foruminfo['styleid'];
    }
}
// automatically query forum for style info if $pollid exists
else if ($_REQUEST['pollid'])
{
    
$pollid intval($_REQUEST['pollid']);
    
$getforum $DB_site->query_first("SELECT forum.forumid, styleid, ((options & $_FORUMOPTIONS[styleoverride]) != 0) AS styleoverride FROM " TABLE_PREFIX "forum AS forum, " TABLE_PREFIX "thread AS thread WHERE forum.forumid = thread.forumid AND pollid = $pollid");
    if ((
$getforum['styleoverride'] == OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
    {
        
$codestyleid $getforum['styleid'];
    }
    unset(
$getforum);

Replace with (commented out version of code to disable it, this basicly prevents styles set in forums from overriding the one set by the domain)

PHP Code:
/*
// automatically query $getpost, $threadinfo & $foruminfo if $threadid exists
if ($_REQUEST['postid'] AND $postinfo = verify_id('post', $_REQUEST['postid'], 0, 1))
{
    $getpost = $postinfo; // Not needed other than to maintain newreply.php for now.
    $postid = $postinfo['postid'];
    $_REQUEST['threadid'] = $postinfo['threadid'];

}

// automatically query $threadinfo & $foruminfo if $threadid exists
if ($_REQUEST['threadid'] AND $threadinfo = verify_id('thread', $_REQUEST['threadid'], 0, 1))
{
    $threadid = $threadinfo['threadid'];
    $forumid = $threadinfo['forumid'];
    if ($forumid)
    {
        $foruminfo = fetch_foruminfo($threadinfo['forumid']);
        if (($foruminfo['styleoverride'] == 1 OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
        {
            $codestyleid = $foruminfo['styleid'];
        }
    }
}
// automatically query $foruminfo if $forumid exists
else if ($_REQUEST['forumid'])
{
    $foruminfo = verify_id('forum', $_REQUEST['forumid'], 0, 1);
    $forumid = $foruminfo['forumid'];
    if (($foruminfo['styleoverride'] == 1 OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
    {
        $codestyleid = $foruminfo['styleid'];
    }
}
// automatically query forum for style info if $pollid exists
else if ($_REQUEST['pollid'])
{
    $pollid = intval($_REQUEST['pollid']);
    $getforum = $DB_site->query_first("SELECT forum.forumid, styleid, ((options & $_FORUMOPTIONS[styleoverride]) != 0) AS styleoverride FROM " . TABLE_PREFIX . "forum AS forum, " . TABLE_PREFIX . "thread AS thread WHERE forum.forumid = thread.forumid AND pollid = $pollid");
    if (($getforum['styleoverride'] == 1 OR $bbuserinfo['styleid'] == 0) AND !defined('BYPASS_STYLE_OVERRIDE'))
    {
        $codestyleid = $getforum['styleid'];
    }
    unset($getforum);
}
*/ 
Then find

PHP Code:
    // style specified in user profile
    
$styleid $bbuserinfo['styleid']; 
Replace with (this disables users from selecting a style via their profile)

PHP Code:
    // style specified in user profile
    // $styleid = $bbuserinfo['styleid']; 
That should do it..
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 03:56 AM.


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.04357 seconds
  • Memory Usage 2,282KB
  • 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
  • (9)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (9)post_thanks_box
  • (9)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (9)post_thanks_postbit_info
  • (9)postbit
  • (9)postbit_onlinestatus
  • (9)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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete