Page MenuHomeIn-Portal Phabricator

in-portal
No OneTemporary

File Metadata

Created
Mon, Feb 3, 1:16 AM

in-portal

Index: trunk/kernel/units/general/inp1_parser.php
===================================================================
--- trunk/kernel/units/general/inp1_parser.php (revision 2126)
+++ trunk/kernel/units/general/inp1_parser.php (revision 2127)
@@ -1,173 +1,194 @@
<?php
class Inp1Parser extends kBase {
var $InportalInited = false;
function Parse($tname, $template_body)
{
+ global $objTemplate, $var_list, $var_list_update;
if ( !$this->InportalInited) {
+ //$save_t = $this->Application->GetVar('t');
$this->InitInPortal();
+ $var_list['t'] = $this->cutTPL($var_list['t']);
+ if($var_list['t'] != $this->Application->GetVar('t'))
+ {
+ $get = $_GET;
+ unset($get['env']);
+ $this->Application->StoreVar('K4_Template_Referer', $this->Application->GetVar('t') );
+
+ $this->Application->Redirect($var_list['t'], $get);
+ }
}
- global $objTemplate, $var_list, $var_list_update;
- if( substr($var_list['t'],-4) == '.tpl' )
- {
- $var_list['t'] = substr($var_list['t'], 0, strlen($var_list['t'])-4 );
- }
+
+ $var_list['t'] = $this->cutTPL($var_list['t']);
if ($var_list['t'] != $this->Application->GetVar('t')) {
//$var_list['t'] = rtrim($var_list['t'],'.tpl');
$t = $var_list['t'];
$this->Application->SetVar('t', $t);
$template_cache =& $this->Application->recallObject('TemplatesCache');
$template_body = $this->Application->Parser->Parse( $template_cache->GetTemplateBody($t), $t, 0 );
}
else {
$template_body = $objTemplate->ParseTemplateFromBuffer($tname, $template_body);
}
return $template_body;
}
+ function cutTPL($tname)
+ {
+ if( substr($tname,-4) == '.tpl' )
+ {
+ return substr($tname, 0, strlen($tname)-4 );
+ }
+ return $tname;
+ }
function InitInPortal()
{
$this->InportalInited = true;
/*global $pathtoroot, $FrontEnd, $indexURL, $rootURL, $secureURL, $var_list, $CurrentTheme,
$objThemes, $objConfig, $m_var_list, $timeout, $objLanguages, $objLanguageCache,
$TemplateRoot, $objTemplate, $html, $objSession, $Errors, $objCatList, $objUsers,
$env, $mod_prefix, $ExtraVars, $timestart, $timeend, $timeout, $sqlcount, $totalsql,
$template_path, $modules_loaded, $mod_root_cats, $objModules, $objItemTypes;*/
global $sec, $usec, $timestart, $pathtoroot, $FrontEnd, $indexURL, $kernel_version, $FormError,
$FormValues, $ItemTables, $KeywordIgnore, $debuglevel,
$LogLevel, $LogFile, $rq_value, $rq_name, $dbg_constMap, $dbg_constValue, $dbg_constName,
$debugger, $g_LogFile, $LogData, $Errors,
$g_DebugMode, $totalsql, $sqlcount, $objConfig, $ItemTypePrefixes, $ItemTagFiles, $objModules,
$objSystemCache, $objBanList, $objItemTypes, $objThemes, $objLanguages, $objImageList, $objFavorites,
$objUsers, $objGroups, $DownloadId, $objPermissions, $objPermCache, $m_var_list, $objCatList,
$objCustomFieldList, $objCustomDataList, $objCountCache, $CRLF, $objMessageList, $objEmailQueue,
$ExtraVars, $adodbConnection, $sql, $rs, $mod_prefix, $modules_loaded, $name,
$template_path, $mod_root_cats, $value, $mod, $ItemTypes,
$ParserFiles, $SessionQueryString, $var_list, $objSession,
$orderByClause, $TemplateRoot, $ip, $UseSession, $Action, $CookieTest, $sessionId,
$var_list_update, $CurrentTheme, $UserID, $objCurrentUser, $objLanguageCache,
$folder_name, $objLinkList, $tag_override, $timeZones, $siteZone, $serverZone,
$lastExpire, $diffZone, $date, $nowDate, $lastExpireDate, $SearchPerformed,
$TotalMessagesSent, $ado, $adminDir, $rootURL, $secureURL, $html, $timeout,
$pathchar, $objTemplate, $objTopicList, $objArticleList, $objPostingList, $objCensorList,
$objSmileys;
$pathtoroot = "./";
$pathtoroot = realpath($pathtoroot)."/";
if (!file_exists($pathtoroot."config.php")) {
echo "In-Portal is probably not installed, or configuration file is missing.<br>";
echo "Please use the installation script to fix the problem.<br><br>";
echo "<a href='admin/install.php'>Go to installation script</a><br><br>";
flush();
die();
}
//ob_start();
$FrontEnd=1;
$indexURL="../../index.php"; //Set to relative URL from the theme directory
/* initalize the in-portal system */
include_once(FULL_PATH."/kernel/startup.php");
$rootURL="http://".ThisDomain().$objConfig->Get("Site_Path");
//$secureURL = "https://".ThisDomain().$objConfig->Get("Site_Path");
$secureURL = $rootURL;
$html= '';
if( !$var_list['t'] ) $var_list['t'] = 'index';
if( !isset($CurrentTheme) ) $CurrentTheme = null;
$theme_id = defined('DBG_FORCE_THEME') && DBG_FORCE_THEME ? DBG_FORCE_THEME : $m_var_list['theme'];
if( !is_object($CurrentTheme) ) $CurrentTheme = $objThemes->GetItem($theme_id);
if(is_object($CurrentTheme))
{
if(!$CurrentTheme->Get("Enabled"))
{
$CurrentTheme = $objThemes->GetItem($objThemes->GetPrimaryTheme());
}
if((int)$CurrentTheme->Get("ThemeId")>0)
{
$timeout = $CurrentTheme->Get("CacheTimeout");
$objLanguageCache->LoadTemplateCache($var_list["t"],$timeout,$CurrentTheme->Get("ThemeId"));
$objLanguageCache->LoadCachedVars($objSession->Get("Language"));
$TemplateRoot = $CurrentTheme->ThemeDirectory()."/";
$objTemplate = new clsTemplateList($TemplateRoot);
//$html = $objTemplate->ParseTemplate($var_list["t"]);
}
else
{
echo "No Primary Theme Selected";
die();
}
}
else
{
echo "No Primary Theme Selected\n";
die();
}
if(is_object($objSession))
{
-
+ $k4_referer = $objSession->GetVariable('K4_Template_Referer');
+ if($k4_referer)
+ {
+ $_local_t = $k4_referer;
+ $this->Application->RemoveVar('K4_Template_Referer');
+ }
$objSession->SetVariable("Template_Referer", $_local_t);
}
if($objTemplate->ErrorNo == -1)
{
$html = $objTemplate->ParseTemplate('error_template');
}
//$html = replacePngTags($html);
LogEntry("Output Start\n");
$html .= "<!-- Page Execution Time: ".( isset($ptime) ? $ptime : 0 )." -->";
if( IsDebugMode() )
{
if($Action) $debugger->setHTMLByIndex(1,'Front Action: <b>'.$Action.'</b>','append');
//$html = '<a href="javascript:toggleDebugLayer();">Show Debugger</a><br>'.$html;
}
else
{
// header("Content-length: ".strlen($html));
}
// header("Connection-Type: Keep-Alive");
// echo $html;
LogEntry("Output End\n");
if( isset($template) && $template->ErrorNo != 0 )
{
print "\n(".$objTemplate->ErrorNo.") ".$objTemplate->ErrorStr."\n";
}
LogEntry("Output Complete\n");
$objLanguageCache->SaveTemplateCache();
LogEntry("Templates Cached\n");
//if($objSession->SessionEnabled())
// $objSession->SaveSessionData();
//echo "Cookie: <PRE>"; print_r($_COOKIE); echo "</PRE><br>\n";
//ob_end_flush();
$timeend = getmicrotime();
$diff = $timeend - $timestart;
LogEntry("\nTotal Queries Executed: $sqlcount in $totalsql seconds\n");
LogEntry("\nPage Execution Time: $diff seconds\n", true);
if($LogFile)
fclose($LogFile);
}
}
?>
\ No newline at end of file
Property changes on: trunk/kernel/units/general/inp1_parser.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.5
\ No newline at end of property
+1.6
\ No newline at end of property
Index: trunk/core/units/general/inp1_parser.php
===================================================================
--- trunk/core/units/general/inp1_parser.php (revision 2126)
+++ trunk/core/units/general/inp1_parser.php (revision 2127)
@@ -1,173 +1,194 @@
<?php
class Inp1Parser extends kBase {
var $InportalInited = false;
function Parse($tname, $template_body)
{
+ global $objTemplate, $var_list, $var_list_update;
if ( !$this->InportalInited) {
+ //$save_t = $this->Application->GetVar('t');
$this->InitInPortal();
+ $var_list['t'] = $this->cutTPL($var_list['t']);
+ if($var_list['t'] != $this->Application->GetVar('t'))
+ {
+ $get = $_GET;
+ unset($get['env']);
+ $this->Application->StoreVar('K4_Template_Referer', $this->Application->GetVar('t') );
+
+ $this->Application->Redirect($var_list['t'], $get);
+ }
}
- global $objTemplate, $var_list, $var_list_update;
- if( substr($var_list['t'],-4) == '.tpl' )
- {
- $var_list['t'] = substr($var_list['t'], 0, strlen($var_list['t'])-4 );
- }
+
+ $var_list['t'] = $this->cutTPL($var_list['t']);
if ($var_list['t'] != $this->Application->GetVar('t')) {
//$var_list['t'] = rtrim($var_list['t'],'.tpl');
$t = $var_list['t'];
$this->Application->SetVar('t', $t);
$template_cache =& $this->Application->recallObject('TemplatesCache');
$template_body = $this->Application->Parser->Parse( $template_cache->GetTemplateBody($t), $t, 0 );
}
else {
$template_body = $objTemplate->ParseTemplateFromBuffer($tname, $template_body);
}
return $template_body;
}
+ function cutTPL($tname)
+ {
+ if( substr($tname,-4) == '.tpl' )
+ {
+ return substr($tname, 0, strlen($tname)-4 );
+ }
+ return $tname;
+ }
function InitInPortal()
{
$this->InportalInited = true;
/*global $pathtoroot, $FrontEnd, $indexURL, $rootURL, $secureURL, $var_list, $CurrentTheme,
$objThemes, $objConfig, $m_var_list, $timeout, $objLanguages, $objLanguageCache,
$TemplateRoot, $objTemplate, $html, $objSession, $Errors, $objCatList, $objUsers,
$env, $mod_prefix, $ExtraVars, $timestart, $timeend, $timeout, $sqlcount, $totalsql,
$template_path, $modules_loaded, $mod_root_cats, $objModules, $objItemTypes;*/
global $sec, $usec, $timestart, $pathtoroot, $FrontEnd, $indexURL, $kernel_version, $FormError,
$FormValues, $ItemTables, $KeywordIgnore, $debuglevel,
$LogLevel, $LogFile, $rq_value, $rq_name, $dbg_constMap, $dbg_constValue, $dbg_constName,
$debugger, $g_LogFile, $LogData, $Errors,
$g_DebugMode, $totalsql, $sqlcount, $objConfig, $ItemTypePrefixes, $ItemTagFiles, $objModules,
$objSystemCache, $objBanList, $objItemTypes, $objThemes, $objLanguages, $objImageList, $objFavorites,
$objUsers, $objGroups, $DownloadId, $objPermissions, $objPermCache, $m_var_list, $objCatList,
$objCustomFieldList, $objCustomDataList, $objCountCache, $CRLF, $objMessageList, $objEmailQueue,
$ExtraVars, $adodbConnection, $sql, $rs, $mod_prefix, $modules_loaded, $name,
$template_path, $mod_root_cats, $value, $mod, $ItemTypes,
$ParserFiles, $SessionQueryString, $var_list, $objSession,
$orderByClause, $TemplateRoot, $ip, $UseSession, $Action, $CookieTest, $sessionId,
$var_list_update, $CurrentTheme, $UserID, $objCurrentUser, $objLanguageCache,
$folder_name, $objLinkList, $tag_override, $timeZones, $siteZone, $serverZone,
$lastExpire, $diffZone, $date, $nowDate, $lastExpireDate, $SearchPerformed,
$TotalMessagesSent, $ado, $adminDir, $rootURL, $secureURL, $html, $timeout,
$pathchar, $objTemplate, $objTopicList, $objArticleList, $objPostingList, $objCensorList,
$objSmileys;
$pathtoroot = "./";
$pathtoroot = realpath($pathtoroot)."/";
if (!file_exists($pathtoroot."config.php")) {
echo "In-Portal is probably not installed, or configuration file is missing.<br>";
echo "Please use the installation script to fix the problem.<br><br>";
echo "<a href='admin/install.php'>Go to installation script</a><br><br>";
flush();
die();
}
//ob_start();
$FrontEnd=1;
$indexURL="../../index.php"; //Set to relative URL from the theme directory
/* initalize the in-portal system */
include_once(FULL_PATH."/kernel/startup.php");
$rootURL="http://".ThisDomain().$objConfig->Get("Site_Path");
//$secureURL = "https://".ThisDomain().$objConfig->Get("Site_Path");
$secureURL = $rootURL;
$html= '';
if( !$var_list['t'] ) $var_list['t'] = 'index';
if( !isset($CurrentTheme) ) $CurrentTheme = null;
$theme_id = defined('DBG_FORCE_THEME') && DBG_FORCE_THEME ? DBG_FORCE_THEME : $m_var_list['theme'];
if( !is_object($CurrentTheme) ) $CurrentTheme = $objThemes->GetItem($theme_id);
if(is_object($CurrentTheme))
{
if(!$CurrentTheme->Get("Enabled"))
{
$CurrentTheme = $objThemes->GetItem($objThemes->GetPrimaryTheme());
}
if((int)$CurrentTheme->Get("ThemeId")>0)
{
$timeout = $CurrentTheme->Get("CacheTimeout");
$objLanguageCache->LoadTemplateCache($var_list["t"],$timeout,$CurrentTheme->Get("ThemeId"));
$objLanguageCache->LoadCachedVars($objSession->Get("Language"));
$TemplateRoot = $CurrentTheme->ThemeDirectory()."/";
$objTemplate = new clsTemplateList($TemplateRoot);
//$html = $objTemplate->ParseTemplate($var_list["t"]);
}
else
{
echo "No Primary Theme Selected";
die();
}
}
else
{
echo "No Primary Theme Selected\n";
die();
}
if(is_object($objSession))
{
-
+ $k4_referer = $objSession->GetVariable('K4_Template_Referer');
+ if($k4_referer)
+ {
+ $_local_t = $k4_referer;
+ $this->Application->RemoveVar('K4_Template_Referer');
+ }
$objSession->SetVariable("Template_Referer", $_local_t);
}
if($objTemplate->ErrorNo == -1)
{
$html = $objTemplate->ParseTemplate('error_template');
}
//$html = replacePngTags($html);
LogEntry("Output Start\n");
$html .= "<!-- Page Execution Time: ".( isset($ptime) ? $ptime : 0 )." -->";
if( IsDebugMode() )
{
if($Action) $debugger->setHTMLByIndex(1,'Front Action: <b>'.$Action.'</b>','append');
//$html = '<a href="javascript:toggleDebugLayer();">Show Debugger</a><br>'.$html;
}
else
{
// header("Content-length: ".strlen($html));
}
// header("Connection-Type: Keep-Alive");
// echo $html;
LogEntry("Output End\n");
if( isset($template) && $template->ErrorNo != 0 )
{
print "\n(".$objTemplate->ErrorNo.") ".$objTemplate->ErrorStr."\n";
}
LogEntry("Output Complete\n");
$objLanguageCache->SaveTemplateCache();
LogEntry("Templates Cached\n");
//if($objSession->SessionEnabled())
// $objSession->SaveSessionData();
//echo "Cookie: <PRE>"; print_r($_COOKIE); echo "</PRE><br>\n";
//ob_end_flush();
$timeend = getmicrotime();
$diff = $timeend - $timestart;
LogEntry("\nTotal Queries Executed: $sqlcount in $totalsql seconds\n");
LogEntry("\nPage Execution Time: $diff seconds\n", true);
if($LogFile)
fclose($LogFile);
}
}
?>
\ No newline at end of file
Property changes on: trunk/core/units/general/inp1_parser.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.5
\ No newline at end of property
+1.6
\ No newline at end of property

Event Timeline