コード例 #1
0
ファイル: Servlet.php プロジェクト: youssefbenhssaien/MVC-PHP
 public static function setLanguage($lang = "")
 {
     if (!empty($lang)) {
         setcookie("lang", $lang);
     }
     self::$lang = $lang;
 }
コード例 #2
0
 public function init(array $request = array())
 {
     $defaultcontrolfilename = Functions::getPublicFileURL("../servlet/index.php");
     $defaultviewfilename = Functions::getPublicFileURL("index.html");
     if (isset($this->request["REQUEST_URI"][0]) && !empty($this->request["REQUEST_URI"][0])) {
         if (Functions::isLanguage($this->request["REQUEST_URI"][0])) {
             $this->setLanguage(array_shift($this->request["REQUEST_URI"]));
         }
     } elseif (!in_array(parent::getUserBrowser(), array("ie"))) {
         $redirectforlanguage = true;
     }
     if (isset($this->request["REQUEST_URI"][0]) && !empty($this->request["REQUEST_URI"][0])) {
         $controlfilename = Functions::getPublicFileURL("../servlet/" . $this->request["REQUEST_URI"][0] . ".php");
         $viewfilename = $this->request["REQUEST_URI"][0] . ".html";
         if (is_file($controlfilename)) {
             include $controlfilename;
         } elseif (is_file($viewfilename)) {
             $this->showPage($viewfilename);
         } else {
             $this->showPage("404.html");
         }
     } else {
         if (is_file($defaultcontrolfilename)) {
             include $defaultcontrolfilename;
         } elseif (is_file($defaultviewfilename)) {
             include $defaultviewfilename;
         }
     }
     if (isset($redirectforlanguage)) {
         echo "<script>history.pushState('page', '', '" . Functions::getDefaultURL() . $this->getLanguage() . "/');</script>";
     }
 }
コード例 #3
0
 public static function getPublicFileURL($name = "index.php", $template = "", $lang = "")
 {
     if (empty($template)) {
         $template = Config::$DEFAULT_SERVLET_NAME;
     }
     $defaultdirectory = Config::$ROOT_SERVLET_PUBLIC . $template . "/";
     if (empty($lang)) {
         $directory = $defaultdirectory . Servlet::getLanguage() . "/";
         if (!is_dir($directory)) {
             $directory = $defaultdirectory . Config::$DEFAULT_LANGUAGE . "/";
             Servlet::removeLanguage();
         }
     }
     if (!isset($directory)) {
         $directory = $defaultdirectory;
     }
     $filename = $directory . $name;
     if (is_file($filename)) {
         return $filename;
     }
     return false;
 }
コード例 #4
0
ファイル: index.php プロジェクト: xcgpseud/chat
<?php

require_once "php/controllers/Servlet.php";
$servlet = new Servlet();
$servlet->processRequest();
コード例 #5
0
 public static function getAdminURL()
 {
     return Functions::getDefaultURL() . parent::getLanguage() . "/" . Config::$DEFAULT_SERVLET_NAME . "/";
 }