Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions
  #1  
Old 07-08-2005, 05:46 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Help with Templates

I'm working on a content management script right now and I'm having 2 problems...

First off the template is sent into the database along with updating the templatelist array in the style table, then a php file is created with the template to display set as the template created (cached too). For some reason the template doesn't want to display [blank page], it does however show up in the style manager.

The other problem is, when creating the PHP file any lines that were edited from the template php file lose their line breaks after the lines (such as:
PHP Code:

$navbits
[0] = "asdf";$navbits construct_navbits($navbits);

eval(
'$CMSHTML = "' fetch_template('CMS_asdf.php') . '";');eval('print_output("' fetch_template('CMS_SHELL') . '");'); 
Does anyone have any idea how to fix either of these problems?

Thanks
Reply With Quote
  #2  
Old 07-08-2005, 09:11 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Solution to all of this, seem to be the use of a decent text editor to me.
Reply With Quote
  #3  
Old 07-08-2005, 09:16 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I think you misunderstood... I'll post the code for what I am referring to.
PHP Code:
    // ########################################################################
    // Create CMS Page
    
elseif ($_POST['do'] == 'createfile')
    {
        
globalize ($_POST, array(
            
'pagename' => STR_NOHTML,
            
'filename' => STR_NOHTML,
            
'body' => STR,
        ));
        

        if(
stristr($body"<if") == TRUE)
        {
            
$errormessage "No template conditions are allowed here.";
            eval(
'print_output("' fetch_template('STANDARD_ERROR') . '");');
        }
        if (
$filename == ".php")
        {
            
$errormessage "Sorry you must include a filename.";
            eval(
'print_output("' fetch_template('STANDARD_ERROR') . '");');
        }
        if (
stristr($filename".php") == FALSE)
        {
            
$errormessage "Sorry you must create a php file.";
            eval(
'print_output("' fetch_template('STANDARD_ERROR') . '");');
        }
        
$pagename addslashes($pagename);
        
$body addslashes($body);
        
$time time();
        
$version $vboptions['templateversion'];
        
        
$title 'CMS_' $filename;
        
$templatetype 'template';
        
$styleid 3;



        
// FILE CREATION
            // Read File
            
$file file("CMS_TEMPLATE.php");

            
// Settings
            
$counter 0;
            
$newscriptname $title;
            
$newtemplatename $title;
            
$newscripttitle $pagename;

            
$file[7] = "define('THIS_SCRIPT', '$newscriptname');";
            
$file[19] = "    '$newtemplatename',";
            
$file[36] = "\$navbits[0] = \"$newscripttitle\";";
            
$file[41] = "eval('\$CMSHTML = \"' . fetch_template('$newtemplatename') . '\";');";

            if (
file_exists("$filename"))
            {
                
$errormessage "This file already exists.";
                eval(
'print_output("' fetch_template('STANDARD_ERROR') . '");');
            }

            else
            {
                
$filea fopen("$filename"'w');
                if (!
$filea)
                {
                    
$errormessage "Unable to open file for writing.";
                    eval(
'print_output("' fetch_template('STANDARD_ERROR') . '");');
                }
                
// Write File
                
foreach ($file as $line)
                {
                    
// Add Line
                    
fputs($filea$line);
                }
                
fclose($filea);
                
chmoddirname(__FILE__).'/'."$filename"0777 );
            }
            
        
// END FILE CREATION
        
        
        
        
        // TEMPLATE CREATION
            
$createtemplate $DB_site->query("
                INSERT INTO template
                (styleid, title, template, template_un, templatetype, dateline, username, version)
                VALUES ('
$styleid', '$title', '$body', '$body', '$templatetype', '$time', '$bbuserinfo[username]', '$version')
            "
);

            
// Find it
            
$newtemp $DB_site->query_first("
                SELECT templateid
                FROM template
                WHERE title='
$title'
            "
);

            
// Create Array with New Template
            
$arraytomerge = array(
                
"$title=> $newtemp['templateid']
            );

            
// Get Style Array
            
$style $DB_site->query_first("
                SELECT templatelist
                FROM style
                WHERE styleid=3
            "
);

            
// Unserialize, Merge, Serialize
            
$stylearray unserialize($style[templatelist]);
            
$newarray array_merge($arraytomerge$stylearray);
            
$newarray addslashes(serialize($newarray));

            
// Update Style
            
$updatestyle $DB_site->query("
                UPDATE style
                SET templatelist='
$newarray'
                WHERE styleid=3
            "
);
        
// END TEMPLATE CREATION
        
        
        
        // Redirect
        
$url $filename;
        eval(
print_standard_redirect('redirecting'));
        
    } 
Whenever the template I inserted manually through this gets displayed, it is just a blank page. And the other problem is a result of creating the file this way (automatically), opposed to creating it by hand [which would defeat the purpose of using a CMS].
Reply With Quote
  #4  
Old 07-08-2005, 09:59 PM
Andreas's Avatar
Andreas Andreas is offline
 
Join Date: Jan 2004
Location: Germany
Posts: 6,863
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You are not compiling the Template ...
Reply With Quote
  #5  
Old 07-08-2005, 10:38 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Compiling? Could you elaborate a bit please?
Reply With Quote
  #6  
Old 07-08-2005, 10:48 PM
Andreas's Avatar
Andreas Andreas is offline
 
Join Date: Jan 2004
Location: Germany
Posts: 6,863
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

adminfunctions_template.php, especially compile_template()
Reply With Quote
  #7  
Old 07-08-2005, 10:49 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks I'll go take a look.

Hmm I still can't figure out why it won't work. I included that file and used that function on my template (because that is the only difference I could see). A lot of the code there looked like it was for template conditions (which I'm not going to use). Any more specific help would be greatly appreciated.
Reply With Quote
  #8  
Old 07-10-2005, 03:11 AM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

*Bump [damn doublepost automerge]

Read addition to last post.
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:51 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.04312 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
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (8)post_thanks_box
  • (8)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (8)post_thanks_postbit_info
  • (8)postbit
  • (8)postbit_onlinestatus
  • (8)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