From 843c265400e65de5be62b7865d48cafa7762ceca Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Sat, 18 Jul 2009 05:14:33 +0000 Subject: [PATCH] Console response class added --- .gitattributes | 2 + inc/classes/main/response/console/.htaccess | 1 + .../console/class_ConsoleResponse.php | 127 ++++++++++++++++++ 3 files changed, 130 insertions(+) create mode 100644 inc/classes/main/response/console/.htaccess create mode 100644 inc/classes/main/response/console/class_ConsoleResponse.php diff --git a/.gitattributes b/.gitattributes index c55b41d8..c066f14d 100644 --- a/.gitattributes +++ b/.gitattributes @@ -431,6 +431,8 @@ inc/classes/main/resolver/controller/web/.htaccess -text inc/classes/main/resolver/controller/web/class_WebControllerResolver.php -text inc/classes/main/response/.htaccess -text inc/classes/main/response/class_BaseResponse.php -text +inc/classes/main/response/console/.htaccess -text +inc/classes/main/response/console/class_ConsoleResponse.php -text inc/classes/main/response/http/.htaccess -text inc/classes/main/response/http/class_HttpResponse.php -text inc/classes/main/response/image/.htaccess -text diff --git a/inc/classes/main/response/console/.htaccess b/inc/classes/main/response/console/.htaccess new file mode 100644 index 00000000..3a428827 --- /dev/null +++ b/inc/classes/main/response/console/.htaccess @@ -0,0 +1 @@ +Deny from all diff --git a/inc/classes/main/response/console/class_ConsoleResponse.php b/inc/classes/main/response/console/class_ConsoleResponse.php new file mode 100644 index 00000000..dcd25d37 --- /dev/null +++ b/inc/classes/main/response/console/class_ConsoleResponse.php @@ -0,0 +1,127 @@ + + * @version 0.0.0 + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Core Developer Team + * @license GNU GPL 3.0 or any newer version + * @link http://www.ship-simu.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * The extended headers are taken from phpMyAdmin setup tool, written by + * Michal Cihar , licensed under GNU GPL 2.0. + */ +class ConsoleResponse extends BaseResponse implements Responseable { + /** + * Protected constructor + * + * @return void + */ + protected function __construct () { + // Call parent constructor + parent::__construct(__CLASS__); + } + + /** + * Creates an object of this class + * + * @param $appInstance An instance of a manageable application + * @return $responseInstance A prepared instance of this class + */ + public final static function createConsoleResponse (ManageableApplication $appInstance) { + // Get a new instance + $responseInstance = new ConsoleResponse(); + + // Set the application instance + $responseInstance->setApplicationInstance($appInstance); + + // Initialize the template engine here + $responseInstance->initTemplateEngine($appInstance); + + // Return the prepared instance + return $responseInstance; + } + + /** + * Initializes the template engine instance + * + * @param $appInstance An instance of a manageable application + * @return void + */ + public final function initTemplateEngine (ManageableApplication $appInstance) { + $this->setTemplateInstance($this->prepareTemplateInstance($appInstance)); + } + + /** + * Adds a cookie to the response + * + * @param $cookieName Cookie's name + * @param $cookieValue Value to store in the cookie + * @param $encrypted Do some extra encryption on the value + * @param $expires Timestamp of expiration (default: configured) + * @return void + * @throws ResponseHeadersAlreadySentException If headers are already sent + */ + public function addCookie ($cookieName, $cookieValue, $encrypted = false, $expires = null) { + //* DEBUG: */ echo $cookieName.'='.$cookieValue."
\n"; + $this->partialStub('Naturally unimplemented in console response.'); + } + + /** + * Redirect to a configured URL. The URL can be absolute or relative. In + * case of relative URL it will be extended automatically. + * + * @param $configEntry The configuration entry which holds our URL + * @return void + * @throws ResponseHeadersAlreadySentException If headers are already sent + */ + public function redirectToConfiguredUrl ($configEntry) { + $this->partialStub('Naturally unimplemented in console response.'); + } + + /** + * Expires the given cookie if it is set + * + * @param $cookieName Cookie to expire + * @return void + */ + public function expireCookie ($cookieName) { + $this->partialStub('Naturally unimplemented in console response.'); + } + + /** + * Refreshs a given cookie. This will make the cookie live longer + * + * @param $cookieName Cookie to refresh + * @return void + */ + public function refreshCookie ($cookieName) { + $this->partialStub('Naturally unimplemented in console response.'); + } + + /** + * Getter for default command + * + * @return $defaultCommand Default command for this response + */ + public function getDefaultCommand () { + $defaultCommand = $this->getConfigInstance()->readConfig('default_web_command'); + return $defaultCommand; + } +} + +// [EOF] +?> -- 2.39.5