}
- function get($path= false)
+ function get($path, $opts=array())
{
die("implement me");
* $this->page= loadPage($name);
*/
- function loadPage($name, $default = false)
+ function loadPage($prefix, $name, $default = false)
{
+ //var_dump($name, $default);
+
+
+ $oo = HTML_FlexyFramework::get()->Pman_Cms;
+ $template_prefix = isset($oo['template_prefix']) ? $oo['template_prefix'] : '';
+
// used to load sub elements. of a site..
if ($default === false && preg_match('/\*$/', $name)) {
$x = DB_DataObject::factory("cms_page");
$x->autoJoin();
$x->is_element = 0;
$x->is_draft = 0;
- if (!$x->get("page_link", $default)) {
+ $x->language = 'en'; //$this->bootLoader->locale;
+
+ if (!$x->get("page_link", $prefix .'/'. $default)) {
die("default page '$default' does not exist");
}
// load the home page blocks..
$blocks = $x->children(array(
- 'type'=>'named_blocks'
+ 'type'=>'named_blocks',
+ 'language' => $this->bootLoader->locale,
));
foreach($blocks as $k=>$b) {
$this->block[$k] = $b;
}
+ $this->defaultPage = $x->inLanguage($this->bootLoader->locale);
+ $this->defaultPage_en = $x;
+
+ if ($this->defaultPage_en->id != $this->defaultPage->id) {
+ $blocks =$this->defaultPage->children(array(
+ 'type'=>'named_blocks',
+ 'language' => $this->bootLoader->locale
+ ));
+ foreach($blocks as $k=>$b) {
+ $this->block[$k] = $b;
+ }
+
+ }
+
+
+
+
+
+
- $this->defaultPage = $x;
}
if (empty($name)) {
$this->page = $this->defaultPage;
-
+ $this->page_en = $this->defaultPage_en;
} else {
$x = DB_DataObject::factory("cms_page");
$x->autoJoin();
$x->is_element = 0;
$x->is_draft = 0;
- if (!$x->get("page_link", $name)) {
- $this->herr(404);
+ $x->language = 'en';
+ if (!$x->get("page_link", $prefix .'/'. $name)) {
+ $this->err(404, "$name not found");
}
+
$blocks = $x->children(array(
- 'type'=>'named_blocks'
+ 'type'=>'named_blocks',
+ 'language' => $this->bootLoader->locale,
));
foreach($blocks as $k=>$b) {
$this->block[$k] = $b;
}
- $this->page = $x;
+ $this->page_en = $x;
+ $this->page = $x->inLanguage($this->bootLoader->locale);
+
+ if ($this->page_en->id != $this->page->id) {
+
+ $blocks = $this->page->children(array(
+ 'type'=>'named_blocks',
+ 'language' => $this->bootLoader->locale
+ ));
+ foreach($blocks as $k=>$b) {
+ $this->block[$k] = $b;
+ }
+
+
+ }
+
+
}
// load all the blocks..
$this->assignMeta();
+ $this->template = $this->page_en->template()->template;
+ //var_dump($this->template);
// menus????
}
}
-
+ /*
function herr( $error_name, $args = array(), $redirect=false )
{
return true;
}
-
+ */
function err($n, $msg = false)
{
header("HTTP/1.0 $n Not Found");
return $trimmed_text;
-
-
+
}
function eq($a,$b){
if(!$this->authUser){
return false;
}
- $x = DB_DataObject::factory('Companies');
+ $x = DB_DataObject::factory('core_company');
if($x->get($this->authUser->company_id)){
if($x->comptype == 'OWNER'){
return true;