| By: cow Date: 2004-08-07 Time: 18:05 | MergeBlock before LoadTemplateHi!I try to call merge block before loadTemplate (I process the query before I set the content. but if Load merge before I set content variable, example);
 ...
 require_once("process.php"); // Here call mergeBlocks, and set content depend about input variables...
 $engine->LoadTemplate("core.html");
 $engine->Show();
 ...
 because if I do this, the Block's not evaulated.
 Any idea?
 (Cow)
 | 
	
      | By: Skrol29 Date: 2004-08-07 Time: 18:17 | Re: MergeBlock before LoadTemplateHi,
 You can't merge data with a non yet defined block, anyway.
 Why do uoi need to open the query before to load the template ?
 
 If it's because of sub-template, you can merge them using [tbs_include.onshow] or simply using simple fields merged with MergeField().
 | 
	
      | By: cow Date: 2004-08-07 Time: 18:30 | Re: MergeBlock before LoadTemplateOk look. example.---------------------
 1 version:
 
 $engine=new clsTinyButStrong;
 $engine->loadTemplate("core.html");
 process(); //Here set the content variable and the merge blocks...
 $engine->Show()
 
 core.html
 <html><body>[tbs_include.onshow;file=var.content;htmlconv=no]</body></html>
 
 examlple content.html
 <table><tr><td>[blk.name;block=tr]</td></tr></table>
 
 Result: content.html merged, but not the block not evaulated.
 -------------
 version 2.
 
 $engine=new clsTinyButStrong;
 process(); //Here set the content variable and the merge blocks...
 $engine->loadTemplate("core.html");
 $engine->Show()
 
 core.html
 <html><body>[tbs_include.onload;file=var.content;htmlconv=no]</body></html>
 
 example content.html not modifyed
 
 result: content block not evaulated.
 -----------
 Any idea?
 
 Cow
 | 
	
      | By: Skrol29 Date: 2004-08-07 Time: 20:40 | Re: MergeBlock before LoadTemplatecore.html: | <html><body>[myinclude;file=[val]]</body></html> | 
content.html: | <table><tr><td>[blk.name;block=tr]</td></tr></table> | 
PHP: | $engine=new clsTinyButStrong; $engine->loadTemplate("core.html");
 process(); //Here set the content variable and the merge blocks...
 $engine->MergeField('myinclude',$content);
 $engine->Show();
 
 | 
 | 
	
      | By: cow Date: 2004-08-07 Time: 21:08 | Re: MergeBlock before LoadTemplatecore.html: | <html><body>[content_include;file=[val]]</body></html> 
 | 
content.html:
 | <table width="100%" cellpadding=3 cellspacing=0 bgcolor="silver"> <tr>
 <td><a href="?event=modify">[list_block.id;block=tr]</a></td>
 </tr>
 </table>
 
 | 
index.php:
 | $engine=new clsTinyButStrong; $engine->loadTemplate("core.html");
 
 $array=array(
 1=>array("name"=>"asd"),
 2=>array("name"=>"bsd")
 );
 
 $engine->MergeBlock('list_block',$array);
 $content="content.html";
 
 $engine->MergeField("content_include","content/".$content);
 $engine->Show();
 
 | 
Result is: 
[list_block.name;block=tr]
 | 
	
      | By: Skrol29 Date: 2004-08-07 Time: 21:46 | Re: MergeBlock before LoadTemplateMergeField() must be called before MergeBlock(). 
It is MergeField() that process the sub-template tag.
 
My PHP snippet was not correct, because you process() function defines the sub-template name and then merges the block. But it has to performe the sub-template tag between thos two actions.
 
Example: | $engine=new clsTinyButStrong; $engine->loadTemplate("core.html");
 
 $content="content.html";
 $engine->MergeField("content_include","content/".$content);
 
 $array=array(
 1=>array("name"=>"asd"),
 2=>array("name"=>"bsd")
 );
 $engine->MergeBlock('list_block',$array);
 
 $engine->Show();
 
 | 
 | 
	
      | By: cow Date: 2004-08-08 Time: 12:40 | Re: MergeBlock before LoadTemplatethnx | 
	
    
	
    
      |  | 
		  Posting in progress.Please wait...
 |