vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   Programmatically create a new forum? (https://vborg.vbsupport.ru/showthread.php?t=147169)

guy001 05-13-2007 10:38 PM

Programmatically create a new forum?
 
Hey guys,

I'm looking to create new forums using an external script. I've tried reverse engineering the mysql queries but i think im doing more harm than good.

Any tips would be most appreciated!

Eikinskjaldi 05-13-2007 11:03 PM

The way that we do it is to use the datamanager from functions.php

PHP Code:

  $forum = array(
                
'title' => trim($title),
                
'description' => '',
                
'link' => '',
                
'displayorder' => $disp,
                
'daysprune' => -1,
                
'parentid' => $parent,
                
'newthreademail' => '',
                
'newpostemail' => '',
                
'options' => array(
                        
'moderatenewpost' => 0,
                        
'moderatenewthread' => 0,
                        
'moderateattach' => 0,
                        
'warnall' => 0,
                        
'styleoverride' => 0,
                        
'canhavepassword' => 1,
                        
'cancontainthreads' => 1,
                        
'active' => 1,
                        
'allowposting' => $open,
                        
'indexposts' => 1,
                        
'allowhtml' => 0,
                        
'allowbbcode' => 1,
                        
'allowimages' => 1,
                        
'allowsmilies' => 1,
                        
'allowicons' => 0,
                        
'allowratings' => 0,
                        
'countposts' => 1,
                        
'showonforumjump' => 0),
                
'styleid' => -1,
                
'password' => ''
        
);

        
$forumdata =& datamanager_init('Forum'$vbulletinERRTYPE_STANDARD);

        foreach (
$forum AS $varname => $value) {
                if (
$varname == 'options') {
                        foreach (
$value AS $key => $val) {
                                
$forumdata->set_bitfield('options'$key$val);
                        }
                }
                else {
                        
$forumdata->set($varname$value);
                }
        }
        
$forumsave $forumdata->save(); 


nexialys 05-14-2007 02:47 AM

it is not only a question of revers mysql query.. you have to generate the proper feed to lock your forum into the system cache too... like Eikin indicate!


All times are GMT. The time now is 03:31 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.00963 seconds
  • Memory Usage 1,738KB
  • 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
  • (1)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (3)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
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete