Esempio n. 1
0
 static function GetTrail($start = null)
 {
     $obj = utopia::GetInstance('uCMS_List');
     $arr = $obj->GetNestedArray();
     $out = array();
     //TODO: add (Search Results) to end of title if current page is filtered.
     $out[$_SERVER['REQUEST_URI']] = '{utopia.title}';
     // '<a href="'.$_SERVER['REQUEST_URI'].'">{utopia.title}</a>';
     foreach (self::$extras as $a) {
         $out[$a[1]] = $a[0];
         //'<a href="'.$a[1].'">'.$a[0].'</a>';
     }
     $obj = utopia::GetInstance('uCMS_View');
     $row = uCMS_View::findPage();
     do {
         if (!$row) {
             break;
         }
         $url = $obj->GetURL($row['cms_id']);
         $title = $row['nav_text'] ? $row['nav_text'] : $row['title'];
         $out[$url] = $title;
     } while ($row['parent'] && ($row = uCMS_List::findKey($arr, $row['parent'])));
     $build = array();
     foreach ($out as $k => $v) {
         $build[] = '<a href="' . $k . '">' . $v . '</a>';
     }
     $build = array_unique($build);
     if ($start) {
         $build[] = $start;
     }
     if (count($build) < 1) {
         return '';
     }
     return implode(' &gt; ', array_reverse($build));
 }
Esempio n. 2
0
 static function GetChildren($parent)
 {
     $specific = isset(self::$children[$parent]) ? self::$children[$parent] : array();
     $currentModule = $parent == utopia::GetCurrentModule() && isset(self::$children['/']) ? self::$children['/'] : array();
     $catchAll = isset(self::$children['*']) ? self::$children['*'] : array();
     $baseModule = array();
     switch ($parent) {
         case 'uCMS_View':
             $currentPage = uCMS_View::findPage();
             if ($currentPage['is_home'] && isset(self::$children[''])) {
                 $baseModule = self::$children[''];
             }
             break;
         case 'uDashboard':
             if (isset(self::$children[''])) {
                 $baseModule = self::$children[''];
             }
     }
     $arr = array_merge($catchAll, $baseModule, $currentModule, $specific);
     return $arr;
 }
Esempio n. 3
0
 public static function editPageCallback()
 {
     $thisObj = utopia::GetInstance(__CLASS__);
     if (uEvents::TriggerEvent('CanAccessModule', $thisObj) === FALSE) {
         return;
     }
     if (self::$editCallbackDone) {
         return;
     }
     self::$editCallbackDone = true;
     $rec = uCMS_View::findPage();
     if (!$rec) {
         return;
     }
     if (!isset($_GET['edit'])) {
         $obj = utopia::GetInstance('uCMS_View');
         $editURL = $obj->GetURL(array('cms_id' => $rec['cms_id'], 'edit' => 1));
         uAdminBar::AddItem('<a class="btn" href="' . $editURL . '">Edit Page</a>', FALSE, null, 'edit-page-link');
         return;
     }
     uJavascript::LinkFile(utopia::GetRelativePath(dirname(__FILE__) . '/cms.js'), 9999);
     ob_start();
     $thisObj->ClearFilters();
     $thisObj->AddFilter('cms_id', ctEQ, itNONE, $rec['cms_id']);
     $thisObj->fields['content']['visiblename'] = NULL;
     $thisObj->fields['publishing']['visiblename'] = NULL;
     $thisObj->tabGroup = '_ADMIN_EDIT_';
     $thisObj->ShowData();
     $thisObj->tabGroup = NULL;
     $c = ob_get_clean();
     $pubCell = '<span class="right publish-buttons" style="padding-left:10px">' . $thisObj->GetCell('publishing', $rec) . '</span>';
     $obj = utopia::GetInstance('uCMS_View');
     $url = $obj->GetURL(array('cms_id' => $rec['cms_id']));
     uAdminBar::AddItem('<span class="left">Page Information</span>' . $pubCell, $c);
     uAdminBar::AddItem('<a class="btn" href="' . $url . '">Stop Editing</a>', FALSE, null, 'edit-page-link');
 }