biete auch Drupal 6 an
bernd

bernd commited on 2009-03-02 11:31:34
Zeige 3 geänderte Dateien mit 124 Einfügungen und 0 Löschungen.


git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@1289 87cf0b9e-d624-0410-a070-f6ee81989793
... ...
@@ -0,0 +1,35 @@
1
+<?php
2
+
3
+require_once('inc/debug.php');
4
+
5
+require_once('webapp-installer.php');
6
+
7
+
8
+function validate_data($post)
9
+{
10
+  DEBUG('Validating Data:');
11
+  DEBUG($post);
12
+  $fields = array('adminuser', 'adminpassword', 'adminemail', 'sitename', 'siteemail', 'dbhandle');
13
+  foreach ($fields AS $field)
14
+    if ((! isset($post[$field])) || $post[$field] == '')
15
+      system_failure('Nicht alle Werte angegeben ('.$field.')');
16
+
17
+  $username = mysql_real_escape_string($_SESSION['userinfo']['username']);
18
+  $dbname = $username.'_'.$post['dbhandle'];
19
+  $dbpassword = create_webapp_mysqldb($post['dbhandle']);
20
+
21
+  $passwordhash = md5( $post['adminpassword'] );
22
+  
23
+  $data = "adminuser={$post['adminuser']}
24
+adminpassword={$passwordhash}
25
+adminemail={$post['adminemail']}
26
+sitename={$post['sitename']}
27
+siteemail={$post['siteemail']}
28
+dbname={$dbname}
29
+dbuser={$dbname}
30
+dbpass={$dbpassword}";
31
+  DEBUG($data);
32
+  return $data;
33
+}
34
+
35
+
... ...
@@ -20,6 +20,8 @@ $form = '<h4>Anwendung auswählen</h4>
20 20
 <div style="margin-left: 2em;">
21 21
   <p><input checked="checked" type="radio" name="application" id="application_mediawiki" value="mediawiki" /> <label for="application_mediawiki">MediaWiki</label></p>
22 22
   <p style="margin-left: 2em;">MediaWiki ist eine Wiki-Software, mit der Seiteninhalte von Besuchern geändert werden können. MediaWiki ist u.A. die Grundlage der Online-Enzyklopädie »Wikipedia«.</p>
23
+  <p><input type="radio" name="application" id="application_drupal6" value="drupal6" /> <label for="application_drupal6">Drupal (Version 6.x)</label></p>
24
+  <p style="margin-left: 2em;">Drupal ist ein verbreitetes Content-Management-System. Als solches bietet es die Möglichkeit, Seiten-Inhalte im Web-Browser zu ändern, einzelne Seiten nur angemeldeten Benutzern freizugeben oder z.B. das kommentieren einzelner Seiten.</p>
23 25
 </div>
24 26
 ';
25 27
 
... ...
@@ -0,0 +1,87 @@
1
+<?php
2
+
3
+require_once('inc/base.php');
4
+require_once('session/start.php');
5
+
6
+global $config;
7
+
8
+
9
+require_role(ROLE_SYSTEMUSER);
10
+
11
+$title = 'Drupal 6 einrichten';
12
+$section = 'webapps_install';
13
+
14
+// Wurde beim Schreiben in die Session schon verifiziert
15
+$docroot = $_SESSION['webapp_docroot'];
16
+$url = $_SESSION['webapp_url'];
17
+
18
+if (! $docroot)
19
+{
20
+  system_failure('Kann die Session-Daten nicht auslesen. So geht das nicht.');
21
+}
22
+
23
+
24
+if (isset($_POST['submit']))
25
+{
26
+  require_once('install-drupal6.php');
27
+  require_once('webapp-installer.php');
28
+  
29
+  check_form_token('install_drupal6');
30
+
31
+  $data = validate_data($_POST);
32
+  if (! $data)
33
+    system_failure('wtf?!');
34
+  create_new_webapp('drupal6', $docroot, $url, $data); 
35
+  
36
+  output('<h2>Drupal 6 installieren</h2>
37
+
38
+<p>Ihr Drupal wird jetzt installiert. Sie erhalten eine E-Mail, sobald die Website betriebsbereit ist.</p>
39
+');
40
+  
41
+}
42
+else
43
+{
44
+
45
+  require_once('modules/vhosts/include/vhosts.php');
46
+  $vhosts = list_vhosts();
47
+  
48
+  output('<h3>Drupal 6 installieren</h3>
49
+
50
+<p>Die Einrichtung von Drupal erfordert die Angabe ein paar weniger Daten.</p>
51
+');
52
+
53
+  $form = '
54
+<h4>Basisdaten</h4>
55
+<div style="margin-left: 2em;">
56
+  <h5>Ort der neuen Website</h5>
57
+  <p>Drupal wird im Verzeichnis <strong>'.$docroot.'</strong> installiert und wird später voraussichtlich unter <strong>'.$url.'</strong> abrufbar sein.</p>
58
+  <p>Beachten Sie bitte: Die Installation wird in Ihrem Home-Verzeichnis durchgeführt und es wird ein normaler Host im Webinterface dafür angelegt. Sie können diese Einstellungen also jederzeit verändern.</p>
59
+  
60
+  <h5>Name der Seite</h5>
61
+  <p>Der Seitenname wird im Titel jeder Seite angezeigt und für diverse Texte verwendet.</p>
62
+  <p><label for="sitename">Seiten-Name:</label> <input type="text" id="sitename" name="sitename" /></p>
63
+  
64
+  <h5>E-Mail-Adresse der Seite</h5>
65
+  <p>Wenn die Website E-Mails versendet (z.B. für neue Benutzer, bei kommentaren auf einzelnen Seiten, ...) erscheint diese Adresse als Absender.
66
+  <p><label for="siteemail">E-Mail-Adresse:</label> <input type="text" id="siteemail" name="siteemail" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></p>
67
+  
68
+  <h5>Datenbank-Kürzel</h5>
69
+  <p>Drupal benötigt eine MySQL-Datenbank. Dieses Programm wird automatisch eine Datenbank für Sie anlegen. Damit Sie diese später erkennen und verwalten können, wird ein Kürzel benötigt. Der Name der Datenbank wird nachher aus Ihrem Benutzernamen und diesem Kürzel erzeugt. Die Eingabe hier darf keine Leer- oder Sonderzeichen enthalten und nur wenige Zeichen lang sein.</p>
70
+  <p><label for="dbhandle">Kürzel für Datenbankname:</label> <input type="text" name="dbhandle" id="dbhandle" value="drupal6" /></p>
71
+</div>
72
+
73
+<h4>Drupal-Administrator</h4>
74
+<div style="margin-left: 2em;">
75
+  <p>Der Administrator kann später auf der Website neue Benutzer anlegen, Seiten erzeugen und verändern und sonstige Verwaltungsaufgaben durchführen.</p>
76
+  <p><label for="adminuser">Benutzername:</label> <input type="text" id="adminuser" name="adminuser" value="'.$_SESSION['userinfo']['username'].'" /></p>
77
+  <p><label for="adminpassword">Passwort:</label> <input type="password" id="adminpassword" name="adminpassword" /></p>
78
+  <p><label for="adminemail">E-Mail-Adresse:</label> <input type="text" id="adminemail" name="adminemail" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></p>
79
+</div>
80
+
81
+<p><input type="submit" name="submit" value="Drupal installieren!" /></p>
82
+';
83
+
84
+  output(html_form('install_drupal6', '', '', $form));
85
+
86
+}
87
+
0 88