Ejemplo n.º 1
0
 /**
  * Resolves an file path for a row
  */
 public function resolveFile($row = array(), $column = '', $default = '')
 {
     if (!empty($column) && array_key_exists($column, $row)) {
         $value = trim($row[$column]);
         if (!empty($value) && Validate::isUrl($row[$column]) !== true) {
             $row[$column] = Server::getBaseUrl($row[$column]);
         }
     }
     return $row;
 }
Ejemplo n.º 2
0
 /**
  * Load and filter list of menu items data from a file
  */
 private function _loadMenuData($file)
 {
     $file = Sanitize::toPath($file);
     $menu = is_file($file) ? include_once $file : [];
     $output = [];
     $count = 1;
     if (is_array($menu)) {
         foreach ($menu as $idx => $item) {
             $active = "";
             $url = Utils::value(@$item["url"], Server::getBaseUrl());
             if (empty($item["url"])) {
                 if (!empty($item["route"])) {
                     if (preg_match("/^(\\/" . $this->_area . ")?(\\/" . $this->_controller . ")/", $item["route"]) === 1) {
                         $active = "active";
                         // route matched current location
                     }
                     $url = Server::getBaseUrl($item["route"]);
                 } else {
                     if (!empty($item["controller"])) {
                         if ($this->_controller === $item["controller"]) {
                             $active = "active";
                             // controller matched current controller
                         }
                         $area = $this->_area !== "site" ? $this->_area : "";
                         $route = Utils::buildPath($area, $item["controller"], @$item["action"]);
                         $url = Server::getBaseUrl($route);
                     }
                 }
             }
             $item["active"] = $active;
             $item["url"] = $url;
             $output[] = $item;
             $count++;
         }
     }
     return $output;
 }
Ejemplo n.º 3
0
 /**
  * Get script base URL
  */
 public function getBaseUrl($append = '')
 {
     return Server::getBaseUrl($append);
 }
Ejemplo n.º 4
0
 /**
  * Helper: Get base url
  */
 public function baseUrl($append = null)
 {
     return Server::getBaseUrl($append);
 }
Ejemplo n.º 5
0
 /**
  * Send a rendered template file HTML message
  */
 public function sendTemplate($file, $data = [])
 {
     $view = new View();
     $view->setTemplate($file);
     $view->setKey("url", Server::getUrl());
     $view->setKey("baseurl", Server::getBaseUrl());
     $view->setKey("browser", Connection::getAgent());
     $view->setKey("ip", Connection::getIp());
     $view->setKey("date", date("r T"));
     $view->mergeData($data);
     return $this->sendHtml($view->render());
 }