Ignore:
Timestamp:
Jan 22, 2016, 4:49:21 PM (9 years ago)
Author:
chronos
Message:
  • Fixed: Setup need to work without any app module installed.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Application/Core.php

    r861 r862  
    1212  var $LocaleManager;
    1313  var $Bars;
     14  var $PageHeaders;
     15  var $BaseURL;
    1416
    1517  function __construct()
     
    2325    $this->Pages = array();
    2426    $this->Bars = array();
     27    $this->PageHeaders = array();
     28    $this->BaseURL = '';
    2529  }
    2630
     
    5660    );
    5761
     62    if(GetRemoteAddress() != '')
     63      $this->BaseURL = substr($_SERVER["CONTEXT_PREFIX"], 0, -1);
    5864    $this->PathItems = ProcessURL();
    5965
    6066    // Detect interface locale
    61     $this->LocaleManager->DefaultLangCode = $this->Config['Web']['Locale'];
     67    if(isset($this->Config['Web']['Locale']))
     68      $this->LocaleManager->DefaultLangCode = $this->Config['Web']['Locale'];
    6269    $this->LocaleManager->LangCode = $this->LocaleManager->DefaultLangCode;
    6370    if(count($this->PathItems) > 0)
     
    99106
    100107    $ScriptStartTime = GetMicrotime();
    101     if(GetRemoteAddress() != '') session_start();
     108    //if(GetRemoteAddress() != '')
     109      session_start();
    102110
    103111    // SQL injection hack protection
     
    139147  function Link($Target)
    140148  {
    141     $Remaining = substr($Target, count($this->Config['Web']['BaseURL']));
     149    $Remaining = substr($Target, count($this->BaseURL));
    142150    $TargetParts = explode('/', $Remaining);
    143151    if(count($TargetParts) > 0)
     
    145153      if(in_array($TargetParts[0], $this->LinkLocaleExceptions))
    146154      {
    147         return($this->Config['Web']['BaseURL'].$Target);
     155        return($this->BaseURL.$Target);
    148156      }
    149157    }
     
    218226
    219227    if($Locale == $this->LocaleManager->DefaultLangCode)
    220       return($this->Config['Web']['BaseURL'].$Target);
    221     return($this->Config['Web']['BaseURL'].'/'.$Locale.$Target);
     228      return($this->BaseURL.$Target);
     229    return($this->BaseURL.'/'.$Locale.$Target);
    222230  }
    223231
     
    319327    $this->Bars[$BarName][$ItemName] = $Callback;
    320328  }
     329
     330  function RegisterPageHeader($Name, $Callback)
     331  {
     332    $this->PageHeaders[$Name] = $Callback;
     333  }
    321334}
Note: See TracChangeset for help on using the changeset viewer.