/
index.php
executable file
·118 lines (99 loc) · 3.86 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<?php
//echo "START ".microtime(true)."<br>";
/**
*
* @author Daniel Scheidler
* @copyright Mai 2008
*/
include_once("init.php");
$_SESSION['mainpanelheight'] = 600;
$runLinkTarget = "mainpage";
/** ------------------------------------
* ACTION-LOG
*
* Hier wird festgehalten was wann von wem
* getan wurde (userid, sessionid, aktion, timestamp)
------------------------------------ */
if( isset($_REQUEST['CySess']) && strlen($_REQUEST['CySess'])>0 ){
include("ActionLog.php");
}
/** ------------------------------------
* HANDLER
*
* Der IndexHandler verwaltet alle Aktionen
* die mittels "do" URL-Parameter angestoßen
* werden.
------------------------------------ */
if(isset($_REQUEST['do']) && strlen($_REQUEST['do'])>0){
$HANDLER = new IndexHandler($_SESSION['config']);
$HANDLER->DoAction($_REQUEST['do']);
}
/** ------------------------------------
* RUNLINKS
*
* Der "run" URL-Parameter steuert Anderungen
* der dynamischen Inhalte
*
* der Wert der mittels ?run= übergeben wird
* entspricht dem Datenbankwert: (Tabelle: RUNLINKS / Spalte: NAME)
*
* der optionale URL-Parameter "runtarget"
* gibt an wie der Name der Sessionvariable lautet
* in der der Link aktualisiert werden soll.
* Wird dieser nicht angegeben,
* gilt der Wert automatisch für **$_SESSION['mainpage']**
------------------------------------ */
// Prüfung ob abweichendes Ziel angegeben wurde
if( isset($_REQUEST['runtarget']) && strlen($_REQUEST['runtarget'])>0){
$runLinkTarget = $_REQUEST['runtarget'];
}
//Alle RunLinks für ermitteltes Ziel bereitstellen
$RUNLINKS = new RunLinks($_SESSION['config']->DBCONNECT, $runLinkTarget);
/** ------------------------------------
* MENUPARENT
*
* Der "menuParent" URL-Parameter steuert Anderungen
* der Oberkategorie
*
* der Wert der mittels ?menuParent= übergeben wird
* entspricht dem Datenbankwert: (Tabelle: MENU / Spalte: PARENT)
------------------------------------ */
if(isset($_REQUEST['menuParent']) && strlen($_REQUEST['menuParent'])>0){
$_SESSION['MENU_PARENT'] = $_REQUEST['menuParent'];
if(!(isset($_REQUEST['run']) && strlen($_REQUEST['run'])>0)){
$_SESSION['runLink'] = $RUNLINKS->getFirstRunLinkNameByParent($_SESSION['MENU_PARENT']);
}
} elseif(!isset($_SESSION['MENU_PARENT'])){
$_SESSION['MENU_PARENT'] = "Steuerung";
}
$run = "";
// Wenn neues Ziel angefordert wurde, dieses ermitteln
if(isset($_REQUEST['run']) && strlen($_REQUEST['run'])>0){
if(isValidRun($_REQUEST['run'])){
// NEUES ZIEL ANGEFORDERT
$run = $RUNLINKS->getLinkByName($_REQUEST['run']);
$_SESSION['runLink'] = $_REQUEST['run'];
$_SESSION['tmp'] = array();
}
} else if(!isset($_SESSION[$runLinkTarget]) || strlen($_SESSION[$runLinkTarget]) == 0 ) {
//KEIN ZIEL ANGEGEBEN -> KEIN ALTES ZIEL VORHANDEN Default: start
$run = $RUNLINKS->getLinkByName("start");
$_SESSION['runLink'] = "start";
}
//Wurde ein Link gefunden wird dieser Wert im entsprechenden Ziel aktualisiert
if(strlen($run)>0){
// Ist ein alternatives Ziel gesetzt,
// wird der neue link in die entsprechende session-variable geschrieben
// ansonsten gilt der RUNLINK für die Hauptseite (mainpage)
if( isset($runLinkTarget) && strlen($runLinkTarget)>0){
$_SESSION[ $runLinkTarget ] = $run;
} else {
$_SESSION['mainpage'] = $run;
}
}
// URL Parameter prüfen ob ein Schaltbefehl abgesetzt wurde.
checkUrlParameter($_SESSION['config']->DBCONNECT);
include("layout.php");
include("foot.php");
//echo "END ".microtime(true)."<br>";
?>