Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
2 | daniel-mar | 1 | <?php |
2 | |||
3 | if (!defined('IBLEGAL')) die('Kann nicht ohne IronBASE ausgeführt werden.'); |
||
4 | |||
5 | // Funktioniert FTP-Zugang? |
||
6 | |||
7 | $conn_id = @ftp_connect($konfiguration['core_directftp']['ftp-server'], $konfiguration['core_directftp']['ftp-port']); |
||
8 | $login_result = @ftp_login ($conn_id, $konfiguration['core_directftp']['ftp-username'], $konfiguration['core_directftp']['ftp-passwort']); |
||
9 | |||
10 | $fehler = ''; |
||
11 | |||
12 | if ((!$conn_id) || (!$login_result)) |
||
13 | { |
||
14 | $fehler = 'IronBASE benötigt FTP-Zugriff auf das Verzeichnis "modules", damit Module ordnungsgemäß (de)installiert werden können.<br>Bitte bearbeiten Sie die <a href="'.$_SERVER['PHP_SELF'].'?modul=core_directftp&seite=konfig&vonmodul='.$modul.'">Konfigurationswerte</a> und tragen Sie dort korrekte Werte ein.<br><br>Mögliche Ursache: Server/Benutzername/Passwort falsch.'; |
||
15 | $verhindere_loeschen = 1; |
||
16 | } |
||
17 | |||
18 | if (($fehler == '') && ((substr($konfiguration['core_directftp']['ftp-verzeichnis'], 0, 1) != '/') || (substr($konfiguration['core_directftp']['ftp-verzeichnis'], strlen($konfiguration['core_directftp']['ftp-verzeichnis'])-1, 1) != '/'))) |
||
19 | { |
||
20 | $fehler = 'Die Verzeichnissyntax ist falsch. Bitte bearbeiten Sie die <a href="'.$_SERVER['PHP_SELF'].'?modul=core_directftp&seite=konfig&vonmodul='.$modul.'">Konfigurationswerte</a> und tragen Sie dort korrekte Werte ein.<br><br>Mögliche Ursache: Verzeichnis zeigt nicht auf IronBASE-Verzeichnis oder Datei "moddir.txt" ist nicht mehr vorhanden.'; |
||
21 | $verhindere_loeschen = 1; |
||
22 | } |
||
23 | |||
24 | if (($fehler == '') && (@ftp_size($conn_id, $konfiguration['core_directftp']['ftp-verzeichnis'].'modules/moddir.txt') == -1)) |
||
25 | { |
||
26 | $fehler = 'IronBASE benötigt FTP-Zugriff auf das Verzeichnis "modules", damit Module ordnungsgemäß (de)installiert werden können.<br>Bitte bearbeiten Sie die <a href="'.$_SERVER['PHP_SELF'].'?modul=core_directftp&seite=konfig&vonmodul='.$modul.'">Konfigurationswerte</a> und tragen Sie dort korrekte Werte ein.<br><br>Mögliche Ursache: Verzeichnis zeigt nicht auf IronBASE-Verzeichnis oder Datei "moddir.txt" ist nicht mehr vorhanden.'; |
||
27 | $verhindere_loeschen = 1; |
||
28 | } |
||
29 | |||
30 | @ftp_quit($conn_id); |
||
31 | |||
32 | echo $header; |
||
33 | |||
34 | if ($modulueberschrift == '') $modulueberschrift = $modul; |
||
35 | echo '<h1>'.htmlentities($modulueberschrift).'</h1>'; |
||
36 | echo 'Hier können Sie die Module von IronBASE verwalten. Ist ein Modul nicht |
||
37 | korrekt geschrieben worden, so können trotz Deinstallation des Moduls noch Datenbestände in der |
||
38 | Datenbank zurückbleiben. Wenn das Modul als "IronBASE-Core" eingestuft wurde, dann |
||
39 | ist der Autor des Moduls der Meinung, dass es wichtig für die Ausführung von IronBASE oder anderen |
||
40 | Modulen verantwortlich ist. Entfernen Sie ein solches Modul, so kann IronBASE beschädigt und Kundendaten |
||
41 | verloren gehen! In dem Feld "Daten" können Sie sehen, wie viele IronBASE-Konfigurationswerte (C) und wie viele |
||
42 | MySQL-Tabellen (T) das jeweilige Modul benutzt.<br><br>'; |
||
43 | |||
44 | gfx_begintable(); |
||
45 | gfx_tablecontent('', '<b>Verzeichnisname</b>', '', '<b>Modulname</b>', '', '<b>Autor</b>', '', '<b>Lizenztyp</b>', '', '<b>Sichtbar</b>', '', '<b>Version</b>', '', '<b>Daten</b>', '', '<b>Aktionen</b>'); |
||
46 | foreach ($module as $m1 => $m2) |
||
47 | { |
||
48 | $res = db_query("SELECT COUNT(*) AS `cid` FROM `".$mysql_zugangsdaten['praefix']."konfig` WHERE `modul` = '".db_escape($m2)."'"); |
||
49 | $row = db_fetch($res); |
||
50 | $cdaten = $row['cid']; |
||
51 | |||
52 | $res = db_query("SELECT COUNT(*) AS `cid` FROM `".$mysql_zugangsdaten['praefix']."module` WHERE `modul` = '".db_escape($m2)."'"); |
||
53 | $row = db_fetch($res); |
||
54 | $mdaten = $row['cid']; |
||
55 | |||
56 | $modulueberschrift = ''; |
||
57 | $modulsekpos = ''; |
||
58 | $modulpos = ''; |
||
59 | $modulrechte = ''; |
||
60 | $autor = ''; |
||
61 | $version = ''; |
||
62 | $menuevisible = ''; |
||
63 | $license = ''; |
||
64 | $deaktiviere_zugangspruefung = 0; |
||
65 | |||
66 | if (file_exists('modules/'.$m2.'/var.inc.php')) |
||
67 | include 'modules/'.$m2.'/var.inc.php'; |
||
68 | if ($modulueberschrift == '') $modulueberschrift = 'Unbekannt'; |
||
69 | if ($autor == '') $autor = 'Unbekannt'; |
||
70 | if ($version == '') $version = 'Unbekannt'; |
||
71 | if ($menuevisible == '0') |
||
72 | $menuevisible = 'Nein'; |
||
73 | else if ($menuevisible == '1') |
||
74 | $menuevisible = 'Ja'; |
||
75 | else |
||
76 | $menuevisible = 'Unbekannt'; |
||
77 | if ($license == '0') |
||
78 | $license = 'Public Freeware'; |
||
79 | else if ($license == '1') |
||
80 | $license = 'Public Shareware'; |
||
81 | else if ($license == '2') |
||
82 | $license = 'Private Secured'; |
||
83 | else if ($license == '3') |
||
84 | $license = 'IronBASE-Core'; |
||
85 | else if ($license == '4') |
||
86 | $license = 'IronBASE-Enclosure'; |
||
87 | else |
||
88 | $license = 'Unbekannt'; |
||
89 | $ca = ($cdaten == 0) ? '' : '<a href="'.$_SERVER['PHP_SELF'].'?modul=admin_konfig&seite=konfig&only='.$m2.'&vonmodul='.$modul.'&vonseite='.$seite.'" class="menu">'; |
||
90 | $cb = ($cdaten == 0) ? '' : '</a>'; |
||
91 | $ta = ($mdaten == 0) ? '' : '<a href="'.$_SERVER['PHP_SELF'].'?modul=admin_datenbank&seite=inhalt&only='.$m2.'&vonmodul='.$modul.'&vonseite='.$seite.'" class="menu">'; |
||
92 | $tb = ($mdaten == 0) ? '' : '</a>'; |
||
93 | |||
94 | if ((isset($verhindere_loeschen)) && ($verhindere_loeschen != '')) |
||
95 | $aktionen = '<font color="#888888">Entfernen</font>'; |
||
96 | else |
||
97 | $aktionen = '<a href="javascript:abfrage(\''.$_SERVER['PHP_SELF'].'?seite=kraftsetzung&modul='.$modul.'&aktion=delete&entfernen='.$m2.'\');" class="menu">Entfernen</a>'; |
||
98 | |||
99 | gfx_tablecontent('', htmlentities($m2), '', htmlentities($modulueberschrift), '', htmlentities($autor), '', $license, '', $menuevisible, '', htmlentities($version), '', $ca.$cdaten.'C'.$cb.' / '.$ta.$mdaten.'T'.$tb, '', $aktionen); |
||
100 | } |
||
101 | |||
102 | unset($m1); |
||
103 | unset($m2); |
||
104 | |||
105 | gfx_endtable(); |
||
106 | echo '<b>Modul installieren</b><br><br>'; |
||
107 | |||
108 | if ($fehler != '') |
||
109 | echo '<font color="#FF0000">'.$fehler.'</font>'; |
||
110 | else |
||
111 | echo 'Achtung: IronBASE überlässt den Modulen die komplette Handlungsfreiheit bezüglich der Datenbank und der PHP-Codeausführung. Ein Modul kann bei dem Installationsprozess bösartigen Code ausführen und das System oder den Datenbestand gefährden. Installieren Sie daher nur Module, bei denen Sie sicherstellen können, dass sie keinen bösartigen Code enthalten. Wenn Sie ein Modul updaten möchten, deinstallieren Sie die alte Version des Modules zuerst. Maximale Dateigröße: '.ini_get('post_max_size').'B<br><br> |
||
112 | |||
113 | <form enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'" method="POST"> |
||
114 | <input type="hidden" name="seite" value="kraftsetzung"> |
||
115 | <input type="hidden" name="modul" value="'.$modul.'"> |
||
116 | <input type="hidden" name="aktion" value="install"> |
||
117 | <input type="hidden" name="MAX_FILE_SIZE" value="'.return_bytes(ini_get('post_max_size')).'"> |
||
118 | |||
119 | <input name="dfile" type="file"><br><br> |
||
120 | |||
121 | <input type="submit" class="button" onmouseover="this.className=\'button_act\';" onmouseout="this.className=\'button\';" value="Modul installieren"> |
||
122 | </form><a href="http://www.viathinksoft.de/info/ironbase/module.php" target="_blank">Weitere Module im offiziellen IronBASE-Portal</a>'; |
||
123 | |||
124 | echo $footer; |
||
125 | |||
126 | ?> |