Exemplo n.º 1
0
 public function getHtmlForUrl(UrlRequestObject $urlRequestObject)
 {
     $this->addCSS();
     $this->addJS();
     $path = $urlRequestObject->getPath();
     if (isset($path[1])) {
         return $path[1];
     }
     return "Hund";
     //"<img src=\"" . $this->getAssetUrl() . "icons/bullet_arrow_down.png\" />";
 }
Exemplo n.º 2
0
 public function getCurrentObject(UrlRequestObject $urlRequestObject)
 {
     $params = $urlRequestObject->getParams();
     $id = $params[0];
     if (isset($id)) {
         if (!isset($GLOBALS["STEAM"])) {
             return null;
         }
         $object = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $id);
         if (!$object instanceof steam_object) {
             return null;
         }
         $type = getObjectType($object);
         if (array_search($type, array("gallery")) !== false) {
             return $object;
         }
     }
     return null;
 }
Exemplo n.º 3
0
 public function handleRequest($pathArray)
 {
     $frame = lms_portal::get_instance();
     //$frame->initialize(GUEST_NOT_ALLOWED, false);
     $frame->init_login(GUEST_ALLOWED, false);
     lms_steam::connect(STEAM_SERVER, STEAM_PORT, $frame->get_user()->get_login(), $frame->get_user()->get_password());
     $urlRequestObject = new UrlRequestObject();
     $urlRequestObject->setParams($pathArray);
     $command = new \Wave\Commands\Index();
     if ($command->validateData($urlRequestObject)) {
         $command->processData($urlRequestObject);
         try {
             $frameResponeObject = $command->frameResponse(new FrameResponseObject());
         } catch (steam_exception $e) {
             if ($e->get_code() === 300) {
                 die("no read access");
             }
         }
         $data = \Widgets\Widget::getData($frameResponeObject->getWidgets());
         echo $data["html"];
     }
 }
Exemplo n.º 4
0
 public function getCurrentObject(UrlRequestObject $urlRequestObject)
 {
     $params = $urlRequestObject->getParams();
     $id = $params[0];
     if (isset($id)) {
         if (!isset($GLOBALS["STEAM"])) {
             return null;
         }
         $object = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $id);
         if (!$object instanceof steam_object) {
             return null;
         }
         $type = getObjectType($object);
         if (array_search($type, array("referenceFolder", "container", "userHome", "groupWorkroom", "room", "document")) !== false) {
             return $object;
         }
     } else {
         $currentUser = $GLOBALS["STEAM"]->get_current_steam_user();
         $object = $currentUser->get_workroom();
         return $object;
     }
     return null;
 }
Exemplo n.º 5
0
 public function canHandleUrl(UrlRequestObject $urlRequestObject)
 {
     return strtolower($urlRequestObject->getFirstPathElement()) == "taggedfolder";
 }
Exemplo n.º 6
0
 public function canHandleUrl(UrlRequestObject $urlRequestObject)
 {
     return strtolower($urlRequestObject->getFirstPathElement()) == "worksheet";
 }
Exemplo n.º 7
0
 public function frameResponse(\FrameResponseObject $frameResponseObject)
 {
     $portal = \lms_portal::get_instance();
     $lms_user = $portal->get_user();
     $content = \Startpage::getInstance()->loadTemplate("startpage.template.html");
     if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["portal_values"])) {
         $portal_user = $GLOBALS["STEAM"]->get_current_steam_user();
         $portal_user->set_attribute("USER_LANGUAGE", $_POST["portal_values"]["USER_LANGUAGE"]);
         $lang_index = language_support::get_language_index();
         language_support::choose_language($lang_index[$_POST["portal_values"]["USER_LANGUAGE"]]);
         $cache = get_cache_function($portal_user->get_name());
         $cache->drop("lms_steam::user_get_profile", $portal_user->get_name());
         $cache->drop("lms_portal::get_menu_html", $portal_user->get_name(), TRUE);
         header("Location: " . $_POST["portal_values"]["redirect"]);
     }
     if ($lms_user->is_logged_in()) {
         header("Location: " . PATH_URL . "home/");
         exit;
     } else {
         $content->setCurrentBlock("BLOCK_SIGN_IN");
         $content->setVariable("LOGIN_FORM_ACTION", URL_SIGNIN);
         $content->setVariable("LABEL_LOGIN", gettext("Login"));
         $content->setVariable("LABEL_PASSWORD", gettext("Password"));
         $content->setVariable("SIGN_IN_BUTTON_TEXT", gettext("Sign in"));
         $content->parse("BLOCK_SIGN_IN");
         if (STARTPAGE_AS_PORTAL) {
             $rawHtml = new \Widgets\RawHtml();
             $rawHtml->setHtml($content->get());
             $urlRequestObject = new \UrlRequestObject();
             $urlRequestObject->setNamespace("Portal");
             $urlRequestObject->setCommand("Index");
             $urlRequestObject->setParams(array(STARTPAGE_AS_PORTAL_ID));
             $command = new \Portal\Commands\Index();
             if ($command->validateData($urlRequestObject)) {
                 $command->processData($urlRequestObject);
                 $portalFrameResponeObject = $command->frameResponse(new \FrameResponseObject());
             }
             $frameResponseObject->addWidget($rawHtml);
             $frameResponseObject->addWidget($portalFrameResponeObject->getWidgets());
         } else {
             $startpage_text_path = "./styles/" . STYLE . "/etc/startpage_text.xml";
             if (file_exists($startpage_text_path)) {
                 $startpage_text = simplexml_load_file($startpage_text_path, null, LIBXML_NOCDATA);
                 $content->setVariable("STARTPAGE_TEXT_LEFT", $startpage_text->left);
                 $content->setVariable("STARTPAGE_TEXT_CENTER", $startpage_text->center);
                 $content->setVariable("STARTPAGE_TEXT_RIGHT", $startpage_text->right);
             } else {
                 $content->setVariable("STARTPAGE_TEXT_LEFT", "Konnte startpage_text.xml nicht finden.");
                 $content->setVariable("STARTPAGE_TEXT_CENTER", "");
                 $content->setVariable("STARTPAGE_TEXT_RIGHT", "");
             }
             $rawHtml = new \Widgets\RawHtml();
             $code = \Startpage::getInstance()->readJS();
             $code = str_replace("{STARTPAGE_IMAGE_TEXT_LONG}", STARTPAGE_IMAGE_TEXT_LONG, $code);
             $code = str_replace("{STARTPAGE_IMAGE_TEXT_MEDIUM}", STARTPAGE_IMAGE_TEXT_MEDIUM, $code);
             $code = str_replace("{STARTPAGE_IMAGE_TEXT_SHORT}", STARTPAGE_IMAGE_TEXT_SHORT, $code);
             $rawHtml->setJs($code);
             $rawHtml->setHtml($content->get());
             $frameResponseObject->addWidget($rawHtml);
         }
         $frameResponseObject->setTitle("");
         return $frameResponseObject;
     }
 }
Exemplo n.º 8
0
 public function handleRequest($pathArray)
 {
     // handel Frame Requests
     $urlRequestObject = new UrlRequestObject();
     if (isset($pathArray[0])) {
         $urlRequestObject->setNamespace($pathArray[0]);
     }
     if (isset($pathArray[1])) {
         $urlRequestObject->setCommand($pathArray[1]);
     }
     if (count($pathArray) > 2) {
         $params = array();
         for ($i = 2; $i < count($pathArray); $i++) {
             $params[] = $pathArray[$i];
         }
         $urlRequestObject->setParams($params);
     }
     $namespaceExtension = ExtensionMaster::getInstance()->getExtensionForNamespace($urlRequestObject->getNamespace());
     if (isset($namespaceExtension)) {
         if ($urlRequestObject->getCommand() == "") {
             $urlRequestObject->setCommand($namespaceExtension->getDefaultCommandName($urlRequestObject->getNamespace()));
         }
         $command = $namespaceExtension->getCommand($urlRequestObject->getCommand());
         if ($command == null) {
             if (strtolower($urlRequestObject->getCommand()) == "asset") {
                 $command = new Asset();
             } else {
                 if (strtolower($urlRequestObject->getCommand()) == "css") {
                     $command = new Css();
                 } else {
                     if (strtolower($urlRequestObject->getCommand()) == "js") {
                         $command = new Js();
                     }
                 }
             }
         }
         if ($command == null) {
             if (DEVELOPMENT_MODE) {
                 throw new Exception("Command {$urlRequestObject->getCommand()} not found.");
             } else {
                 ExtensionMaster::getInstance()->send404Error();
             }
         }
         //init commands extension
         $command->getExtension();
         if ($command->httpAuth($urlRequestObject)) {
             include_once PATH_LIB . "http_auth_handling.inc.php";
             if (!http_auth()) {
                 die("Bitte anmelden.");
             }
         }
         $frame = lms_portal::get_instance();
         if ($command instanceof IResourcesCommand) {
             if ($command->validateData($urlRequestObject)) {
                 if ($command->isGuestAllowed($urlRequestObject)) {
                     $frame->initialize(GUEST_ALLOWED, $command->workOffline($urlRequestObject));
                 } else {
                     $frame->initialize(GUEST_NOT_ALLOWED, $command->workOffline($urlRequestObject));
                 }
                 ExtensionMaster::getInstance()->getExtensionById("Chronic")->setCurrentObject($namespaceExtension->getCurrentObject($urlRequestObject));
                 $command->processData($urlRequestObject);
                 $command->resourcesResponse();
                 die;
             }
         } else {
             if ($command instanceof IFrameCommand) {
                 if ($command->validateData($urlRequestObject)) {
                     if ($command->isGuestAllowed($urlRequestObject)) {
                         $frame->initialize(GUEST_ALLOWED, $command->workOffline($urlRequestObject));
                     } else {
                         $frame->initialize(GUEST_NOT_ALLOWED, $command->workOffline($urlRequestObject));
                     }
                     ExtensionMaster::getInstance()->getExtensionById("Chronic")->setCurrentObject($namespaceExtension->getCurrentObject($urlRequestObject));
                     $command->processData($urlRequestObject);
                     $frameResponeObject = $command->frameResponse(new FrameResponseObject());
                     if ($command->embedContent($urlRequestObject)) {
                         $data = \Widgets\Widget::getData($frameResponeObject->getWidgets());
                         $frame->add_css_style($data["css"]);
                         $frame->add_javascript_code("Widgets", $data["js"]);
                         $frame->set_page_main($frameResponeObject->getHeadline(), $data["html"] . "<script type=\"text/javascript\">{$data["postjs"]}</script>", "");
                         $frame->set_page_title($frameResponeObject->getTitle());
                         $frame->set_confirmation($frameResponeObject->getConfirmText());
                         $frame->set_problem_description($frameResponeObject->getProblemDescription(), $frameResponeObject->getProblemSolution());
                         $frame->show_html();
                         die;
                     } else {
                         $data = \Widgets\Widget::getData($frameResponeObject->getWidgets());
                         echo $data["html"];
                         die;
                     }
                 }
             }
         }
         if (DEVELOPMENT_MODE) {
             throw new Exception("Command {$urlRequestObject->getCommand()} execution error.");
         } else {
             ExtensionMaster::getInstance()->send404Error();
         }
     }
     ExtensionMaster::getInstance()->send404Error();
 }