openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit b7ce695bef2518b1d1cb243746eb7508ffff1fc4
parent eae6c427d77f23ee191425d8a8d76bc462ba98f3
Author: dankert <devnull@localhost>
Date:   Thu, 23 Dec 2010 22:23:59 +0100

Refactoring: Umstellung der kompletten Oberfläche von Frames auf framefreie Darstellung. Preview! Noch funktioniert nicht alles, wie es soll.

Diffstat:
actionClasses/Action.class.php | 62++++++++++++++++++++++++++++++++++++++++++++------------------
actionClasses/FileAction.class.php | 20+++++++++++++++-----
actionClasses/FileAction.ini.php | 14+++++++++-----
actionClasses/FolderAction.ini.php | 17+++++++++++------
actionClasses/IndexAction.class.php | 28+++++++++++++++++-----------
actionClasses/IndexAction.ini.php | 15++++++---------
actionClasses/LoginAction.class.php | 87-------------------------------------------------------------------------------
actionClasses/PageAction.class.php | 13++++++++++++-
actionClasses/PageAction.ini.php | 15+++++++++------
actionClasses/TitleAction.class.php | 4++--
actionClasses/TreeAction.class.php | 72++++++++----------------------------------------------------------------
do.php | 390++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------
objectClasses/File.class.php | 5++++-
objectClasses/Page.class.php | 8++++----
serviceClasses/Html.class.php | 4++++
serviceClasses/ProjectTree.class.php | 73++++++++++++++++++++++++++++++++++++-------------------------------------
serviceClasses/TemplateEngine.class.php | 7+++++--
serviceClasses/include.inc.php | 14+++++++-------
textClasses/include.inc.php | 2+-
themes/default/css/base.css | 124++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
themes/default/include/elements.ini.php | 5+++--
themes/default/include/html/button.inc.php | 12++++++++++++
themes/default/include/html/input.inc.php | 4++--
themes/default/include/html/insert.inc.php | 4++++
themes/default/include/html/link.inc.php | 9+++++++--
themes/default/include/html/page-end.inc.php | 5++---
themes/default/include/html/page.inc.php | 38++------------------------------------
themes/default/include/html/part-end.inc.php | 3+++
themes/default/include/html/part.inc.php | 15+++++++++++++++
themes/default/include/html/window-end.inc.php | 2--
themes/default/include/html/window.inc.php | 89+++++++++++++++++++++++++++++++++++++++----------------------------------------
themes/default/pages/html/index/login.tpl.php | 848+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
themes/default/pages/view.php | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
themes/default/templates/file/show.tpl.src.php | 6++++++
themes/default/templates/object/rights.tpl.src.php | 6++++--
themes/default/templates/page/prop.tpl.src.php | 4++++
themes/default/templates/page/show.tpl.src.php | 6++++++
themes/default/templates/profile/edit.tpl.src.php | 4++++
themes/default/templates/title/show.tpl.src.php | 76++++++++++++++++++++++++++++++++++------------------------------------------
themes/default/templates/tree/show.tpl.src.php | 62+++++++++++++++++++++++++++++++-------------------------------
40 files changed, 1687 insertions(+), 537 deletions(-)

diff --git a/actionClasses/Action.class.php b/actionClasses/Action.class.php @@ -57,6 +57,7 @@ class Action var $writable; var $publishing; var $actionConfig; + var $refresh; /** * Aktuell angemeldeter Benutzer.<br> @@ -88,6 +89,8 @@ class Action $this->templateVars['mode'] = $this->getRequestVar('mode'); header('Content-Language: '.$conf['language']['language_code']); + + $this->refresh = false; } @@ -319,29 +322,29 @@ class Action { $db = db_connection(); - if ( isset($this->actionConfig[$this->subActionName]['direct']) ) - { - if ( is_object( $db ) ) - $db->commit(); - exit; // Die Ausgabe ist bereits erfolgt (z.B. Bin�rdateien o. WebDAV) - } +// if ( isset($this->actionConfig[$this->subActionName]['direct']) ) +// { +// if ( is_object( $db ) ) +// $db->commit(); +// exit; // Die Ausgabe ist bereits erfolgt (z.B. Bin�rdateien o. WebDAV) +// } // Pruefen, ob HTTP-Header gesendet wurden. Dies deutet stark darauf hin, dass eine // PHP-Fehlermeldung ausgegeben wurde. In diesem Fall wird hier abgebrochen. // Weitere Ausgabe wuerde keinen Sinn machen, da wir nicht wissen, was // passiert ist. - if ( headers_sent() ) - { - Http::serverError("Some server error messages occured - see above - CMS canceled."); - } +// if ( headers_sent() ) +// { +// Http::serverError("Some server error messages occured - see above - CMS canceled."); +// } - if ( is_object( $db ) ) - $db->commit(); +// if ( is_object( $db ) ) +// $db->commit(); $expires = substr(gmdate('r'),0,-5).'GMT'; - header('Expires: ' .$expires ); + //header('Expires: ' .$expires ); - header('X-Content-Security-Policy: '.'allow *; script-src \'self\'; options \'inline-script\''); + //header('X-Content-Security-Policy: '.'allow *; script-src \'self\'; options \'inline-script\''); $httpAccept = getenv('HTTP_ACCEPT'); @@ -470,9 +473,19 @@ class Action unset($te); } - // Einbinden des Templates - require( $tpl_dir.$tplFileName ); - + $iFile = $tpl_dir.$tplFileName; + //try + //{ + if ( is_file($iFile)) + // Einbinden des Templates + require_once( $iFile ); + else + echo "File not found: $iFile"; + //} + //catch( Exception $e ) + //{ + // echo "Error occured:".$e; + //} } @@ -501,7 +514,7 @@ class Action function userIsAdmin() { $user = Session::getUser(); - return $user->isAdmin; + return is_object($user) && $user->isAdmin; } @@ -540,6 +553,7 @@ class Action */ function lastModified( $time ) { + return; $user = Session::getUser(); if ( $user->loginDate > $time && !isset($this->actionConfig[$this->subActionName]['direct']) ) // Falls Benutzer-Login nach letzter �nderung. @@ -690,6 +704,18 @@ class Action /** + * Sorgt dafür, dass alle anderen Views aktualisiert werden. + * + * Diese Methode sollte dann aufgerufen werden, wenn Objekte geändert werden + * und dies Einfluss auf andere Views hat. + */ + function refresh() + { + $this->refresh = true; + } + + + /** * Stellt fest, ob sich die Anzeige im Editier-Modus befindet. * * @return boolean diff --git a/actionClasses/FileAction.class.php b/actionClasses/FileAction.class.php @@ -97,13 +97,24 @@ class FileAction extends ObjectAction $this->addNotice($this->file->getType(),$this->file->name,'PROP_SAVED','ok'); } - + + /** * Anzeigen des Inhaltes, der Inhalt wird samt Header direkt * auf die Standardausgabe geschrieben */ function show() { + $this->setTemplateVar('preview_url',Html::url('file','preview',$this->file->objectid,array('target'=>'none') ) ); + } + + + /** + * Anzeigen des Inhaltes, der Inhalt wird samt Header direkt + * auf die Standardausgabe geschrieben + */ + function preview() + { $this->lastModified( $this->file->lastchangeDate ); if ( $this->file->extension == 'gz' ) @@ -118,7 +129,7 @@ class FileAction extends ObjectAction $ext = substr($this->file->filename,$pos+1); $ext = strtolower($ext); - + if ( !empty($mime_types[$ext]) ) $mime_type = $mime_types[$ext]; else @@ -134,7 +145,6 @@ class FileAction extends ObjectAction header('Content-Type: '.$this->file->mimeType() ); } - header('X-File-Id: ' .$this->file->fileid ); header('X-Id: ' .$this->file->id ); @@ -144,9 +154,9 @@ class FileAction extends ObjectAction header('Content-Disposition: inline; filename='.$this->file->filenameWithExtension() ); header('Content-Transfer-Encoding: binary' ); header('Content-Description: '.$this->file->name ); - + $this->file->write(); // Bild aus Datenbank laden - + // Groesse des Bildes in Bytes // Der Browser hat so die Moeglichkeit, einen Fortschrittsbalken zu zeigen header('Content-Length: '.filesize($this->file->tmpfile()) ); diff --git a/actionClasses/FileAction.ini.php b/actionClasses/FileAction.ini.php @@ -3,6 +3,9 @@ goto=show [show] +menu=edit + +[preview] direct=true [edit] @@ -78,7 +81,8 @@ menu=edit write=true [menu] -edit=edit,editvalue,compress,uncompress,extract -prop=prop,size -rights=rights,aclform -pub=pub- \ No newline at end of file +actions=show,edit,editvalue,compress,uncompress,extract,pub,prop,size,rights,aclform +edit=show,edit,editvalue,compress,uncompress,extract,pub,prop,size,rights,aclform +prop=show,edit,editvalue,compress,uncompress,extract,pub,prop,size,rights,aclform +rights=show,edit,editvalue,compress,uncompress,extract,pub,prop,size,rights,aclform +pub=show,edit,editvalue,compress,uncompress,extract,pub,prop,size,rights,aclform+ \ No newline at end of file diff --git a/actionClasses/FolderAction.ini.php b/actionClasses/FolderAction.ini.php @@ -109,8 +109,14 @@ goto=order goto=order [menu] -pub=pub -show=show,select,order -new=create,createfolder,createfile,createpage,createlink -prop=prop -rights=rights,aclform- \ No newline at end of file +;pub=pub +;show=show,select,order +;new=create,createfolder,createfile,createpage,createlink +;prop=prop +;rights=rights,aclform + +pub=show,select,order,create,pub,prop,rights,aclform +show=show,select,order,create,pub,prop,rights,aclform +new=show,select,order,create,pub,prop,rights,aclform +prop=show,select,order,create,pub,prop,rights,aclform +rights=show,select,order,create,pub,prop,rights,aclform diff --git a/actionClasses/IndexAction.class.php b/actionClasses/IndexAction.class.php @@ -170,7 +170,7 @@ class IndexAction extends Action * Hier nie "304 not modified" setzen, da sonst keine * Login-Fehlermeldung erscheinen kann */ - function showlogin() + function loginView() { global $conf; $sso = $conf['security']['sso']; @@ -617,7 +617,7 @@ class IndexAction extends Action /** * Login. */ - function login() + function loginAction() { global $conf; @@ -683,16 +683,20 @@ class IndexAction extends Action $this->addValidationError('login_name' ,''); $this->addValidationError('login_password',''); } - - $this->callSubAction('showlogin'); + + Logger::debug("Login failed for user '$loginName'"); + + $this->callSubAction('login'); return; } else { + Logger::debug("Login successful for user '$loginName'"); + // Anmeldung erfolgreich. if ( config('security','renew_session_login') ) $this->recreateSession(); - + $user = Session::getUser(); $this->addNotice('user',$user->name,'LOGIN_OK',OR_NOTICE_OK,array('name'=>$user->fullname)); @@ -700,8 +704,8 @@ class IndexAction extends Action $object = Session::getObject(); // Falls noch kein Objekt ausgew�hlt, dann das zuletzt ge�nderte benutzen. - if ( !is_object($object) && @$conf['login']['start']['start_lastchanged_object'] ) - { + if ( !is_object($object) && @$conf['login']['start']['start_lastchanged_object'] ) + { $objectid = Value::getLastChangedObjectByUserId($user->userid); if ( Object::available($objectid)) { @@ -721,8 +725,10 @@ class IndexAction extends Action $model = new Model( isset($vars[REQ_PARAM_MODEL_ID])&&Model::available($vars[REQ_PARAM_MODEL_ID])?$vars[REQ_PARAM_MODEL_ID]:$project->getDefaultModelId() ); $model->load(); Session::setProjectModel( $model ); - } - } + } + } + + $this->refresh(); // Benutzer ist angemeldet: Andere Views könnte das interessieren. } @@ -774,7 +780,7 @@ class IndexAction extends Action session_unset(); - if ( @$conf['theme']['compiler']['compile_at_logout']) + if ( @$conf['theme']['compiler']['compile_at_logout'] ) { foreach( $conf['action'] as $actionName => $actionConfig ) { @@ -1290,7 +1296,7 @@ class IndexAction extends Action // "Administration" nat�rlich nur f�r Administratoren. return $this->userIsAdmin(); - case 'showlogin': + case 'login': return !@$conf['login']['nologin']; case 'logout': diff --git a/actionClasses/IndexAction.ini.php b/actionClasses/IndexAction.ini.php @@ -1,12 +1,13 @@ admin=false + [default] goto=show [logout] guest=true -goto=showlogin +goto=login [switchuser] goto=show @@ -68,15 +69,12 @@ menu=login goto=showlogin guest=true -[showlogin] -menu=login -guest=true - [administration] goto=show [login] -goto=show +menu=login +write=true guest=true [openid] @@ -98,5 +96,5 @@ goto=projectmenu guest=true [menu] -login=showlogin,register,password -menu=applications,projectmenu,administration,logout- \ No newline at end of file +login=login,register,password,applications,projectmenu,administration,logout +menu =login,register,password,applications,projectmenu,administration,logout diff --git a/actionClasses/LoginAction.class.php b/actionClasses/LoginAction.class.php @@ -1,86 +0,0 @@ -<?php -// --------------------------------------------------------------------------- -// $Id$ -// --------------------------------------------------------------------------- -// OpenRat Content Management System -// Copyright (C) 2002-2004 Jan Dankert, cms@jandankert.de -// -// 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 2 -// 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, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// --------------------------------------------------------------------------- -// $Log$ -// Revision 1.4 2006-01-11 22:51:51 dankert -// Funktion login() deaktiviert -// -// Revision 1.3 2004/12/15 23:25:22 dankert -// *** empty log message *** -// -// Revision 1.2 2004/05/02 14:49:37 dankert -// Einf?gen package-name (@package) -// -// Revision 1.1 2004/04/24 15:14:52 dankert -// Initiale Version -// -// Revision 1.2 2003/10/02 20:56:17 dankert -// Benutzer entfernen -// -// Revision 1.1 2003/09/29 18:18:21 dankert -// erste Version -// -// --------------------------------------------------------------------------- - - -/** - * Action-Klasse zum Darstellen der Loginmaske - * @author $Author$ - * @version $Revision$ - * @package openrat.actions - */ -class LoginAction extends Action -{ - var $defaultSubAction = 'login'; - - function LoginAction() - { - } - - - function blank() - { - } - - -// function login() -// { -// global $conf; -// -// -// foreach( $conf['database'] as $dbname=>$dbconf ) -// { -// if ( $dbconf['enabled'] ) -// $dbids[$dbname] = $dbconf['comment']; -// } -// -// $this->setTemplateVar( 'dbids',$dbids ); -// -// if ( $this->getSessionVar('dbid') != '' ) -// $this->setTemplateVar('actdbid',$this->getSessionVar('dbid')); -// $this->setTemplateVar('actdbid',$conf['database']['default']); -// -// $this->setTemplateVar('loginmessage',$this->getSessionVar('loginmessage')); -// $this->setSessionVar('loginmessage',''); -// -// $this->forward('login'); -// } -}- \ No newline at end of file diff --git a/actionClasses/PageAction.class.php b/actionClasses/PageAction.class.php @@ -595,6 +595,15 @@ class PageAction extends ObjectAction */ function show() { + $this->setTemplateVar('preview_url',Html::url('page','preview',$this->page->objectid,array('target'=>'none') ) ); + } + + /** + * Seite anzeigen + */ + function preview() + { + Logger::debug("preview von seite"); // Seite definieren $this->page->load(); $this->page->generate(); @@ -606,6 +615,8 @@ class PageAction extends ObjectAction $language = Session::getProjectLanguage(); header('Content-Language: '.$language->isoCode); + Logger::debug("preview von seite: ".$this->page->tmpfile() ); + // Wenn if ( ( config('publish','enable_php_in_page_content')=='auto' && $this->page->template->extension == 'php') || config('publish','enable_php_in_page_content')===true ) @@ -614,7 +625,7 @@ class PageAction extends ObjectAction readfile( $this->page->tmpfile() ); } - + /** * Die Seite im Bearbeitungsmodus anzeigen diff --git a/actionClasses/PageAction.ini.php b/actionClasses/PageAction.ini.php @@ -10,6 +10,9 @@ goto=show ;target=prop [show] +menu=elements + +[preview] direct=true [edit] @@ -69,8 +72,8 @@ goto=rights [menu] -pub=pub -elements=el,form -rights=rights,aclform -src=src -prop=prop,changetemplate- \ No newline at end of file +pub=show,pub,el,form,rights,prop,changetemplate,src +elements=show,pub,el,form,rights,prop,changetemplate,src +rights=show,pub,el,form,rights,prop,changetemplate,src +src=show,pub,el,form,rights,prop,changetemplate,src +prop=show,pub,el,form,rights,prop,changetemplate,src+ \ No newline at end of file diff --git a/actionClasses/TitleAction.class.php b/actionClasses/TitleAction.class.php @@ -52,8 +52,8 @@ class TitleAction extends Action $this->setTemplateVar('modelname',$model->name); // Urls zum Benutzerprofil und zum Abmelden - $this->setTemplateVar('profile_url',Html::url( 'profile' )); - $this->setTemplateVar('logout_url' ,Html::url( 'index','logout' )); + //$this->setTemplateVar('profile_url',Html::url( 'profile' )); + //$this->setTemplateVar('logout_url' ,Html::url( 'index','logout' )); if ( Session::get('showtree') ) { diff --git a/actionClasses/TreeAction.class.php b/actionClasses/TreeAction.class.php @@ -1,7 +1,5 @@ <?php // --------------------------------------------------------------------------- -// $Id$ -// --------------------------------------------------------------------------- // DaCMS Content Management System // Copyright (C) 2002 Jan Dankert, jandankert@jandankert.de // @@ -19,53 +17,6 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // --------------------------------------------------------------------------- -// $Log$ -// Revision 1.14 2009-03-22 18:47:21 dankert -// Korrektur Ermittlung des Col-Spans -// -// Revision 1.13 2009-03-03 21:08:09 dankert -// Umstellung der Baumanzeige auf Template-System (Ausbau RAW-Template). -// -// Revision 1.12 2007-11-08 23:11:58 dankert -// SubAction "load()" reaktiviert. -// -// Revision 1.11 2007-10-29 23:29:17 dankert -// Konstanten f?r Request-Variablen. -// -// Revision 1.10 2004/12/18 00:16:15 dankert -// language_read() entfernt -// -// Revision 1.9 2004/12/15 23:24:58 dankert -// Html::url()-Parameter angepasst -// -// Revision 1.8 2004/11/27 13:08:49 dankert -// Benutzen "id"-Attribut -// -// Revision 1.7 2004/11/10 22:40:49 dankert -// Benutzen der Session-Klasse -// -// Revision 1.6 2004/09/30 20:28:30 dankert -// Titel bei ?ffnen/Schlie?en von Baumzweigen -// -// Revision 1.5 2004/09/07 21:12:30 dankert -// F?llen des Navigationsbaumes mit neuen Klassen -// -// Revision 1.4 2004/05/02 14:49:37 dankert -// Einf?gen package-name (@package) -// -// Revision 1.3 2004/04/25 17:53:37 dankert -// Neue Methode openall() -// -// Revision 1.2 2004/04/25 12:50:11 dankert -// Korrektur: Projektliste -// -// Revision 1.1 2004/04/24 15:14:52 dankert -// Initiale Version -// -// Revision 1.1 2003/09/29 18:19:48 dankert -// erste Version -// -// --------------------------------------------------------------------------- /** * Action-Klasse zum Laden/Anzeigen des Navigations-Baumes @@ -76,7 +27,6 @@ class TreeAction extends Action { - var $defaultSubAction = 'load'; var $tree; @@ -88,8 +38,6 @@ class TreeAction extends Action $this->tree = Session::getTree(); $this->tree->all(); Session::setTree( $this->tree ); - - $this->callSubAction('show'); } @@ -98,8 +46,6 @@ class TreeAction extends Action $this->tree = Session::getTree(); $this->tree->refresh(); Session::setTree( $this->tree ); - - $this->callSubAction('show'); } @@ -111,8 +57,6 @@ class TreeAction extends Action $this->tree = Session::getTree(); $this->tree->open( $this->getRequestId() ); Session::setTree( $this->tree ); - - $this->callSubAction('show'); } @@ -124,8 +68,6 @@ class TreeAction extends Action $this->tree = Session::getTree(); $this->tree->close( $this->getRequestId() ); Session::setTree( $this->tree ); - - $this->callSubAction('show'); } @@ -272,13 +214,15 @@ class TreeAction extends Action */ function show() { - global - $tree, - $SESS, - $tree_last, - $var; + $this->tree = Session::getTree(); + + if ( $this->tree == null ) + { + Logger::debug("Reloading Tree..."); + $this->load(); + } - $var['zeilen'] = array(); + $var = array(); $var['zeilen'] = $this->outputElement( 0,0,array() ); $this->setTemplateVars( $var ); diff --git a/do.php b/do.php @@ -68,6 +68,7 @@ define('REQ_PARAM_PROJECT_ID' ,'projectid' ); define('REQ_PARAM_ELEMENT_ID' ,'elementid' ); define('REQ_PARAM_TEMPLATE_ID' ,'templateid' ); define('REQ_PARAM_DATABASE_ID' ,'dbid' ); +define('REQ_PARAM_TARGET' ,'target' ); require_once( "functions/request.inc.php" ); @@ -221,154 +222,337 @@ else $subaction = ''; } -$actionClassName = strtoupper(substr($action,0,1)).substr($action,1).'Action'; -if ( !isset($conf['action'][$actionClassName]) ) - Http::serverError("Action '$action' is undefined."); - require( OR_ACTIONCLASSES_DIR.'/Action.class.php' ); -require( OR_ACTIONCLASSES_DIR.'/ObjectAction.class.php' ); -require( OR_ACTIONCLASSES_DIR.'/'.$actionClassName.'.class.php' ); - -// Erzeugen der Action-Klasse -$do = new $actionClassName; -$do->actionConfig = $conf['action'][$actionClassName]; -$do->actionClassName = $actionClassName; -$do->actionName = $action; -if ( $subaction == '' ) - $subaction = $do->actionConfig['default']['goto']; - -$do->subActionName = $subaction; +require( OR_ACTIONCLASSES_DIR.'/ObjectAction.class.php' ); -$do->init(); +// Aktualisiere die aktuellen Views +$views = Session::get('views'); -if ( !isset($do->actionConfig[$subaction]) ) +if ( !is_array($views) ) { - Logger::warn( "Action $action has no configured method named $subaction"); - Http::serverError("Action '$action' has no accessable method '$subaction'."); - exit; + $views = array( 'tree' => array('action'=>'tree' ,'subaction'=>'show' ), + 'header' => array('action'=>'title','subaction'=>'show' ), + 'content'=> array('action'=>'index','subaction'=>'login') ); } - -$subactionConfig = $do->actionConfig[$subaction]; -//Logger::trace("controller is calling subaction '$subaction'"); - -// Eine Subaktion ohne "guest=true" verlangt einen angemeldeten Benutzer. -if ( !isset($subactionConfig['guest']) || !$subactionConfig['guest'] ) - if ( !is_object($do->currentUser) ) - { - Logger::debug('No session and no guest action occured, maybe session expired'); - Http::notAuthorized( lang('SESSION_EXPIRED') ); - exit; - } - -// Eine Aktion mit "admin=true" verlangt einen Administrator als Benutzer. -if ( isset($do->actionConfig['admin']) && $do->actionConfig['admin'] ) - if ( !$do->currentUser->isAdmin ) - { - Logger::debug('Admin action, but user '.$do->currentUser->name.' is not an admin'); - Http::notAuthorized( lang('SESSION_EXPIRED') ); - exit; - } - -// Aktuelle Subaction in Sitzung merken -if ( isset($do->actionConfig[$subaction]['menu']) || isset($do->actionConfig[$subaction]['direct']) ) -{ - $sl = Session::getSubaction(); - if ( !is_array($sl)) - $sl = array(); - $sl[$action] = $subaction; - Session::setSubaction( $sl ); +// Wenn 'target' übergeben wurde und als View bekannt ist +if ( isset($REQ[REQ_PARAM_TARGET]) && isset($views[$REQ[REQ_PARAM_TARGET]]) ) { + // Mit der aktuellen Aktion die Views aktualisieren. + $views[$REQ[REQ_PARAM_TARGET]] = array('action'=>$action,'subaction'=>$subaction); } - -// Alias-Methode aufrufen. -if ( isset($do->actionConfig[$do->subActionName]['alias']) ) -{ - $subaction = $do->actionConfig[$do->subActionName]['alias']; -// $do->subActionName = $subaction; -} + +$viewCache = Session::get('view_cache'); + +$viewCache = array(); // Notlösung! -// Alias-Methode aufrufen. -if ( isset($do->actionConfig[$do->subActionName]['write']) ) +// Schritt 1: +// Zuerst die Schreibaktion durchführen, erst anschließend folgenen die Views. +// if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) + +$actionClassName = strtoupper(substr($action,0,1)).substr($action,1).'Action'; + +if ( !isset($conf['action'][$actionClassName]) ) + Http::serverError("Action '$action' is undefined."); + +require_once( OR_ACTIONCLASSES_DIR.'/'.$actionClassName.'.class.php' ); + +// Wenn +// - *Action-Methode zum Schreiben vorhanden und POST-Request +// oder +// - Methode mit direkter Ausgabe +if ( ( isset($conf['action'][$actionClassName][$subaction]['write']) && $_SERVER['REQUEST_METHOD'] == 'POST' ) + || isset($conf['action'][$actionClassName][$subaction]['direct'] ) ) { - //Html::debug($_SERVER); - if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) + if ($_SERVER['REQUEST_METHOD'] == 'POST') + $viewCache = array(); // Cache löschen. + + // Erzeugen der Action-Klasse + $do = new $actionClassName; + $do->actionConfig = $conf['action'][$actionClassName]; + $do->actionClassName = $actionClassName; + $do->actionName = $action; + if ( $subaction == '' ) + $subaction = $do->actionConfig['default']['goto']; + + $do->subActionName = $subaction; + + + $do->init(); + + if ( !isset($do->actionConfig[$subaction]) ) { - $subactionAction = $subaction.'Action'; - $do->$subactionAction(); + Logger::warn( "Action $action has no configured method named $subaction"); + Http::serverError("Action '$action' has no accessable method '$subaction'."); + exit; + } - if ( $conf['interface']['redirect'] ) + $subactionConfig = $do->actionConfig[$subaction]; + //Logger::trace("controller is calling subaction '$subaction'"); + + // Eine Subaktion ohne "guest=true" verlangt einen angemeldeten Benutzer. + if ( !isset($subactionConfig['guest']) || !$subactionConfig['guest'] ) + if ( !is_object($do->currentUser) ) { - // Wenn Validierungsfehler aufgetrete sind, auf keinen Fall einen Redirect machen, da sonst - // im nächste Request die Eingabedaten fehlen. - if ( empty($do->templateVars['errors']) ) - { - header( 'HTTP/1.0 303 See other'); - // Absoluten Pfad kann auch der Client erg�nzen. - header( 'Location: '.Html::url($action,$subaction,$do->getRequestId()) ); - exit; - } + Logger::debug('No session and no guest action occured, maybe session expired'); + //Http::notAuthorized( lang('SESSION_EXPIRED') ); + $do->templateVars['error'] = 'not logged in'; + continue; + } + + // Eine Aktion mit "admin=true" verlangt einen Administrator als Benutzer. + if ( isset($do->actionConfig['admin']) && $do->actionConfig['admin'] ) + if ( !$do->currentUser->isAdmin ) + { + Logger::debug('Admin action, but user '.$do->currentUser->name.' is not an admin'); + //Http::notAuthorized( lang('SESSION_EXPIRED') ); + $do->templateVars['error'] = 'no admin'; + continue; } + + + // Aktuelle Subaction in Sitzung merken + if ( isset($do->actionConfig[$subaction]['menu']) ) + { + $sl = Session::getSubaction(); + if ( !is_array($sl)) + $sl = array(); + $sl[$action] = $subaction; + Session::setSubaction( $sl ); } - $subactionView = $subaction.'View'; - $do->$subactionView(); -} -else -{ - // Aufruf der Subaction - $do->$subaction(); -} + + // Alias-Methode aufrufen. + if ( isset($do->actionConfig[$do->subActionName]['alias']) ) + { + $subaction = $do->actionConfig[$do->subActionName]['alias']; + } - -// Aufruf der n�chsten Subaction (falls vorhanden) -if ( isset($do->actionConfig[$do->subActionName]['goto']) ) -{ - /* Achtung: Redirect fuehrt zu Problemen beim Login sowie der Anzeige von Notices */ + + + if ( isset($do->actionConfig[$do->subActionName]['write']) ) + $subactionAction = $subaction.'Action'; + else + $subactionAction = $subaction; + Logger::debug("Executing $actionClassName::$subactionAction"); + + $do->$subactionAction(); + + if ( isset($do->actionConfig[$do->subActionName]['direct']) ) + exit; + if ( $conf['interface']['redirect'] ) { // Wenn Validierungsfehler aufgetrete sind, auf keinen Fall einen Redirect machen, da sonst - // im naechsten Request die Eingabedaten fehlen. + // im nächste Request die Eingabedaten fehlen. if ( empty($do->templateVars['errors']) ) { - $subActionName = $do->actionConfig[$do->subActionName]['goto']; header( 'HTTP/1.0 303 See other'); - // Absoluten Pfad kann auch der Client ergaenzen. - header( 'Location: '.Html::url($action,$do->actionConfig[$do->subActionName]['goto'],$do->getRequestId()) ); + // Absoluten Pfad kann auch der Client erg�nzen. + header( 'Location: '.Html::url($action,$subaction,$do->getRequestId()) ); exit; } } - - $subActionName = $do->actionConfig[$do->subActionName]['goto']; +} + + +// Schritt 2: +// Alle Views durchlaufen +foreach( $views as $view=>$viewConfig ) +{ + $action = $viewConfig['action']; + $subaction = $viewConfig['subaction']; - $do->subActionName = $subActionName; - $subaction = $subActionName; + if ( isset($viewCache[$view]) && $view != @$REQ[REQ_PARAM_TARGET] ) + { + $viewCache[$view]['source'] = 'cache'; + continue; + } + + $actionClassName = strtoupper(substr($action,0,1)).substr($action,1).'Action'; - // Auf Alias pr�fen. + if ( !isset($conf['action'][$actionClassName]) ) + Http::serverError("Action '$action' is undefined."); + + require_once( OR_ACTIONCLASSES_DIR.'/'.$actionClassName.'.class.php' ); + + // Erzeugen der Action-Klasse + $do = new $actionClassName; + $do->actionConfig = $conf['action'][$actionClassName]; + $do->actionClassName = $actionClassName; + $do->actionName = $action; + if ( $subaction == '' ) + $subaction = $do->actionConfig['default']['goto']; + + $do->subActionName = $subaction; + + + $do->init(); + + if ( !isset($do->actionConfig[$subaction]) ) + { + Logger::warn( "Action $action has no configured method named $subaction"); + Http::serverError("Action '$action' has no accessable method '$subaction'."); + exit; + } + + $subactionConfig = $do->actionConfig[$subaction]; + //Logger::trace("controller is calling subaction '$subaction'"); + + // Eine Subaktion ohne "guest=true" verlangt einen angemeldeten Benutzer. + if ( !isset($subactionConfig['guest']) || !$subactionConfig['guest'] ) + if ( !is_object($do->currentUser) ) + { + Logger::debug('No session and no guest action occured, maybe session expired'); + //Http::notAuthorized( lang('SESSION_EXPIRED') ); + + $viewCache[$view] = array('error'=>'not logged in'); + continue; + } + + // Eine Aktion mit "admin=true" verlangt einen Administrator als Benutzer. + if ( isset($do->actionConfig['admin']) && $do->actionConfig['admin'] ) + if ( !$do->currentUser->isAdmin ) + { + Logger::debug('Admin action, but user '.$do->currentUser->name.' is not an admin'); + //Http::notAuthorized( lang('SESSION_EXPIRED') ); + $viewCache[$view] = array('error'=>'no admin'); + continue; + } + + + // Aktuelle Subaction in Sitzung merken + if ( isset($do->actionConfig[$subaction]['menu']) ) + { + $sl = Session::getSubaction(); + if ( !is_array($sl)) + $sl = array(); + $sl[$action] = $subaction; + Session::setSubaction( $sl ); + } + + + // Alias-Methode aufrufen. if ( isset($do->actionConfig[$do->subActionName]['alias']) ) { $subaction = $do->actionConfig[$do->subActionName]['alias']; + // $do->subActionName = $subaction; } + - Logger::trace("controller is calling next subaction '$subaction'"); + Logger::debug("Executing $actionClassName::$subaction"); + // Alias-Methode aufrufen. - if ( isset($do->actionConfig[$subActionName]['write']) ) + if ( isset($do->actionConfig[$do->subActionName]['write']) ) { - $subActionView = $subActionName.'View'; - $do->$subActionView(); + $subactionView = $subaction.'View'; + $do->$subactionView(); } else { + // Aufruf der Subaction $do->$subaction(); } + + $views[$view]['subaction'] = $subaction; + + + // Aufruf der n�chsten Subaction (falls vorhanden) + if ( isset($do->actionConfig[$do->subActionName]['goto']) ) + { + /* Achtung: Redirect fuehrt zu Problemen beim Login sowie der Anzeige von Notices */ + if ( $conf['interface']['redirect'] ) + { + // Wenn Validierungsfehler aufgetrete sind, auf keinen Fall einen Redirect machen, da sonst + // im naechsten Request die Eingabedaten fehlen. + if ( empty($do->templateVars['errors']) ) + { + $subActionName = $do->actionConfig[$do->subActionName]['goto']; + header( 'HTTP/1.0 303 See other'); + // Absoluten Pfad kann auch der Client ergaenzen. + header( 'Location: '.Html::url($action,$do->actionConfig[$do->subActionName]['goto'],$do->getRequestId()) ); + exit; + } + } + + $subActionName = $do->actionConfig[$do->subActionName]['goto']; + $views[$view]['subaction'] = $subActionName; + + $do->subActionName = $subActionName; + $subaction = $subActionName; + + // Auf Alias pr�fen. + if ( isset($do->actionConfig[$do->subActionName]['alias']) ) + { + $subaction = $do->actionConfig[$do->subActionName]['alias']; + } + + Logger::debug("Executing $actionClassName::$subaction (following GOTO)"); + // Alias-Methode aufrufen. + if ( isset($do->actionConfig[$subActionName]['write']) ) + { + $subActionView = $subActionName.'View'; + $do->$subActionView(); + } + else + { + $do->$subaction(); + } + } + $do->setMenu(); // Menue erzeugen + + // Anzeigedaten in den Cache schreiben. + $viewCache[$view] = $do->templateVars; + $viewCache[$view]['source'] = 'request'; + + // $do->forward(); // Anzeige rendern } -$do->setMenu(); // Menue erzeugen +// ViewCache zurück in die Sitzung schreiben +Session::set('view_cache',$viewCache); + +// Erst jetzt die Views wegschreiben (könnten sich durch ein "GOTO" verändert haben). +Session::set('views' ,$views ); + + + + +// TODO: Globle Variablen für den Seitenkopf. +$root_stylesheet = OR_THEMES_EXT_DIR.$conf['interface']['theme'].'/css/base.css'; +$user_stylesheet = OR_THEMES_EXT_DIR.$conf['interface']['theme'].'/css/'.$conf['interface']['style']['default'].'.css'; +//$self = $HTTP_SERVER_VARS['PHP_SELF']; +if ( !empty($conf['interface']['override_title']) ) + $cms_title = $conf['interface']['override_title']; +else + $cms_title = OR_TITLE.' '.OR_VERSION; +$charset = 'UTF-8'; // $this->getCharset(); +$showDuration = $conf['interface']['show_duration']; + +require( OR_THEMES_DIR.'default/pages/view.php'); + +function showView( $viewName ) +{ + global $viewCache; + global $views; + global $view; + global $conf; + $view = $viewName; + + $viewConfig = $views[$viewName]; + + $actionClassName = strtoupper(substr($viewConfig['action'],0,1)).substr($viewConfig['action'],1).'Action'; + $f = new Action(); + $f->actionConfig = $conf['action'][$actionClassName]; + $f->templateVars = $viewCache[$viewName]; + $f->actionName = $viewConfig['action']; + $f->subActionName = $viewConfig['subaction']; + error_reporting(E_ALL ^ E_NOTICE); + $f->forward(); + error_reporting(E_ALL); +} -$do->forward(); // Anzeige rendern - // fertig :) ?> \ No newline at end of file diff --git a/objectClasses/File.class.php b/objectClasses/File.class.php @@ -552,6 +552,8 @@ EOF { if ( is_file($this->tmpfile())) return implode('',file($this->tmpfile())); // From cache + + Logger::debug("preview 1"); $db = db_connection(); @@ -574,7 +576,8 @@ EOF $f = fopen( $this->tmpfile(),'w' ); fwrite( $f,$this->value ); fclose( $f ); - + Logger::debug("preview 2:".$this->objectid.'/'.strlen($this->value)); + return $this->value; } diff --git a/objectClasses/Page.class.php b/objectClasses/Page.class.php @@ -252,11 +252,11 @@ class Page extends Object switch( $object->getType() ) { case 'file': - $inhalt = Html::url('file','show',$objectid,$param); + $inhalt = Html::url('file','preview',$objectid,$param); break; case 'page': - $inhalt = Html::url('page','show',$objectid,$param); + $inhalt = Html::url('page','preview',$objectid,$param); break; case 'link': @@ -271,11 +271,11 @@ class Page extends Object switch( $linkedObject->getType() ) { case 'file': - $inhalt = Html::url('file','show',$link->linkedObjectId,$param); + $inhalt = Html::url('file','preview',$link->linkedObjectId,$param); break; case 'page': - $inhalt = Html::url('page','show',$link->linkedObjectId,$param); + $inhalt = Html::url('page','preview',$link->linkedObjectId,$param); break; } } diff --git a/serviceClasses/Html.class.php b/serviceClasses/Html.class.php @@ -87,9 +87,13 @@ class Html } else { + global $view; $params[REQ_PARAM_ACTION ] = $action; $params[REQ_PARAM_SUBACTION] = $subaction; $params[REQ_PARAM_ID ] = $id; + + if ( !isset($params[REQ_PARAM_TARGET])) + $params[REQ_PARAM_TARGET ] = $view; } if ( count($params) > 0 ) diff --git a/serviceClasses/ProjectTree.class.php b/serviceClasses/ProjectTree.class.php @@ -58,11 +58,10 @@ class ProjectTree extends AbstractTree { $treeElement = new TreeElement(); $treeElement->text = $element->name; - $treeElement->url = Html::url('main', - 'pageelement', + $treeElement->url = Html::url('pageelement','edit', $id, array('elementid'=>$elementid, - REQ_PARAM_TARGETSUBACTION=>'edit')); + REQ_PARAM_TARGETSUBACTION=>'edit',REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'el_'.$element->type; $treeElement->description = lang('EL_'.$element->type); @@ -70,7 +69,7 @@ class ProjectTree extends AbstractTree $treeElement->description .= ' - '.Text::maxLaenge( 25,$element->desc ); else $treeElement->description .= ' - '.lang('GLOBAL_NO_DESCRIPTION_AVAILABLE'); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; if ( in_array($element->type,array('link','list','include') ) ) { @@ -109,7 +108,7 @@ class ProjectTree extends AbstractTree $treeElement->type = $object->getType(); $treeElement->internalId = $object->objectid; } - $treeElement->url = Html::url('main',$object->getType(),$objectid); + $treeElement->url = Html::url($object->getType(),'',$objectid); $treeElement->icon = $object->getType(); $treeElement->description = lang('GLOBAL_'.$object->getType()); @@ -117,7 +116,7 @@ class ProjectTree extends AbstractTree $treeElement->description .= ' - '.Text::maxLaenge( 25,$object->desc ); else $treeElement->description .= ' - '.lang('GLOBAL_NO_DESCRIPTION_AVAILABLE'); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } @@ -137,7 +136,7 @@ class ProjectTree extends AbstractTree $treeElement = new TreeElement(); $treeElement->internalId = $o->objectid; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $treeElement->text = $o->name; $treeElement->description= lang( 'GLOBAL_'.$o->getType() ).' '.$id; @@ -146,7 +145,7 @@ class ProjectTree extends AbstractTree else $treeElement->description .= ' - '.lang('GLOBAL_NO_DESCRIPTION_AVAILABLE'); - $treeElement->url = Html::url('main',$o->getType(),$o->objectid ); + $treeElement->url = Html::url($o->getType(),'',$o->objectid,array(REQ_PARAM_TARGET=>'content') ); $treeElement->icon = $o->getType(); // Besonderheiten fuer bestimmte Objekttypen @@ -184,7 +183,7 @@ class ProjectTree extends AbstractTree $treeElement = new TreeElement(); $treeElement->internalId = $o->objectid; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $treeElement->text = $o->name; $treeElement->description= lang( 'GLOBAL_'.$o->getType() ).' '.$o->objectid; @@ -193,7 +192,7 @@ class ProjectTree extends AbstractTree else $treeElement->description .= ' - '.lang('GLOBAL_NO_DESCRIPTION_AVAILABLE'); - $treeElement->url = Html::url( 'main',$o->getType(),$o->objectid,array('readit'=>'__OID__'.$o->objectid.'__') ); + $treeElement->url = Html::url( $o->getType(),'',$o->objectid,array('readit'=>'__OID__'.$o->objectid.'__',REQ_PARAM_TARGET=>'content') ); $treeElement->icon = $o->getType(); // Besonderheiten fuer bestimmte Objekttypen @@ -258,8 +257,8 @@ class ProjectTree extends AbstractTree $treeElement->text = lang('FOLDER_ROOT'); $treeElement->description = lang('FOLDER_ROOT_DESC'); $treeElement->icon = 'folder'; - $treeElement->url = Html::url( 'main','folder',$folder->objectid ); - $treeElement->target = 'cms_main'; + $treeElement->url = Html::url( 'folder','',$folder->objectid,array(REQ_PARAM_TARGET=>'content') ); + $treeElement->target = 'content'; $treeElement->type = 'folder'; $treeElement->internalId = $folder->objectid; $this->addTreeElement( $treeElement ); @@ -271,10 +270,10 @@ class ProjectTree extends AbstractTree // Templates $treeElement = new TreeElement(); $treeElement->text = lang('GLOBAL_TEMPLATES'); - $treeElement->url = Html::url('main','template',0,array(REQ_PARAM_TARGETSUBACTION=>'listing')); + $treeElement->url = Html::url('template','listing',0,array(REQ_PARAM_TARGETSUBACTION=>'listing',REQ_PARAM_TARGET=>'content')); $treeElement->description= lang('GLOBAL_TEMPLATES_DESC'); $treeElement->icon = 'template_list'; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $treeElement->type = 'templates'; $this->addTreeElement( $treeElement ); } @@ -284,10 +283,10 @@ class ProjectTree extends AbstractTree $treeElement = new TreeElement(); $treeElement->description= ''; $treeElement->text = lang('GLOBAL_LANGUAGES'); - $treeElement->url = Html::url('main','language',0,array(REQ_PARAM_TARGETSUBACTION=>'listing')); + $treeElement->url = Html::url('language','listing',0,array(REQ_PARAM_TARGETSUBACTION=>'listing',REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'language_list'; $treeElement->description= lang('GLOBAL_LANGUAGES_DESC'); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; // Nur fuer Projekt-Administratoren aufklappbar if ( $this->userIsProjectAdmin ) @@ -306,9 +305,9 @@ class ProjectTree extends AbstractTree $treeElement->description= lang('GLOBAL_MODELS_DESC'); $treeElement->text = lang('GLOBAL_MODELS'); - $treeElement->url = Html::url('main','model',0,array(REQ_PARAM_TARGETSUBACTION=>'listing')); + $treeElement->url = Html::url('model','listing',0,array(REQ_PARAM_TARGETSUBACTION=>'listing',REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'model_list'; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); @@ -323,10 +322,10 @@ class ProjectTree extends AbstractTree // Suche $treeElement = new TreeElement(); $treeElement->text = lang('GLOBAL_SEARCH'); - $treeElement->url = Html::url('main','search'); + $treeElement->url = Html::url('search','',0,array(REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'search'; $treeElement->description = lang('GLOBAL_SEARCH_DESC'); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } @@ -341,9 +340,9 @@ class ProjectTree extends AbstractTree $t = new Template( $id ); $t->load(); $treeElement->text = $t->name; - $treeElement->url = Html::url('main','template',$id,array(REQ_PARAM_TARGETSUBACTION=>'src')); + $treeElement->url = Html::url('template','src',$id,array(REQ_PARAM_TARGETSUBACTION=>'src',REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'template'; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $treeElement->internalId = $id; $treeElement->type = 'template'; $treeElement->description = $t->name.' ('.lang('GLOBAL_TEMPLATE').' '.$id.'): '.htmlentities(Text::maxLaenge( 40,$t->src )); @@ -371,7 +370,7 @@ class ProjectTree extends AbstractTree $treeElement = new TreeElement(); $treeElement->text = $e->name; - $treeElement->url = Html::url('main','element',$elementid ); + $treeElement->url = Html::url('element','',$elementid,array(REQ_PARAM_TARGET=>'content') ); $treeElement->icon = 'el_'.$e->type; if ( $e->desc == '' ) @@ -379,7 +378,7 @@ class ProjectTree extends AbstractTree else $desc = $e->desc; $treeElement->description = $e->name.' ('.lang('EL_'.$e->type).'): '.Text::maxLaenge( 40,$desc ); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } } @@ -399,11 +398,11 @@ class ProjectTree extends AbstractTree { $treeElement = new TreeElement(); $treeElement->text = $name; - $treeElement->url = Html::url('main','language',$languageid, - array(REQ_PARAM_TARGETSUBACTION=>'edit') ); + $treeElement->url = Html::url('language','edit',$languageid, + array(REQ_PARAM_TARGETSUBACTION=>'edit',REQ_PARAM_TARGET=>'content') ); $treeElement->icon = 'language'; $treeElement->description = ''; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } } @@ -420,11 +419,11 @@ class ProjectTree extends AbstractTree { $treeElement = new TreeElement(); $treeElement->text = $name; - $treeElement->url = Html::url('main','model',$id, - array(REQ_PARAM_TARGETSUBACTION=>'edit')); + $treeElement->url = Html::url('model','edit',$id, + array(REQ_PARAM_TARGETSUBACTION=>'edit',REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'model'; $treeElement->description = ''; - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } } @@ -442,34 +441,34 @@ class ProjectTree extends AbstractTree // $treeElement->description = lang('GLOBAL_FILE_TRANSFER_DESC'); // $treeElement->url = Html::url('main','transfer'); // $treeElement->icon = 'transfer'; -// $treeElement->target = 'cms_main'; +// $treeElement->target = 'content'; // $this->addTreeElement( $treeElement ); // } $treeElement = new TreeElement(); $treeElement->text = lang('GLOBAL_SEARCH'); - $treeElement->url = Html::url('main','search'); + $treeElement->url = Html::url('search'); $treeElement->icon = 'search'; $treeElement->description = lang('GLOBAL_SEARCH_DESC'); - $treeElement->target = 'cms_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); $treeElement = new TreeElement(); $treeElement->text = lang('USER_YOURPROFILE'); - $treeElement->url = Html::url('profile','edit'); + $treeElement->url = Html::url('profile','edit',0,array(REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'user'; $treeElement->description = lang('USER_PROFILE_DESC'); - $treeElement->target = 'cms_main_main'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); $treeElement = new TreeElement(); $treeElement->text = lang('GLOBAL_PROJECTS'); - $treeElement->url = Html::url('index','projectmenu'); + $treeElement->url = Html::url('index','projectmenu',0,array(REQ_PARAM_TARGET=>'content')); $treeElement->icon = 'project'; $treeElement->description = lang('GLOBAL_PROJECTS'); - $treeElement->target = 'parent'; + $treeElement->target = 'content'; $this->addTreeElement( $treeElement ); } } diff --git a/serviceClasses/TemplateEngine.class.php b/serviceClasses/TemplateEngine.class.php @@ -285,7 +285,7 @@ class TemplateEngine $linebreaks = false; // Zeilenumbr�che setzen. - if ( strpos($line,'#SET-LINEBREAK-OFF')!==FALSE ) + if ( strpos($line,'#SET-LINEBREAK-ON')!==FALSE ) $linebreaks = true; // Ignoriere Zeilen, die zu ignorieren sind (logisch). @@ -300,7 +300,10 @@ class TemplateEngine // Ignoriere Kommentarzeilen if ( in_array(substr(ltrim($line),0,2),array('//','/*','<!') ) || substr(ltrim($line),0,1) == '#') continue; - + // Ignoriere Kommentarzeilen + if ( in_array(substr(rtrim($line),-3),array('-->',' */') ) ) + continue; + if ( !$linebreaks ) $line = rtrim($line); diff --git a/serviceClasses/include.inc.php b/serviceClasses/include.inc.php @@ -10,7 +10,7 @@ require_once( OR_SERVICECLASSES_DIR."TemplateEngine.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."Preferences.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."FileUtils.class.".PHP_EXT ); -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('tree')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('tree')) ) { require_once( OR_SERVICECLASSES_DIR."TreeElement.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."AbstractTree.class.".PHP_EXT ); @@ -19,26 +19,26 @@ if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('tr } // Login -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('index')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('index')) ) { require_once( OR_SERVICECLASSES_DIR."OpenId.class.".PHP_EXT ); } // Veroeffentlichung -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','page','pageelement','folder')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','page','pageelement','folder')) ) { require_once( OR_SERVICECLASSES_DIR."Publish.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."Ftp.class.".PHP_EXT ); } // Nur bei der Erzeugung von Seiten notwendig. -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder','element')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder','element')) ) { require_once( OR_SERVICECLASSES_DIR."Dynamic.class.".PHP_EXT ); } // Nur bei der Erzeugung von Seiten notwendig. -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder')) ) { require_once( OR_SERVICECLASSES_DIR."Api.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."Code.class.".PHP_EXT ); @@ -47,13 +47,13 @@ if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pa } -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','folder','filebrowser')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','folder','filebrowser')) ) { require_once( OR_SERVICECLASSES_DIR."Upload.class.".PHP_EXT ); } -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','folder')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('file','folder')) ) { require_once( OR_SERVICECLASSES_DIR."Upload.class.".PHP_EXT ); require_once( OR_SERVICECLASSES_DIR."ArchiveTar.class.".PHP_EXT ); diff --git a/textClasses/include.inc.php b/textClasses/include.inc.php @@ -1,7 +1,7 @@ <?php // Die DOM-Klassen sind nur bei der Erzeugung von Seiten notwendig. -if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder')) ) +//if ( !empty($REQ[REQ_PARAM_ACTION]) && in_array($REQ[REQ_PARAM_ACTION],array('pageelement','page','folder')) ) { require_once( OR_TEXTCLASSES_DIR."parser/WikiParser.class.".PHP_EXT ); require_once( OR_TEXTCLASSES_DIR."renderer/HtmlRenderer.class.".PHP_EXT ); diff --git a/themes/default/css/base.css b/themes/default/css/base.css @@ -33,6 +33,128 @@ blockquote:before, blockquote:after, q:before, q:after {content:"";} blockquote, q {quotes:"" "";} a img {border:none;} +body +{ + background-color:silver; +} + +iframe +{ + width:100%; + height:500px; + display:block; + border: 1px solid grey; +} + +div.breadcrumb, +div.breadcrumb a +{ + height:20px; + x-background-color:grey; + color:grey; + font-weight:bold; +} + +/* Einzel-Views */ +div#header +{ + height:19px; + overflow:hidden; + background-color:grey; + margin:0px; + padding:5px; +} + +div#header a, +div#header div +{ + x-font-weight:bold; + x-color:#404040; + color:white; +} + +div#header div +{ + float:left; + margin-right:24px; + margin-left:0px; +} + +div#header div.logout, +div#header div.user +{ + float:right; + margin-right:0px; + margin-left:24px; +} + +div#tree +{ + padding:5px; + width:25%; + margin-left:0px; + overflow:auto; + height:100%; + float:left; +} +div#content +{ + padding:5px; + margin-left:30%; + x-background-color:white; + margin-top:0px; + +} + +a.action, +a.action_active, +a.help, +div.noaction, +input.ok +{ + x-height:20px; + margin:9px; + padding-top:4px; + padding-bottom:4px; + padding-left:7px; + padding-right:7px; + border:1px solid grey; + -moz-border-radius:5px; /* Mozilla */ + -webkit-border-radius:5px; /* Webkit */ + -khtml-border-radius:5px; /* Konqui */ + border-radius:5px; + background-color: white; + background: -moz-linear-gradient(top, gray, silver); + background: -webkit-gradient(linear, left top, left bottom, from(gray), to(silver)); + float:left; + font-style:normal; + font-weight:normal; + text-decoration:none; + -webkit-box-shadow: 3px 2px 5px gray; + -moz-box-shadow: 3px 2px 5px gray; + box-shadow: 3px 2px 5px gray; + cursor:default; +} +input.ok +{ + font-weight:bold; +} + +a.help +{ + cursor:help; +} + +a.action:hover, +a.action_active:hover, +a.help:hover, +div.noaction:hover, +input.ok:hover +{ + text-decoration:none; + border-color:white; +} + /* Vorschau von Text-Inhalten */ @@ -306,7 +428,7 @@ td.motd /* Hauptfenster */ table.main { - border:3px solid; + x-border:3px solid; } diff --git a/themes/default/include/elements.ini.php b/themes/default/include/elements.ini.php @@ -22,13 +22,14 @@ if = equals,value,not,empty,present,contains,greaterthan,lessthan,true,fal image = config,file,url,icon,align:left,type,elementtype,fileext,tree,notice,size,title input = class:text,default:,type:text,index,name:*,prefix,value,size:40,maxlength:256,onchange:,readonly:false inputarea= name,rows:10,cols:40,value,index,onchange,prefix,class:inputarea,default: -insert = file,script,inline:false +insert = file,script,inline:false,url label = for:*,value -link = title:,config,target:_self,var,url,class:,action,subaction,id,var1,value1,var2,value2,var3,value3,var4,value4,var5,value5,accesskey,name,anchor +link = title:,config,target,var,url,class:,action,subaction,id,var1,value1,var2,value2,var3,value3,var4,value4,var5,value5,accesskey,name,anchor list = list:*,extract:false,key:list_key,value:list_value logo = name:* newline = page = class:main,title,menu +part = id,class password = name:*,default:,class:,size:40,maxlength:256 radio = readonly:false,name:*,value,default:false,prefix:,suffix:,class:,onchange:,children raw = diff --git a/themes/default/include/html/button.inc.php b/themes/default/include/html/button.inc.php @@ -17,4 +17,16 @@ if ( !empty($attr_type) ) { ?><input type="<?php echo $attr_type ?>"<?php if(isset($attr_src)) { ?> src="<?php echo $image_dir.'icon_'.$attr_src.IMG_ICON_EXT ?>"<?php } ?> name="<?php echo $attr_value ?>" class="%class%" title="<?php echo lang($attr_text.'_DESC') ?>" value="&nbsp;&nbsp;&nbsp;&nbsp;<?php echo langHtml($attr_text) ?>&nbsp;&nbsp;&nbsp;&nbsp;" /><?php unset($attr_src) ?><?php } + + + #IF-ATTR-VALUE type:x-ok# + // 2. Knopf "Cancel" + if ($this->isEditable() && $this->isEditMode()) + $attr_text = 'CANCEL'; + $attr_type = 'submit'; + if ( !empty($attr_type) ) + { +?><a class="action" href="<?php Html::url('','',0,array()) ?>"><span title="<?php echo lang($attr_text.'_DESC') ?>"><?php echo langHtml($attr_text) ?></span></a><?php + } + #END-IF ?> \ No newline at end of file diff --git a/themes/default/include/html/input.inc.php b/themes/default/include/html/input.inc.php @@ -10,4 +10,4 @@ if ($attr_readonly) { /* Nur anzeigen */ ?><input type="hidden" id="id_<?php echo $attr_name ?>" name="<?php echo $attr_name ?>" value="<?php echo $tmp_value ?>" /><?php - } } else { ?><span class="<?php echo $attr_class ?>"><?php echo $tmp_value ?></span><?php } ?>- \ No newline at end of file + } } else { ?><a href="<?php echo Html::url('','',0,array('mode'=>'edit')) ?>"><span class="<?php echo $attr_class ?>"><?php echo $tmp_value ?></span></a><?php } ?>+ \ No newline at end of file diff --git a/themes/default/include/html/insert.inc.php b/themes/default/include/html/insert.inc.php @@ -20,3 +20,7 @@ else } ?> /* #END-IF# */ + +/* #IF-ATTR url# */ +<iframe src="<?php echo $attr_url ?>"></iframe> +/* #END-IF# */ diff --git a/themes/default/include/html/link.inc.php b/themes/default/include/html/link.inc.php @@ -27,6 +27,11 @@ #END-IF $tmp_url = ''; + + #IF-ATTR target# + $params[REQ_PARAM_TARGET] = $attr_target; + #END-IF + #IF-ATTR action# $tmp_url = Html::url($attr_action,$attr_subaction,!empty($attr_id)?$attr_id:$this->getRequestId(),$params); #END-IF @@ -35,4 +40,4 @@ #END-IF -?><a<?php if (isset($attr_name)) echo ' name="'.$attr_name.'"'; else echo ' href="'.$tmp_url.(isset($attr_anchor)?'#'.$attr_anchor:'').'"' ?> class="<?php echo $attr_class ?>" target="<?php echo $attr_target ?>"<?php if (isset($attr_accesskey)) echo ' accesskey="'.$attr_accesskey.'"' ?> title="<?php echo encodeHtml($attr_title) ?>">- \ No newline at end of file +?><a<?php if (isset($attr_name)) echo ' name="'.$attr_name.'"'; else echo ' href="'.$tmp_url.(isset($attr_anchor)?'#'.$attr_anchor:'').'"' ?> class="<?php echo $attr_class ?>"<?php if (isset($attr_accesskey)) echo ' accesskey="'.$attr_accesskey.'"' ?> title="<?php echo encodeHtml($attr_title) ?>">+ \ No newline at end of file diff --git a/themes/default/include/html/page-end.inc.php b/themes/default/include/html/page-end.inc.php @@ -1,2 +1 @@ -</body> -</html>- \ No newline at end of file +<!-- page-end -->+ \ No newline at end of file diff --git a/themes/default/include/html/page.inc.php b/themes/default/include/html/page.inc.php @@ -1,35 +1 @@ -<?php - if (!defined('OR_VERSION')) die('Forbidden'); - if (!headers_sent()) header('Content-Type: text/html; charset='.$charset) -?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> -<html> -<head> - <title><?php echo isset($attr_title)?langHtml($attr_title).' - ':(isset($windowTitle)?langHtml($windowTitle).' - ':'') ?><?php echo $cms_title ?></title> - <meta http-equiv="content-type" content="text/html; charset=<?php echo $charset ?>" > -<?php if ( isset($refresh_url) ) { ?> - <meta http-equiv="refresh" content="<?php echo isset($refresh_timeout)?$refresh_timeout:0 ?>; URL=<?php echo $refresh_url; if (ini_get('session.use_trans_sid')) echo '&'.session_name().'='.session_id(); ?>"> -<?php } ?> - <meta name="MSSmartTagsPreventParsing" content="true" > - <meta name="robots" content="noindex,nofollow" > -<?php if (isset($windowMenu) && is_array($windowMenu)) foreach( $windowMenu as $menu ) - { - ?> - <link rel="section" href="<?php echo Html::url($actionName,@$menu['subaction'],$this->getRequestId() ) ?>" title="<?php echo lang($menu['text']) ?>" > -<?php - } -?><?php if (isset($metaList) && is_array($metaList)) foreach( $metaList as $meta ) - { - ?> - <link rel="<?php echo $meta['name'] ?>" href="<?php echo $meta['url'] ?>" title="<?php echo $meta['title'] ?>" ><?php - } -?><?php if(!empty($root_stylesheet)) { ?> - <link rel="stylesheet" type="text/css" href="<?php echo $root_stylesheet ?>" > -<?php } ?> -<?php if($root_stylesheet!=$user_stylesheet) { ?> - <link rel="stylesheet" type="text/css" href="<?php echo $user_stylesheet ?>" > -<?php } ?> -</head> - -<body class="%class%" <?php if (@$conf['interface']['application_mode']) { ?> style="padding:0px;margin:0px;"<?php } ?> > - -<?php /* Debug-Information */ if ($showDuration) { echo "<!-- Output Variables are:\n";echo str_replace('-->','-- >',print_r($this->templateVars,true));echo "\n-->";} ?>- \ No newline at end of file +<!-- page begin -->+ \ No newline at end of file diff --git a/themes/default/include/html/part-end.inc.php b/themes/default/include/html/part-end.inc.php @@ -0,0 +1,2 @@ +<div><!-- Ignore this line --> +</div>+ \ No newline at end of file diff --git a/themes/default/include/html/part.inc.php b/themes/default/include/html/part.inc.php @@ -0,0 +1,14 @@ +<!-- #SET-LINEBREAK-OFF# --> +<div +> <!-- Ignore this line --> + +<!-- #IF-ATTR id# --> + id="<?php echo $attr_id ?>" +<!-- #END-IF# --> + +<!-- #IF-ATTR class# --> + class="<?php echo $attr_class ?>" +<!-- #END-IF# --> + +<!-- Ignore this line --></div +>+ \ No newline at end of file diff --git a/themes/default/include/html/window-end.inc.php b/themes/default/include/html/window-end.inc.php @@ -3,8 +3,6 @@ </tr> </table> -</center> - <?php if ($showDuration) { ?> <br/> diff --git a/themes/default/include/html/window.inc.php b/themes/default/include/html/window.inc.php @@ -1,39 +1,11 @@ -<?php - $coloumn_widths=array(); +<div class="breadcrumb"> + <?php #IF-ATTR icon# $icon=$attr_icon; #ELSE# $icon=$actionName; #END-IF# - -#IF-ATTR widths# - $coldumn_widths = explode(',',$attr_widths); -#END-IF# -#IF-ATTR rowclasses# - $row_classes = explode(',',$attr_rowclasses); - $row_class_idx = 999; -#END-IF# -#IF-ATTR columnclasses# - $column_classes = explode(',',$attr_columnclasses); -#END-IF# - $row_idx = 0; - $column_idx = 0; - - global $image_dir; - if (@$conf['interface']['application_mode'] ) - { - echo '<table class="main" cellspacing="0" cellpadding="4" width="100%" style="margin:0px;border:0px; padding:0px;" height_oo="100%">'; - } - else - { - echo '<br/><br/><br/><center>'; - echo '<table class="main" cellspacing="0" cellpadding="4" width="'.$attr_width.'">'; - } - - if (!@$conf['interface']['application_mode'] ) - { - echo '<tr class="title"><td>'; echo '<img src="'.$image_dir.'icon_'.$icon.IMG_ICON_EXT.'" align="left" border="0">'; if ($this->isEditable()) { ?> @@ -46,7 +18,7 @@ - echo '<span class="path">'.langHtml($actionName).'</span>&nbsp;<strong>&raquo;</strong>&nbsp;'; + echo '<span class="path">'.langHtml($actionName).'</span>&nbsp;<strong>&rarr;</strong>&nbsp;'; // if ( !empty($attr_icon) ) // echo '<img src="'.$image_dir.'icon_'.$attr_icon.IMG_ICON_EXT.'" align="left" border="0">'; if ( !isset($path) || is_array($path) ) @@ -66,10 +38,8 @@ ?> - </td> - <?php - } - ?> + +</div> <?php ?> <!--<td class="menu" style="align:right;"> <?php if (isset($windowIcons)) foreach( $windowIcons as $icon ) { @@ -78,9 +48,32 @@ ?> </td>--> </tr> - <tr class="menu"><td> - <table class="menu"><tr> - <?php if ( !isset($windowMenu) || !is_array($windowMenu) ) + + + + + + + + + +<?php + $coloumn_widths=array(); + +#IF-ATTR widths# + $coldumn_widths = explode(',',$attr_widths); +#END-IF# +#IF-ATTR rowclasses# + $row_classes = explode(',',$attr_rowclasses); + $row_class_idx = 999; +#END-IF# +#IF-ATTR columnclasses# + $column_classes = explode(',',$attr_columnclasses); +#END-IF# + $row_idx = 0; + $column_idx = 0; + + if ( !isset($windowMenu) || !is_array($windowMenu) ) $windowMenu = array(); foreach( $windowMenu as $menu ) { @@ -92,20 +85,26 @@ if ( isset($menu['url']) ) { - ?><td class="action"><a href="<?php echo Html::url($actionName,$menu['subaction'],$this->getRequestId() ) ?>" accesskey="<?php echo $tmp_key ?>" title="<?php echo langHtml($menu['text'].'_DESC') ?>" class="menu<?php echo $this->subActionName==$menu['subaction']?'_highlight':'' ?>"><?php echo $tmp_text ?></a></td><?php + ?><a class="action<?php echo $this->subActionName==$menu['subaction']?'_active':'' ?>" href="<?php echo Html::url($actionName,$menu['subaction'],$this->getRequestId() ) ?>" accesskey="<?php echo $tmp_key ?>" title="<?php echo langHtml($menu['text'].'_DESC') ?>"><?php echo $tmp_text ?></a><?php } else { - ?><td class="noaction"><?php echo $tmp_text ?></td><?php + ?><div class="noaction"><?php echo $tmp_text ?></div><?php } } if (@$conf['help']['enabled'] ) { - ?><td><a href="<?php echo $conf['help']['url'].$actionName.'/'.$subActionName.@$conf['help']['suffix'] ?> " target="_new" title="<?php echo langHtml('MENU_HELP_DESC') ?>" class="menu" style="cursor:help;"><?php echo @$conf['help']['only_question_mark']?'?':langHtml('MENU_HELP') ?></a></td><?php + ?><a class="help" href="<?php echo $conf['help']['url'].$actionName.'/'.$subActionName.@$conf['help']['suffix'] ?> " target="_new" title="<?php echo langHtml('MENU_HELP_DESC') ?>"><?php echo @$conf['help']['only_question_mark']?'?':langHtml('MENU_HELP') ?></a><?php } - ?> - </tr></table></td> - </tr> + ?><br/><?php + + + + global $image_dir; + echo '<br/><br/>'; + echo '<table class="x-main" cellspacing="0" cellpadding="4" width="'.$attr_width.'">'; + ?> + <?php if (isset($notices) && count($notices)>0 ) { ?> @@ -143,7 +142,7 @@ <tr> - <td class="window"> + <td class="x-window"> <table cellspacing="0" width="100%" cellpadding="4"> diff --git a/themes/default/pages/html/index/login.tpl.php b/themes/default/pages/html/index/login.tpl.php @@ -0,0 +1,847 @@ +<?php $a1_class='main'; ?><?php unset($a1_class) ?><?php $a2_action='index';$a2_subaction='login';$a2_name='';$a2_target='_top';$a2_method='post';$a2_enctype='application/x-www-form-urlencoded'; ?><?php + $a2_id = $this->getRequestId(); + if ($this->isEditable()) + { + if ($this->isEditMode()) + { + $a2_method = 'POST'; + } + else + { + $a2_method = 'GET'; + $a2_subaction = $subActionName; + } + } +?><form name="<?php echo $a2_name ?>" + target="<?php echo $a2_target ?>" + action="<?php echo Html::url( $a2_action,$a2_subaction,$a2_id ) ?>" + method="<?php echo $a2_method ?>" + enctype="<?php echo $a2_enctype ?>" style="margin:0px;padding:0px;"> +<?php if ($this->isEditable() && !$this->isEditMode()) { ?> +<input type="hidden" name="mode" value="edit" /> +<?php } ?> +<input type="hidden" name="<?php echo REQ_PARAM_TOKEN ?>" value="<?php echo token() ?>" /> +<input type="hidden" name="<?php echo REQ_PARAM_ACTION ?>" value="<?php echo $a2_action ?>" /> +<input type="hidden" name="<?php echo REQ_PARAM_SUBACTION ?>" value="<?php echo $a2_subaction ?>" /> +<input type="hidden" name="<?php echo REQ_PARAM_ID ?>" value="<?php echo $a2_id ?>" /><?php + if ( $conf['interface']['url_sessionid'] ) + echo '<input type="hidden" name="'.session_name().'" value="'.session_id().'" />'."\n"; +?><?php unset($a2_action,$a2_subaction,$a2_name,$a2_target,$a2_method,$a2_enctype) ?><?php $a3_title='GLOBAL_LOGIN';$a3_name='login';$a3_icon='user';$a3_width='400px';$a3_rowclasses='odd,even';$a3_columnclasses='1,2,3'; ?><div class="breadcrumb"> + <?php + $icon=$a3_icon; + echo '<img src="'.$image_dir.'icon_'.$icon.IMG_ICON_EXT.'" align="left" border="0">'; + if ($this->isEditable()) { ?> + <?php if ($this->isEditMode()) { + ?><a href="<?php echo Html::url($actionName,$subActionName,$this->getRequestId() ) ?>" accesskey="1" title="<?php echo langHtml('MODE_EDIT_DESC') ?>" class="path" style="text-align:right;font-weight:bold;font-weight:bold;"><img src="<?php echo $image_dir ?>mode-edit.png" style="vertical-align:top; " border="0" /></a> <?php } + elseif (readonly()) { + ?><img src="<?php echo $image_dir ?>readonly.png" style="vertical-align:top; " border="0" /> <?php } else { + ?><a href="<?php echo Html::url($actionName,$subActionName,$this->getRequestId(),array('mode'=>'edit') ) ?>" accesskey="1" title="<?php echo langHtml('MODE_SHOW_DESC') ?>" class="path" style="text-align:right;font-weight:bold;font-weight:bold;"><img src="<?php echo $image_dir ?>readonly.png" style="vertical-align:top; " border="0" /></a> <?php } + ?><?php } + echo '<span class="path">'.langHtml($actionName).'</span>&nbsp;<strong>&rarr;</strong>&nbsp;'; + if ( !isset($path) || is_array($path) ) + $path = array(); + foreach( $path as $pathElement) + { + extract($pathElement); + echo '<a href="'.$url.'" class="path">'.langHtml($name).'</a>'; + echo '&nbsp;&raquo;&nbsp;'; + } + echo '<span class="title">'.langHtml($windowTitle).'</span>'; + if ( isset($notice_status)) + { + ?><img src="<?php echo $image_dir.'notice_'.$notice_status.IMG_ICON_EXT ?>" align="right" /><?php + } + ?> +</div> +<?php ?> <!--<td class="menu" style="align:right;"> + <?php if (isset($windowIcons)) foreach( $windowIcons as $icon ) + { + ?><a href="<?php echo $icon['url'] ?>" title="<?php echo 'ICON_'.langHtml($menu['type'].'_DESC') ?>"><image border="0" src="<?php echo $image_dir.$icon['type'].IMG_ICON_EXT ?>"></a>&nbsp;<?php + } + ?> + </tr> +<?php + $coloumn_widths=array(); + $row_classes = explode(',',$a3_rowclasses); + $row_class_idx = 999; + $column_classes = explode(',',$a3_columnclasses); + $row_idx = 0; + $column_idx = 0; + if ( !isset($windowMenu) || !is_array($windowMenu) ) + $windowMenu = array(); + foreach( $windowMenu as $menu ) + { + $tmp_text = langHtml($menu['text']); + $tmp_key = strtoupper(langHtml($menu['key' ])); + $tmp_pos = strpos(strtolower($tmp_text),strtolower($tmp_key)); + if ( $tmp_pos !== false ) + $tmp_text = substr($tmp_text,0,max($tmp_pos,0)).'<span class="accesskey">'. substr($tmp_text,$tmp_pos,1).'</span>'.substr($tmp_text,$tmp_pos+1); + if ( isset($menu['url']) ) + { + ?><a class="action<?php echo $this->subActionName==$menu['subaction']?'_active':'' ?>" href="<?php echo Html::url($actionName,$menu['subaction'],$this->getRequestId() ) ?>" accesskey="<?php echo $tmp_key ?>" title="<?php echo langHtml($menu['text'].'_DESC') ?>"><?php echo $tmp_text ?></a><?php + } + else + { + ?><div class="noaction"><?php echo $tmp_text ?></div><?php + } + } + if (@$conf['help']['enabled'] ) + { + ?><a class="help" href="<?php echo $conf['help']['url'].$actionName.'/'.$subActionName.@$conf['help']['suffix'] ?> " target="_new" title="<?php echo langHtml('MENU_HELP_DESC') ?>"><?php echo @$conf['help']['only_question_mark']?'?':langHtml('MENU_HELP') ?></a><?php + } + ?><br/><?php + global $image_dir; + echo '<br/><br/>'; + echo '<table class="x-main" cellspacing="0" cellpadding="4" width="'.$a3_width.'">'; + ?> +<?php if (isset($notices) && count($notices)>0 ) + { ?> + <tr> + <td align="center" class="notice"> + <?php foreach( $notices as $notice_idx=>$notice ) { ?> + <br><table class="notice"> + <?php if ($notice['name']!='') { ?> + <tr> + <th colspan="2"><img src="<?php echo $image_dir.'icon_'.$notice['type'].IMG_ICON_EXT ?>" align="left" /><?php echo $notice['name'] ?> + </th> + </tr> +<?php } ?> + <tr class="<?php echo $notice['status'] ?>"> + <td style="padding:10px;" width="30px"><img src="<?php echo $image_dir.'notice_'.$notice['status'].IMG_ICON_EXT ?>" style="padding:10px" /></td> + <td style="padding:10px;padding-right:10px;padding-bottom:10px;"><?php if ($notice['status']=='error') { ?><strong><?php } ?><?php echo langHtml($notice['key'],$notice['vars']) ?><?php if ($notice['status']=='error') { ?></strong><?php } ?> + <?php if (!empty($notice['log'])) { ?><pre><?php echo htmlentities(implode("\n",$notice['log'])) ?></pre><?php } ?> + </td> + </tr> + </table> + <?php } ?> + </td> + </tr> + <tr> + <td colspan="2"><fieldset></fieldset></td> + </tr> +<?php } ?> + <tr> + <td class="x-window"> + <table cellspacing="0" width="100%" cellpadding="4"> +<?php unset($a3_title,$a3_name,$a3_icon,$a3_width,$a3_rowclasses,$a3_columnclasses) ?><?php $a4_present=@$conf['login']['logo']['file']; ?><?php + $a4_tmp_exec = isset($$a4_present); + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_present) ?><?php $a5_false=$this->mustChangePassword; ?><?php + if (gettype($a5_false) === '' && gettype($a5_false) === '1') + $a5_tmp_exec = $$a5_false == false; + else + $a5_tmp_exec = $a5_false == false; + $a5_tmp_last_exec = $a5_tmp_exec; + if ( $a5_tmp_exec ) + { +?> +<?php unset($a5_false) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a7_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> + colspan="2" +><?php unset($a7_colspan) ?><?php $a8_present=@$conf['login']['logo']['url']; ?><?php + $a8_tmp_exec = isset($$a8_present); + $a8_tmp_last_exec = $a8_tmp_exec; + if ( $a8_tmp_exec ) + { +?> +<?php unset($a8_present) ?><?php $a9_title='';$a9_target='_top';$a9_url=@$conf['login']['logo']['url'];$a9_class=''; ?><?php + $params = array(); + $tmp_url = ''; + $params[REQ_PARAM_TARGET] = $a9_target; + $tmp_url = $a9_url; +?><a<?php if (isset($a9_name)) echo ' name="'.$a9_name.'"'; else echo ' href="'.$tmp_url.(isset($a9_anchor)?'#'.$a9_anchor:'').'"' ?> class="<?php echo $a9_class ?>"<?php if (isset($a9_accesskey)) echo ' accesskey="'.$a9_accesskey.'"' ?> title="<?php echo encodeHtml($a9_title) ?>"><?php unset($a9_title,$a9_target,$a9_url,$a9_class) ?><?php $a10_url=@$conf['login']['logo']['file'];$a10_align='left'; ?><?php + $a10_tmp_image_file = $a10_url; + $a10_tmp_title = basename($a10_tmp_image_file); +?><img alt="<?php echo $a10_tmp_title; if (isset($a10_size)) { echo ' ('; list($a10_tmp_width,$a10_tmp_height)=explode('x',$a10_size);echo $a10_tmp_width.'x'.$a10_tmp_height; echo')';} ?>" src="<?php echo $a10_tmp_image_file ?>" border="0"<?php if(isset($a10_align)) echo ' align="'.$a10_align.'"' ?><?php if (isset($a10_size)) { list($a10_tmp_width,$a10_tmp_height)=explode('x',$a10_size);echo ' width="'.$a10_tmp_width.'" height="'.$a10_tmp_height.'"';} ?>><?php unset($a10_url,$a10_align) ?></a><?php } ?><?php $a8_empty=@$conf['login']['logo']['url']; ?><?php + if ( !isset($$a8_empty) ) + $a8_tmp_exec = empty($a8_empty); + elseif ( is_array($$a8_empty) ) + $a8_tmp_exec = (count($$a8_empty)==0); + elseif ( is_bool($$a8_empty) ) + $a8_tmp_exec = true; + else + $a8_tmp_exec = empty( $$a8_empty ); + $a8_tmp_last_exec = $a8_tmp_exec; + if ( $a8_tmp_exec ) + { +?> +<?php unset($a8_empty) ?><?php $a9_url=@$conf['login']['logo']['file'];$a9_align='left'; ?><?php + $a9_tmp_image_file = $a9_url; + $a9_tmp_title = basename($a9_tmp_image_file); +?><img alt="<?php echo $a9_tmp_title; if (isset($a9_size)) { echo ' ('; list($a9_tmp_width,$a9_tmp_height)=explode('x',$a9_size);echo $a9_tmp_width.'x'.$a9_tmp_height; echo')';} ?>" src="<?php echo $a9_tmp_image_file ?>" border="0"<?php if(isset($a9_align)) echo ' align="'.$a9_align.'"' ?><?php if (isset($a9_size)) { list($a9_tmp_width,$a9_tmp_height)=explode('x',$a9_size);echo ' width="'.$a9_tmp_width.'" height="'.$a9_tmp_height.'"';} ?>><?php unset($a9_url,$a9_align) ?><?php } ?></td></tr><?php } ?><?php } ?><?php $a4_not='';$a4_empty=@$conf['login']['motd']; ?><?php + if ( !isset($$a4_empty) ) + $a4_tmp_exec = empty($a4_empty); + elseif ( is_array($$a4_empty) ) + $a4_tmp_exec = (count($$a4_empty)==0); + elseif ( is_bool($$a4_empty) ) + $a4_tmp_exec = true; + else + $a4_tmp_exec = empty( $$a4_empty ); + $a4_tmp_exec = !$a4_tmp_exec; + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_not,$a4_empty) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='motd';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="motd" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_class='text';$a7_raw=@$conf['login']['motd'];$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = str_replace('_','&nbsp;',$a7_raw); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_raw,$a7_escape,$a7_cut) ?></td></tr><?php } ?><?php $a4_true=@$conf['login']['nologin']; ?><?php + if (gettype($a4_true) === '' && gettype($a4_true) === '1') + $a4_tmp_exec = $$a4_true == true; + else + $a4_tmp_exec = $a4_true == true; + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_true) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='help';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="help" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_class='text';$a7_key='LOGIN_NOLOGIN_DESC';$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = $langF($a7_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_key,$a7_escape,$a7_cut) ?></td></tr><?php } ?><?php $a4_true=@$conf['security']['readonly']; ?><?php + if (gettype($a4_true) === '' && gettype($a4_true) === '1') + $a4_tmp_exec = $$a4_true == true; + else + $a4_tmp_exec = $a4_true == true; + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_true) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='help';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="help" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_class='text';$a7_key='GLOBAL_READONLY_DESC';$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = $langF($a7_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_key,$a7_escape,$a7_cut) ?></td></tr><?php } ?><?php $a4_true=@$conf['security']['nopublish']; ?><?php + if (gettype($a4_true) === '' && gettype($a4_true) === '1') + $a4_tmp_exec = $$a4_true == true; + else + $a4_tmp_exec = $a4_true == true; + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_true) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='help';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="help" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_class='text';$a7_key='GLOBAL_NOPUBLISH_DESC';$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = $langF($a7_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_key,$a7_escape,$a7_cut) ?></td></tr><?php } ?><?php $a4_false=@$conf['login']['nologin']; ?><?php + if (gettype($a4_false) === '' && gettype($a4_false) === '1') + $a4_tmp_exec = $$a4_false == false; + else + $a4_tmp_exec = $a4_false == false; + $a4_tmp_last_exec = $a4_tmp_exec; + if ( $a4_tmp_exec ) + { +?> +<?php unset($a4_false) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='logo';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="logo" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_name='login'; ?><img src="<?php echo $image_dir.'logo_'.$a7_name.IMG_ICON_EXT ?>" border="0" align="left"><h2 class="logo"><?php echo langHtml('logo_'.$a7_name) ?></h2><p class="logo"><?php echo langHtml('logo_'.$a7_name.'_text') ?></p><?php unset($a7_name) ?></td></tr><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a7_class='text';$a7_key='USER_USERNAME';$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = $langF($a7_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_key,$a7_escape,$a7_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a7_not=true;$a7_present='force_username'; ?><?php + $a7_tmp_exec = isset($$a7_present); + $a7_tmp_exec = !$a7_tmp_exec; + $a7_tmp_last_exec = $a7_tmp_exec; + if ( $a7_tmp_exec ) + { +?> +<?php unset($a7_not,$a7_present) ?><?php $a8_class='name';$a8_default='';$a8_type='text';$a8_name='login_name';$a8_value='';$a8_size='20';$a8_maxlength='256';$a8_onchange='';$a8_readonly=false; ?><?php if ($this->isEditable() && !$this->isEditMode()) $a8_readonly=true; + if ($a8_readonly && empty($$a8_name)) $$a8_name = '- '.lang('EMPTY').' -'; + if(!isset($a8_default)) $a8_default=''; + $tmp_value = Text::encodeHtml(isset($$a8_name)?$$a8_name:$a8_default); +?><?php if (!$a8_readonly || $a8_type=='hidden') { +?><input<?php if ($a8_readonly) echo ' disabled="true"' ?> id="id_<?php echo $a8_name ?><?php if ($a8_readonly) echo '_disabled' ?>" name="<?php echo $a8_name ?><?php if ($a8_readonly) echo '_disabled' ?>" type="<?php echo $a8_type ?>" size="<?php echo $a8_size ?>" maxlength="<?php echo $a8_maxlength ?>" class="<?php echo $a8_class ?>" value="<?php echo $tmp_value ?>" <?php if (in_array($a8_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php +if ($a8_readonly) { +?><input type="hidden" id="id_<?php echo $a8_name ?>" name="<?php echo $a8_name ?>" value="<?php echo $tmp_value ?>" /><?php + } } else { ?><a href="<?php echo Html::url('','',0,array('mode'=>'edit')) ?>"><span class="<?php echo $a8_class ?>"><?php echo $tmp_value ?></span></a><?php } ?><?php unset($a8_class,$a8_default,$a8_type,$a8_name,$a8_value,$a8_size,$a8_maxlength,$a8_onchange,$a8_readonly) ?><?php } ?><?php if (!$a7_tmp_last_exec) { ?> +<?php $a8_class='text';$a8_default='';$a8_type='hidden';$a8_name='login_name';$a8_value=$force_username;$a8_size='40';$a8_maxlength='256';$a8_onchange='';$a8_readonly=false; ?><?php if ($this->isEditable() && !$this->isEditMode()) $a8_readonly=true; + if ($a8_readonly && empty($$a8_name)) $$a8_name = '- '.lang('EMPTY').' -'; + if(!isset($a8_default)) $a8_default=''; + $tmp_value = Text::encodeHtml(isset($$a8_name)?$$a8_name:$a8_default); +?><?php if (!$a8_readonly || $a8_type=='hidden') { +?><input<?php if ($a8_readonly) echo ' disabled="true"' ?> id="id_<?php echo $a8_name ?><?php if ($a8_readonly) echo '_disabled' ?>" name="<?php echo $a8_name ?><?php if ($a8_readonly) echo '_disabled' ?>" type="<?php echo $a8_type ?>" size="<?php echo $a8_size ?>" maxlength="<?php echo $a8_maxlength ?>" class="<?php echo $a8_class ?>" value="<?php echo $tmp_value ?>" <?php if (in_array($a8_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php +if ($a8_readonly) { +?><input type="hidden" id="id_<?php echo $a8_name ?>" name="<?php echo $a8_name ?>" value="<?php echo $tmp_value ?>" /><?php + } } else { ?><a href="<?php echo Html::url('','',0,array('mode'=>'edit')) ?>"><span class="<?php echo $a8_class ?>"><?php echo $tmp_value ?></span></a><?php } ?><?php unset($a8_class,$a8_default,$a8_type,$a8_name,$a8_value,$a8_size,$a8_maxlength,$a8_onchange,$a8_readonly) ?><?php $a8_class='text';$a8_value=$force_username;$a8_escape=true;$a8_cut='both'; ?><?php + $a8_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a8_class ?>" title="<?php echo $a8_title ?>"><?php + $langF = $a8_escape?'langHtml':'lang'; + $tmp_text = $a8_escape?htmlentities($a8_value):$a8_value; + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a8_class,$a8_value,$a8_escape,$a8_cut) ?><?php } +unset($a6_tmp_last_exec) ?></td></tr><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a7_class='text';$a7_key='USER_PASSWORD';$a7_escape=true;$a7_cut='both'; ?><?php + $a7_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a7_class ?>" title="<?php echo $a7_title ?>"><?php + $langF = $a7_escape?'langHtml':'lang'; + $tmp_text = $langF($a7_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a7_class,$a7_key,$a7_escape,$a7_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a7_name='login_password';$a7_default='';$a7_class='name';$a7_size='20';$a7_maxlength='256'; ?><input type="password" name="<?php echo $a7_name ?>" size="<?php echo $a7_size ?>" maxlength="<?php echo $a7_maxlength ?>" class="<?php echo $a7_class ?>" value="<?php if (count($errors)==0) echo isset($$a7_name)?$$a7_name:$a7_default ?>" <?php if (in_array($a7_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php unset($a7_name,$a7_default,$a7_class,$a7_size,$a7_maxlength) ?></td></tr><?php $a5_true=$this->mustChangePassword; ?><?php + if (gettype($a5_true) === '' && gettype($a5_true) === '1') + $a5_tmp_exec = $$a5_true == true; + else + $a5_tmp_exec = $a5_true == true; + $a5_tmp_last_exec = $a5_tmp_exec; + if ( $a5_tmp_exec ) + { +?> +<?php unset($a5_true) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a7_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> + colspan="2" +><?php unset($a7_colspan) ?><?php $a8_title=lang('USER_NEW_PASSWORD'); ?><fieldset><?php if(isset($a8_title)) { ?><legend><?php if(isset($a8_icon)) { ?><image src="<?php echo $image_dir.'icon_'.$a8_icon.IMG_ICON_EXT ?>" align="left" border="0"><?php } ?><?php echo encodeHtml($a8_title) ?></legend><?php } ?><?php unset($a8_title) ?></fieldset></td></tr><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_class='text';$a8_key='USER_NEW_PASSWORD';$a8_escape=true;$a8_cut='both'; ?><?php + $a8_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a8_class ?>" title="<?php echo $a8_title ?>"><?php + $langF = $a8_escape?'langHtml':'lang'; + $tmp_text = $langF($a8_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a8_class,$a8_key,$a8_escape,$a8_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_name='password1';$a8_default='';$a8_class='';$a8_size='25';$a8_maxlength='256'; ?><input type="password" name="<?php echo $a8_name ?>" size="<?php echo $a8_size ?>" maxlength="<?php echo $a8_maxlength ?>" class="<?php echo $a8_class ?>" value="<?php if (count($errors)==0) echo isset($$a8_name)?$$a8_name:$a8_default ?>" <?php if (in_array($a8_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php unset($a8_name,$a8_default,$a8_class,$a8_size,$a8_maxlength) ?></td></tr><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_class='text';$a8_key='USER_NEW_PASSWORD_REPEAT';$a8_escape=true;$a8_cut='both'; ?><?php + $a8_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a8_class ?>" title="<?php echo $a8_title ?>"><?php + $langF = $a8_escape?'langHtml':'lang'; + $tmp_text = $langF($a8_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a8_class,$a8_key,$a8_escape,$a8_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_name='password2';$a8_default='';$a8_class='';$a8_size='25';$a8_maxlength='256'; ?><input type="password" name="<?php echo $a8_name ?>" size="<?php echo $a8_size ?>" maxlength="<?php echo $a8_maxlength ?>" class="<?php echo $a8_class ?>" value="<?php if (count($errors)==0) echo isset($$a8_name)?$$a8_name:$a8_default ?>" <?php if (in_array($a8_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php unset($a8_name,$a8_default,$a8_class,$a8_size,$a8_maxlength) ?></td></tr><?php } ?><?php $a5_true=@$conf['security']['openid']['enable']; ?><?php + if (gettype($a5_true) === '' && gettype($a5_true) === '1') + $a5_tmp_exec = $$a5_true == true; + else + $a5_tmp_exec = $a5_true == true; + $a5_tmp_last_exec = $a5_tmp_exec; + if ( $a5_tmp_exec ) + { +?> +<?php unset($a5_true) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a7_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> + colspan="2" +><?php unset($a7_colspan) ?><?php $a8_title=lang('OPENID'); ?><fieldset><?php if(isset($a8_title)) { ?><legend><?php if(isset($a8_icon)) { ?><image src="<?php echo $image_dir.'icon_'.$a8_icon.IMG_ICON_EXT ?>" align="left" border="0"><?php } ?><?php echo encodeHtml($a8_title) ?></legend><?php } ?><?php unset($a8_title) ?></fieldset></td></tr><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_not=true;$a8_empty=@$conf['security']['openid']['logo_url']; ?><?php + if ( !isset($$a8_empty) ) + $a8_tmp_exec = empty($a8_empty); + elseif ( is_array($$a8_empty) ) + $a8_tmp_exec = (count($$a8_empty)==0); + elseif ( is_bool($$a8_empty) ) + $a8_tmp_exec = true; + else + $a8_tmp_exec = empty( $$a8_empty ); + $a8_tmp_exec = !$a8_tmp_exec; + $a8_tmp_last_exec = $a8_tmp_exec; + if ( $a8_tmp_exec ) + { +?> +<?php unset($a8_not,$a8_empty) ?><?php $a9_url=@$conf['security']['openid']['logo_url'];$a9_align='left'; ?><?php + $a9_tmp_image_file = $a9_url; + $a9_tmp_title = basename($a9_tmp_image_file); +?><img alt="<?php echo $a9_tmp_title; if (isset($a9_size)) { echo ' ('; list($a9_tmp_width,$a9_tmp_height)=explode('x',$a9_size);echo $a9_tmp_width.'x'.$a9_tmp_height; echo')';} ?>" src="<?php echo $a9_tmp_image_file ?>" border="0"<?php if(isset($a9_align)) echo ' align="'.$a9_align.'"' ?><?php if (isset($a9_size)) { list($a9_tmp_width,$a9_tmp_height)=explode('x',$a9_size);echo ' width="'.$a9_tmp_width.'" height="'.$a9_tmp_height.'"';} ?>><?php unset($a9_url,$a9_align) ?><?php } ?><?php $a8_class='text';$a8_key='openid_user';$a8_escape=true;$a8_cut='both'; ?><?php + $a8_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a8_class ?>" title="<?php echo $a8_title ?>"><?php + $langF = $a8_escape?'langHtml':'lang'; + $tmp_text = $langF($a8_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a8_class,$a8_key,$a8_escape,$a8_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_list='openid_providers';$a8_name='openid_provider';$a8_onchange='';$a8_title='';$a8_class=''; ?><?php $a8_tmp_list = $$a8_list; + if ( isset($$a8_name) && isset($a8_tmp_list[$$a8_name]) ) + $a8_tmp_default = $$a8_name; + elseif ( isset($a8_default) ) + $a8_tmp_default = $a8_default; + else + $a8_tmp_default = ''; + foreach( $a8_tmp_list as $box_key=>$box_value ) + { + $box_value = is_array($box_value)?(isset($box_value['lang'])?langHtml($box_value['lang']):$box_value['value']):$box_value; + $id = 'id_'.$a8_name.'_'.$box_key; + echo '<input id="'.$id.'" name="'.$a8_name.'" type="radio" class="'.$a8_class.'" value="'.$box_key.'"'; + if ($box_key==$a8_tmp_default) + echo ' checked="checked"'; + echo '>&nbsp;<label for="'.$id.'">'.$box_value.'</label><br>'; + } +?><?php unset($a8_list,$a8_name,$a8_onchange,$a8_title,$a8_class) ?><?php $a8_true=$openid_user_identity; ?><?php + if (gettype($a8_true) === '' && gettype($a8_true) === '1') + $a8_tmp_exec = $$a8_true == true; + else + $a8_tmp_exec = $a8_true == true; + $a8_tmp_last_exec = $a8_tmp_exec; + if ( $a8_tmp_exec ) + { +?> +<?php unset($a8_true) ?><?php $a9_readonly=false;$a9_name='openid_provider';$a9_value='identity';$a9_default=false;$a9_prefix='';$a9_suffix='';$a9_class='';$a9_onchange=''; ?><?php + if ($this->isEditable() && !$this->isEditMode()) $a9_readonly=true; + if ( isset($$a9_name) ) + $a9_tmp_default = $$a9_name; + elseif ( isset($a9_default) ) + $a9_tmp_default = $a9_default; + else + $a9_tmp_default = ''; + ?><input onclick="" class="radio" type="radio" id="id_<?php echo $a9_name.'_'.$a9_value ?>" name="<?php echo $a9_prefix.$a9_name ?>"<?php if ( $a9_readonly ) echo ' disabled="disabled"' ?> value="<?php echo $a9_value ?>" <?php if($a9_value==$a9_tmp_default) echo 'checked="checked"' ?><?php if (in_array($a9_name,$errors)) echo ' style="borderx:2px dashed red; background-color:red;"' ?> /> +<?php /* #END-IF# */ ?><?php unset($a9_readonly,$a9_name,$a9_value,$a9_default,$a9_prefix,$a9_suffix,$a9_class,$a9_onchange) ?><?php $a9_class='name';$a9_default='';$a9_type='text';$a9_name='openid_url';$a9_size='20';$a9_maxlength='256';$a9_onchange='';$a9_readonly=false; ?><?php if ($this->isEditable() && !$this->isEditMode()) $a9_readonly=true; + if ($a9_readonly && empty($$a9_name)) $$a9_name = '- '.lang('EMPTY').' -'; + if(!isset($a9_default)) $a9_default=''; + $tmp_value = Text::encodeHtml(isset($$a9_name)?$$a9_name:$a9_default); +?><?php if (!$a9_readonly || $a9_type=='hidden') { +?><input<?php if ($a9_readonly) echo ' disabled="true"' ?> id="id_<?php echo $a9_name ?><?php if ($a9_readonly) echo '_disabled' ?>" name="<?php echo $a9_name ?><?php if ($a9_readonly) echo '_disabled' ?>" type="<?php echo $a9_type ?>" size="<?php echo $a9_size ?>" maxlength="<?php echo $a9_maxlength ?>" class="<?php echo $a9_class ?>" value="<?php echo $tmp_value ?>" <?php if (in_array($a9_name,$errors)) echo 'style="border:2px dashed red;"' ?> /><?php +if ($a9_readonly) { +?><input type="hidden" id="id_<?php echo $a9_name ?>" name="<?php echo $a9_name ?>" value="<?php echo $tmp_value ?>" /><?php + } } else { ?><a href="<?php echo Html::url('','',0,array('mode'=>'edit')) ?>"><span class="<?php echo $a9_class ?>"><?php echo $tmp_value ?></span></a><?php } ?><?php unset($a9_class,$a9_default,$a9_type,$a9_name,$a9_size,$a9_maxlength,$a9_onchange,$a9_readonly) ?><?php } ?></td></tr><?php } ?><?php $a5_value=@count($dbids);$a5_greaterthan='1'; ?><?php + $a5_tmp_exec = intval($a5_greaterthan) < intval($a5_value); + $a5_tmp_last_exec = $a5_tmp_exec; + if ( $a5_tmp_exec ) + { +?> +<?php unset($a5_value,$a5_greaterthan) ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a8_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> + colspan="2" +><?php unset($a8_colspan) ?><?php $a9_title=lang('DATABASE');$a9_icon='database'; ?><fieldset><?php if(isset($a9_title)) { ?><legend><?php if(isset($a9_icon)) { ?><image src="<?php echo $image_dir.'icon_'.$a9_icon.IMG_ICON_EXT ?>" align="left" border="0"><?php } ?><?php echo encodeHtml($a9_title) ?></legend><?php } ?><?php unset($a9_title,$a9_icon) ?></fieldset></td></tr><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_class='text';$a8_key='DATABASE';$a8_escape=true;$a8_cut='both'; ?><?php + $a8_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a8_class ?>" title="<?php echo $a8_title ?>"><?php + $langF = $a8_escape?'langHtml':'lang'; + $tmp_text = $langF($a8_key); + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a8_class,$a8_key,$a8_escape,$a8_cut) ?></td><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> +<?php if (!empty($column_classes)) { ?> + class="<?php echo $column_classes[($column_idx-1)%count($column_classes)] ?>" +<?php } ?> +><?php $a8_list='dbids';$a8_name='dbid';$a8_default=$actdbid;$a8_onchange='';$a8_title='';$a8_class='';$a8_addempty=false;$a8_multiple=false;$a8_size='1';$a8_lang=false; ?><?php +$a8_readonly=false; +$a8_tmp_list = $$a8_list; +if ($this->isEditable() && !$this->isEditMode()) +{ + echo empty($$a8_name)?'- '.lang('EMPTY').' -':$a8_tmp_list[$$a8_name]; +} +else +{ +if ( $a8_addempty!==FALSE ) +{ + if ($a8_addempty===TRUE) + $a8_tmp_list = array(''=>lang('LIST_ENTRY_EMPTY'))+$a8_tmp_list; + else + $a8_tmp_list = array(''=>'- '.lang($a8_addempty).' -')+$a8_tmp_list; +} +?><select<?php if ($a8_readonly) echo ' disabled="disabled"' ?> id="id_<?php echo $a8_name ?>" name="<?php echo $a8_name; if ($a8_multiple) echo '[]'; ?>" onchange="<?php echo $a8_onchange ?>" title="<?php echo $a8_title ?>" class="<?php echo $a8_class ?>"<?php +if (count($$a8_list)<=1) echo ' disabled="disabled"'; +if ($a8_multiple) echo ' multiple="multiple"'; +if (in_array($a8_name,$errors)) echo ' style="background-color:red; border:2px dashed red;"'; +echo ' size="'.intval($a8_size).'"'; +?>><?php + if ( isset($$a8_name) && isset($a8_tmp_list[$$a8_name]) ) + $a8_tmp_default = $$a8_name; + elseif ( isset($a8_default) ) + $a8_tmp_default = $a8_default; + else + $a8_tmp_default = ''; + foreach( $a8_tmp_list as $box_key=>$box_value ) + { + if ( is_array($box_value) ) + { + $box_key = $box_value['key' ]; + $box_title = $box_value['title']; + $box_value = $box_value['value']; + } + elseif( $a8_lang ) + { + $box_title = lang( $box_value.'_DESC'); + $box_value = lang( $box_value ); + } + else + { + $box_title = ''; + } + echo '<option class="'.$a8_class.'" value="'.$box_key.'" title="'.$box_title.'"'; + if ((string)$box_key==$a8_tmp_default) + echo ' selected="selected"'; + echo '>'.$box_value.'</option>'; + } +?></select><?php +if (count($$a8_list)==0) echo '<input type="hidden" name="'.$a8_name.'" value="" />'; +if (count($$a8_list)==1) echo '<input type="hidden" name="'.$a8_name.'" value="'.$box_key.'" />'; +} +?><?php unset($a8_list,$a8_name,$a8_default,$a8_onchange,$a8_title,$a8_class,$a8_addempty,$a8_multiple,$a8_size,$a8_lang) ?><?php $a8_name='screenwidth';$a8_default='9999'; ?><?php +if (isset($$a8_name)) + $a8_tmp_value = $$a8_name; +elseif ( isset($a8_default) ) + $a8_tmp_value = $a8_default; +else + $a8_tmp_value = ""; +?><input type="hidden" name="<?php echo $a8_name ?>" value="<?php echo $a8_tmp_value ?>" /><?php unset($a8_name,$a8_default) ?></td></tr><?php } ?><?php + $row_idx++; + $column_idx = 0; +?> +<tr +> +<?php $a6_class='act';$a6_colspan='2'; ?><?php $column_idx++; ?><td +<?php if (!empty($column_widths)) { ?> + width="<?php echo $column_widths[($column_idx-1)%count($column_widths)] ?>" +<?php } ?> + class="act" + colspan="2" +><?php unset($a6_class,$a6_colspan) ?><?php $a7_type='ok';$a7_class='ok';$a7_value='ok';$a7_text='button_ok'; ?><?php + if ($this->isEditable() && !$this->isEditMode()) + $a7_text = 'MODE_EDIT'; + $a7_type = 'submit'; + if ( $this->isEditable() && readonly() ) + $a7_type = ''; // Knopf nicht anzeigen + $a7_src = ''; + if ( !empty($a7_type) ) { +?><input type="<?php echo $a7_type ?>"<?php if(isset($a7_src)) { ?> src="<?php echo $image_dir.'icon_'.$a7_src.IMG_ICON_EXT ?>"<?php } ?> name="<?php echo $a7_value ?>" class="ok" title="<?php echo lang($a7_text.'_DESC') ?>" value="&nbsp;&nbsp;&nbsp;&nbsp;<?php echo langHtml($a7_text) ?>&nbsp;&nbsp;&nbsp;&nbsp;" /><?php unset($a7_src) +?><?php } +?><?php unset($a7_type,$a7_class,$a7_value,$a7_text) ?><?php $a7_script='screenwidth';$a7_inline=false; ?><?php +$a7_tmp_file = $tpl_dir.'../../js/'.basename($a7_script).'.js'; +if (!$a7_inline) +{ + ?><script src="<?php echo $a7_tmp_file ?>" type="text/javascript"></script><?php +} +else +{ + echo '<script type="text/javascript">'; + echo str_replace(' ',' ',str_replace('~','',strtr(implode('',file($a7_tmp_file)),"\t\n\b",'~~~'))); + echo '</script>'; +} +?> +<?php unset($a7_script,$a7_inline) ?></td></tr><?php } ?> </table> + </td> + </tr> +</table> +<?php if ($showDuration) + { ?> +<br/> +<center><small>&nbsp; +<?php $dur = time()-START_TIME; + echo floor($dur/60).':'.str_pad($dur%60,2,'0',STR_PAD_LEFT); ?></small></center> +<?php } ?> +<?php $a3_value=@count($dbids);$a3_lessthan='2'; ?><?php + $a3_tmp_exec = intval($a3_lessthan) > intval($a3_value); + $a3_tmp_last_exec = $a3_tmp_exec; + if ( $a3_tmp_exec ) + { +?> +<?php unset($a3_value,$a3_lessthan) ?><?php $a4_name='dbid';$a4_default=$actdbid; ?><?php +if (isset($$a4_name)) + $a4_tmp_value = $$a4_name; +elseif ( isset($a4_default) ) + $a4_tmp_value = $a4_default; +else + $a4_tmp_value = ""; +?><input type="hidden" name="<?php echo $a4_name ?>" value="<?php echo $a4_tmp_value ?>" /><?php unset($a4_name,$a4_default) ?><?php } ?><?php $a3_name='objectid'; ?><?php +if (isset($$a3_name)) + $a3_tmp_value = $$a3_name; +elseif ( isset($a3_default) ) + $a3_tmp_value = $a3_default; +else + $a3_tmp_value = ""; +?><input type="hidden" name="<?php echo $a3_name ?>" value="<?php echo $a3_tmp_value ?>" /><?php unset($a3_name) ?><?php $a3_name='modelid'; ?><?php +if (isset($$a3_name)) + $a3_tmp_value = $$a3_name; +elseif ( isset($a3_default) ) + $a3_tmp_value = $a3_default; +else + $a3_tmp_value = ""; +?><input type="hidden" name="<?php echo $a3_name ?>" value="<?php echo $a3_tmp_value ?>" /><?php unset($a3_name) ?><?php $a3_name='projectid'; ?><?php +if (isset($$a3_name)) + $a3_tmp_value = $$a3_name; +elseif ( isset($a3_default) ) + $a3_tmp_value = $a3_default; +else + $a3_tmp_value = ""; +?><input type="hidden" name="<?php echo $a3_name ?>" value="<?php echo $a3_tmp_value ?>" /><?php unset($a3_name) ?><?php $a3_name='languageid'; ?><?php +if (isset($$a3_name)) + $a3_tmp_value = $$a3_name; +elseif ( isset($a3_default) ) + $a3_tmp_value = $a3_default; +else + $a3_tmp_value = ""; +?><input type="hidden" name="<?php echo $a3_name ?>" value="<?php echo $a3_tmp_value ?>" /><?php unset($a3_name) ?></form> +<br/><br/><?php $a2_title='';$a2_target='_top';$a2_url=@$conf['login']['gpl']['url'];$a2_class='copyright'; ?><?php + $params = array(); + $tmp_url = ''; + $params[REQ_PARAM_TARGET] = $a2_target; + $tmp_url = $a2_url; +?><a<?php if (isset($a2_name)) echo ' name="'.$a2_name.'"'; else echo ' href="'.$tmp_url.(isset($a2_anchor)?'#'.$a2_anchor:'').'"' ?> class="<?php echo $a2_class ?>"<?php if (isset($a2_accesskey)) echo ' accesskey="'.$a2_accesskey.'"' ?> title="<?php echo encodeHtml($a2_title) ?>"><?php unset($a2_title,$a2_target,$a2_url,$a2_class) ?><?php $a3_class='text';$a3_value=lang('GPL');$a3_escape=true;$a3_cut='both'; ?><?php + $a3_title = ''; + $tmp_tag = 'span'; +?><<?php echo $tmp_tag ?> class="<?php echo $a3_class ?>" title="<?php echo $a3_title ?>"><?php + $langF = $a3_escape?'langHtml':'lang'; + $tmp_text = $a3_escape?htmlentities($a3_value):$a3_value; + $tmp_text = nl2br($tmp_text); + echo $tmp_text; + unset($tmp_text); +?></<?php echo $tmp_tag ?>><?php unset($a3_class,$a3_value,$a3_escape,$a3_cut) ?></a><?php $a2_present='force_username'; ?><?php + $a2_tmp_exec = isset($$a2_present); + $a2_tmp_last_exec = $a2_tmp_exec; + if ( $a2_tmp_exec ) + { +?> +<?php unset($a2_present) ?><?php $a3_field='login_password'; ?><?php +if (isset($errors[0])) $a3_field = $errors[0]; +?><script name="JavaScript" type="text/javascript"><!-- +document.forms[0].<?php echo $a3_field ?>.focus(); +document.forms[0].<?php echo $a3_field ?>.select(); +</script> +<?php unset($a3_field) ?><?php } ?><?php if (!$a2_tmp_last_exec) { ?> +<?php $a3_field='login_name'; ?><?php +if (isset($errors[0])) $a3_field = $errors[0]; +?><script name="JavaScript" type="text/javascript"><!-- +document.forms[0].<?php echo $a3_field ?>.focus(); +document.forms[0].<?php echo $a3_field ?>.select(); +</script> +<?php unset($a3_field) ?><?php } +unset($a1_tmp_last_exec) ?>+ \ No newline at end of file diff --git a/themes/default/pages/view.php b/themes/default/pages/view.php @@ -0,0 +1,52 @@ +<?php + if (!defined('OR_VERSION')) die('Forbidden'); + if (!headers_sent()) header('Content-Type: text/html; charset='.$charset) +?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> + <title><?php echo isset($attr_title)?langHtml($attr_title).' - ':(isset($windowTitle)?langHtml($windowTitle).' - ':'') ?><?php echo $cms_title ?></title> + <meta http-equiv="content-type" content="text/html; charset=<?php echo $charset ?>" > +<?php if ( isset($refresh_url) ) { ?> + <meta http-equiv="refresh" content="<?php echo isset($refresh_timeout)?$refresh_timeout:0 ?>; URL=<?php echo $refresh_url; if (ini_get('session.use_trans_sid')) echo '&'.session_name().'='.session_id(); ?>"> +<?php } ?> + <meta name="MSSmartTagsPreventParsing" content="true" > + <meta name="robots" content="noindex,nofollow" > +<?php if (isset($windowMenu) && is_array($windowMenu)) foreach( $windowMenu as $menu ) + { + ?> + <link rel="section" href="<?php echo Html::url($actionName,@$menu['subaction'],$this->getRequestId() ) ?>" title="<?php echo lang($menu['text']) ?>" > +<?php + } +?><?php if (isset($metaList) && is_array($metaList)) foreach( $metaList as $meta ) + { + ?> + <link rel="<?php echo $meta['name'] ?>" href="<?php echo $meta['url'] ?>" title="<?php echo $meta['title'] ?>" ><?php + } +?><?php if(!empty($root_stylesheet)) { ?> + <link rel="stylesheet" type="text/css" href="<?php echo $root_stylesheet ?>" > +<?php } ?> +<?php if($root_stylesheet!=$user_stylesheet) { ?> + <link rel="stylesheet" type="text/css" href="<?php echo $user_stylesheet ?>" > +<?php } ?> +</head> + +<body> + +<?php global $viewCache; /* Debug-Information */ if ($showDuration||true) { echo "<!-- Output Variables are:\n";echo str_replace('-->','-- >',print_r($viewCache,true));echo "\n-->";} ?> + +<div id="header"> +<?php showView('header') ?> +</div> + +<div id="tree"> +<?php showView('tree') ?> +</div> + + +<div id="content"> +<?php showView('content') ?> +</div> + + +</body> +</html> diff --git a/themes/default/templates/file/show.tpl.src.php b/themes/default/templates/file/show.tpl.src.php @@ -0,0 +1,6 @@ +page + + window icon:folder + row + cell colspan:2 + insert url:var:preview_url diff --git a/themes/default/templates/object/rights.tpl.src.php b/themes/default/templates/object/rights.tpl.src.php @@ -60,4 +60,6 @@ page text key:inherit_rights row cell class:act colspan:15 - button type:ok- \ No newline at end of file + button type:ok + link class:action action: subaction:aclform + text key:add+ \ No newline at end of file diff --git a/themes/default/templates/page/prop.tpl.src.php b/themes/default/templates/page/prop.tpl.src.php @@ -36,6 +36,10 @@ page if empty:template_url image file:icon_template text var:template_name + newline + if false:mode:edit + link class:action action:page subaction:changetemplate + text key:menu_page_changetemplate row cell text key:FILE_MIMETYPE diff --git a/themes/default/templates/page/show.tpl.src.php b/themes/default/templates/page/show.tpl.src.php @@ -0,0 +1,6 @@ +page + + window icon:folder + row + cell colspan:2 + insert url:var:preview_url diff --git a/themes/default/templates/profile/edit.tpl.src.php b/themes/default/templates/profile/edit.tpl.src.php @@ -13,6 +13,10 @@ page cell #link action:profile subaction:mail title:message:menu_mail_desc text var:mail class:filename + if false:mode:edit + newline + link class:action action:profile subaction:mail + text key:edit row cell colspan:2 diff --git a/themes/default/templates/title/show.tpl.src.php b/themes/default/templates/title/show.tpl.src.php @@ -1,42 +1,34 @@ -page class:title +part + // Datenbank anzeigen + image icon:database align:left + text title:message:database var:dbname maxlength:25 + text raw:_-_ + text var:cms_title title:var:buildinfo + +part + // Titel anzeigen + if present:projectname + image icon:project align:left + text title:message:project var:projectname maxlength:20 + +part + image icon:model align:left + if present:modelname + text title:message:model var:modelname maxlength:20 + +if present:languagename + part + image icon:language align:left + text title:message:language var:languagename maxlength:20 - table padding:5 space:0 width:100% - row - // Datenbank anzeigen - cell class:title width:20% - image icon:database align:left - text title:message:database var:dbname maxlength:25 - text raw:_-_ - text var:cms_title title:var:buildinfo - - - // Titel anzeigen - cell class:title width:20% - if present:projectname - image icon:project align:left - text title:message:project var:projectname maxlength:20 - - cell class:title width:10% - image icon:model align:left - if present:modelname - text title:message:model var:modelname maxlength:20 - - cell class:title width:25% - if present:languagename - image icon:language align:left - text title:message:language var:languagename maxlength:20 - - // Benutzer-Funktionen - cell class:title width:15% - - link title:message:USER_PROFILE_DESC url:var:profile_url target:cms_main_main - image icon:user align:left - text var:userfullname maxlength:20 - - cell class:title width:10% - - link title:message:USER_LOGOUT_DESC url:var:logout_url target:_top - image icon:close align:left - text key:USER_LOGOUT - - - \ No newline at end of file +part class:logout + link title:message:USER_LOGOUT_DESC action:index subaction:logout target:content + image icon:close align:left + text key:USER_LOGOUT + +part class:user + // Benutzer-Funktionen + link title:message:USER_PROFILE_DESC action:profile subaction: target:content + image icon:user align:left + text var:userfullname maxlength:20 + + \ No newline at end of file diff --git a/themes/default/templates/tree/show.tpl.src.php b/themes/default/templates/tree/show.tpl.src.php @@ -1,35 +1,35 @@ -page class:tree +part class:breadcrumb + link action:index subaction:projectmenu target:content + image icon:project align:left + text title:message:project var:projectname maxlength:20 - table space:0 padding:0 class:tree - list list:zeilen extract:true - row class:var:class - list list:cols value:i - cell class:treecol - image tree:var:i - if present:image - cell class:treeimage - if present:image_url - link url:var:image_url class:tree target:_self title:var:image_url_desc anchor:var:name - image tree:var:image - else +link action:tree subaction:refresh class:action + image icon:project align:left + text key:refresh +link action:tree subaction:openall class:action + text key:all + +table space:0 padding:0 class:tree + list list:zeilen extract:true + row class:var:class + list list:cols value:i + cell class:treecol + image tree:var:i + if present:image + cell class:treeimage + if present:image_url + link url:var:image_url class:tree target:_self title:var:image_url_desc anchor:var:name image tree:var:image - cell colspan:var:colspan class:treevalue - link name:var:name - if present:url - link url:var:url title:var:desc class:tree target:var:target - image icon:var:icon - text var:text maxlength:20 cut:right else + image tree:var:image + cell colspan:var:colspan class:treevalue + link name:var:name + if present:url + link url:var:url title:var:desc class:tree target:var:target image icon:var:icon - text var:text maxlength:20 cut:right title:var:desc - if not: present:image - text raw:__ - link action:tree subaction:refresh - text key:refresh - //image icon:refresh align:left - text raw:__ - link action:tree subaction:openall - text key:all - //image icon:openall align:left - set var:url - set var:image + text var:text maxlength:20 cut:right + else + image icon:var:icon + text var:text maxlength:20 cut:right title:var:desc + set var:url + set var:image