WBCE CMS – Way Better Content Editing.
Du bist nicht angemeldet.
Ich bin dabei, den Installer optisch und funktional gemäß Wishlist zu überarbeiten. Nachfolgend schon mal ein paar Screenshots.
Ich habe da jetzt einiges rausgeschmissen.
* die ganzen writeable-Meldungen - nur, wenn etwas Kritisches nicht stimmt, kommt ein Hinweis
* Default time set, weil's (WB-Altlast) sowieso nicht richtig funktioniert, jedenfalls nicht so wie es zu erwarten wäre
* Auswahl Installation Windows / Unix, weil WB(CE) unter Windows eh nicht funktioniert
* Auswahl, ob Tabellen installiert werden sollen oder nicht, weil ohne Tabellen die Installation m.E wenig Sinn ergibt
Die save.php muss ich noch anpassen (Fehlermeldungen, Reihenfolge usw.) und die Optionsauswahl zu Beispielseiten nebst Beispielseiteninhalten fehlen noch.
Mehr dann in den nächsten Tagen.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Übrigens, der Installer löscht sich ja nach Erfolg jetzt schon selbst. Nur - wo kann ich das zum Testen auskommentieren?
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
File: wb/admin/start/index.php
Zeile(-n): 130 bis 132
(Im aktuellen Git) auskommentieren ...
if(file_exists(WB_PATH.'/install/') || file_exists(WB_PATH.'/upgrade-script.php') ) {
// if(!function_exists('rm_full_dir')) @require_once(WB_PATH.'/framework/functions.php');
// if(file_exists(WB_PATH.'/upgrade-script.php')) unlink(WB_PATH.'/upgrade-script.php');
// if(file_exists(WB_PATH.'/install/')) rm_full_dir(WB_PATH.'/install/');hm ... der "Klammeraffe" vor dem "require_once" ist da eigentlich auch __überflüssig__
Kind regards
Kant
Beitrag geändert von kant (22.07.2015 23:25:59)
Sapere aude!
Offline
* Auswahl Installation Windows / Unix, weil WB(CE) unter Windows eh nicht funktioniert
Sollte es aber, sehr viele Entwickler haben eine Lokale Installation zum Testen und werden höchst unerfreut sein wenn das nicht mehr geht und leider müssen viele auch unter Win arbeiten. Die Mobile Edition ist doch auf nem USB stick installierbar , wenn die jetzt nicht mehr unter Win geht kann man es auch nicht mehr für Präsentationen nutzen.
Auch wichtig, das mit der unter Win nicht dauernd versucht die Dateirechte zu setzen.
Warumm funzt der nicht unter Win , ist das getestet ?
* Auswahl, ob Tabellen installiert werden sollen oder nicht, weil ohne Tabellen die Installation m.E wenig Sinn ergibt
Absolut sinnig, wenn was bei der Installation daneben gegangen ist , zum Beispiel hatte ich man die Dateirechte nach nem Umzug verkehrt.
Allerdings vermutlich nur sinnig wenn der Installer für solche Reparaturen ausgelegt ist. Kann also vorläufig doch erst mal raus.
Ich hofe das setzen der Dateirechte ist noch drinn ? Sonst erzeugt der auf manchen Hostern Ordner und Dateien die man per FTP nicht mehr löschen kann.
Offline
@norhei
Bislang ist das Ding ja nur bei mir lokal auf dem Rechner. Aber da war ich dann wohl etwas zu rigoros.
Ich werde es so bauen, dass die Spezialfälle (Auswahl Windows/Unix, Dateirechte, Tabellen) erstmal ausgeblendet und mit üblichen Standardwerten vorbelegt sind und diese Einstellungen dann bei Bedarf eingeblendet und angepasst werden können.
@kant
Danke! Nun kann ich weiter basteln, ohne mir am Ende selbst das Script zu löschen 
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Ich schau gleich mal in meine Archive , ich hatte da auch schon mal nen Intaller beinahe fertig gebaut, da hatte ich so etliche der Checks automatisiert , vielleicht hab ichs noch irgendwo. Ich schau mal.
Offline
Da hatte ich auch schon dran herumgewerkelt bzw -gewürgt, voilà PHP-Code from hell:
<?php
function chkInstallDir($pfad) {
$rpfad = "../".$pfad."/";
$rv = true;
if (is_writeable($rpfad)==false || file_exists($rpfad)==false) {
$rv = false;
}
return $rv;
}
?>
...
<div class="error">
<ul>
<?php if(isset($_SESSION['message']) AND $_SESSION['message'] != '' ) { ?>
<li><?php echo $_SESSION['message']; ?></li>
<?php }
if (version_compare(PHP_VERSION, '5.3.6', '<')) {
$installFlag = false; ?>
<li>
WBCE läuft ab <strong>PHP-Version 5.3.6 oder neuer.</strong> Mit <?php echo PHP_VERSION;?> wird das leider nichts. :( <br />
WBCE needs <strong>PHP 5.3.6 or newer.</strong> It won't work with <?php echo PHP_VERSION;?> :(
</li>
<?php }
if(ini_get('safe_mode')!='' || strpos(strtolower(ini_get('safe_mode')), 'on')!==FALSE || ini_get('safe_mode')==1) {
$installFlag = false; ?>
<li><strong>PHP Safe_Mode</strong> ist aktiviert. WBCE kann daher nicht installiert werden.<br />
<strong>PHP Safe_Mode is active.</strong> Therefor WBCE cannot be installed.
<?php }
if (file_exists($wb_path."/config.php")) {
if (filesize($wb_path."/config.php") > 128) {
$installFlag = false; ?>
<li>Es existiert eine <strong>config.php!</strong> Zur Aktualisierung einer vorhandenen WebsiteBaker(CE)-Instanz bitte das Updatescript ausführen.<br />
There is already a <strong>config.php</strong>! Please run the update script for updating ypur WebsiteBaker(CE) instance.</li>
<?php }
} else {
if (is_writeable($wb_path)) {
$cf = fopen($wb_path."/config.php","w");
fclose($cf);
} else {
$installFlag = false; ?>
<li>Die <strong>config.php</strong> konnte nicht angelegt werden. Bitte Schreibrechte auf Installationsverzeichnis prüfen!<br />
The <strong>config.php</strong> could not be created. Please check the access rights for the installation directory.</li>
<?php
}
}
if (
chkInstallDir("pages") == false ||
chkInstallDir("media") == false ||
chkInstallDir("modules") == false ||
chkInstallDir("templates") == false ||
chkInstallDir("languages") == false ||
chkInstallDir("temp") == false) {
$installFlag = false; ?>
<li>Ein oder mehrere Verzeichnisse fehlen oder sind nicht beschreibbar. Bitte Vorhandensein und Schreibrechte der Verzeichnisse <strong>languages, media, modules, pages, templates</strong> und <strong>temp</strong> unterhalb von <?php echo $wb_path;?> prüfen!<br />
One or more directories are missing or not writeable. Please check if the following directories exist and are writeable: <strong>languages, media, modules, pages, templates</strong> and <strong>temp</strong> beyond <?php echo $wb_path;?>.</li>
<?php
}
?>
</ul>
</div> <!-- error display-->(Offtopic: Hm. 'n Syntaxhighlighter wäre hier im Forum ja auch noch praktisch)
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
"sehr viele Entwickler haben eine Lokale Installation zum Testen und werden höchst unerfreut sein"
Ich habe am localhost unter Windows noch niemals die Option "Auswahl Installation Windows" genutzt - funktioniert trotzdem einwandfrei. Oder hab ich da was übersehen?
Hmmmm... sollten wir im Hinterkopf behalten, vielleicht ist der Schalter garned verdrahtet?
Offline
Der Schalter ist einfach nur unsinnig:
[== PHP ==]
if ($operating_system == 'windows') {
$file_mode = '0666';
$dir_mode = '0777';
} elseif (isset($_POST['world_writeable']) AND $_POST['world_writeable'] == 'true') {
$file_mode = '0666';
$dir_mode = '0777';
} else {
$file_mode = default_file_mode('../temp');
$dir_mode = default_dir_mode('../temp');
}Windows hat kein chmod bzw. 4er oktales Berechtigungssystem. Daher ist das Thema auch nicht wirklich abzubilden.
Normalerweise muss (und soll) ich mir bei Windows sowieso keine Gedanken um Berechtigungen an dieser Stelle zu machen.
Hier sind Windows und Linux / Unix einfach zu unterschiedlich.
Offline
Da ist was drann , also sollte der Schalter doch raus können...
Offline
Der Schalter ist nicht wegen Windows drin, sondern wegen Linux/UNIX. Dort kann es in manchen Umgebungen sein, daß das ganze Ding nicht funktioniert, ohne daß man 777 als Rechte setzt. Das hat was mit FTP-/Webserver-Benutzer zu tun. Ein vollständiges Streichen ist daher vielleicht etwas voreilig. 
Mach's wie bei dem anderen, nur im Problemfall anzeigen.
In "einem anderen Installer" *hüstel* werden übrigens sowohl das OS als auch die Zeit- und Spracheinstellungen automatisch erkannt und vorausgewählt. Mich hat es schon immer genervt, wenn Englisch vorgeschlagen wird, wenn ich mich in Deutschland befinde. Und die Zeitzone von Burundi macht dann auch keinen Sinn. *scherz*
Ich habe eine Amazon-Wishlist.
Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
WB(CE) unter Windows eh nicht funktioniert
Häh??? Das sollte mich doch sehr wundern, da ich WBCE unter Win7 und XAMPP zusammengebaut habe...
Ich habe eine Amazon-Wishlist.
Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
Auswahl, ob Tabellen installiert werden sollen oder nicht, weil ohne Tabellen die Installation m.E wenig Sinn ergibt
Die Auswahl ist dafür da, weil es sein kann, daß man eine alte oder fehlgeschlagene Installation hat. Es ist ein Unterschied zwischen Tabellen anlegen und Tabellen füllen. Ich weiß jetzt grad ohne Nachschauen nicht, wie das im WB Installer gehandhabt ist, aber rein logisch sollten _mit_ der Option die Tabellen vorher mit DROP gelöscht werden, während _ohne_ die Option als sicher angenommen wird, daß sie nicht existieren. Das läuft dann unweigerlich auf einen Fehler, wenn sie doch existieren.
Ich weiß aber grad nicht, ob WB das schon so konsequent gehandhabt hat, oder ob das erst bei LEPTON so war...
Ich habe eine Amazon-Wishlist.
Oder spende an das Projekt.
Ich kann, wenn ich will, aber wer will, dass ich muss, kann mich mal
Offline
Dateirechte:
Warum nicht einfach ein aufklappbares Feld wo man die Dateirechte manuell eingeben kann ?
DB Tabellen:
Und als Default werden sie NICHT mit DROP gelöscht, damit man nicht aus versehen eine alte/andere Instalation überschreibt. Genau das wars !
Also wenn man zum Beispiel vergessen hat das Prefix zu ändern und dann einfach installiert kann es sein das eine andere Installation in der gleichen DB einfach weg ist 
Offline
Das mit Windows meinte ich nur, weil es doch immer hieß, dass WB unter Win nicht unterstützt wird. Mein Gebatel am Installer mache ich ja auch unter Windows, insfofern ist das natürlich quatsch, dass WBCE nicht mit Windows funktioniert. Bitte aus dem Protokoll streichen ;-)
Alles andere schaue ich mir später in Ruhe an.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Grundsätzlich möchte ich den Installer wirklich so einfach wie möglich machen, so dass dort weder zig verwirrende Angaben abgefragt werden, noch man Gefahr läuft, sich durch unbedachtes Klicken eine vorhandene Installation zu zerschießen. In der Richtung würde ich erstmal weiterbauen. Und ja, ich dachte auch erst, pah, Installer, Wegwerfscript, who cares, aber andererseits ist es schon so, dass der erste Eindruck zählt.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Du hast das bekannte Problem .... So komplex wie nötig und so einfach wie möglich.
Eventuell einfach einen Ausklappbaren Bereich mit Experten Einstellungen.
Offline
Natürlich ist der Installer nicht das Wichtigste, aber wie schon gesagt der erste Eindruck. Der zweite Eindruck ist dann natürlich "Hää? Was geht'n etz wie?".
Der geneigte Smartphone-Benutzer will hier auch keine Tutorials wälzen und Hilfeseiten durchlesen, sondern das soll alles sich automatisch erschließen.
Ich habe hier mal Screenshots der Wordpress Installation angehängt - man darf ja mal spicken, wie es die anderen machen.
Offline
Der geneigte Smartphone-Benutzer
Kommt das wirklich vor, dass das smartphone gezückt wird, um ein CMS zu installieren? Kann ich mir gerade nicht so richtig vorstellen.
Was mir so im Kopf herumschwirrt, ist irgendwie den Aufwand loszuwerden, jedes Mal 6000 Dateien per FTP übertragen zu müssen. Ich mache es jetzt schon immer so, dass ich ein Zip mit dem ganzen Wust erstelle, nur das und ein Unzip-PHPscript auf den Server übertrage und das dann aufrufe - geht 1000x schneller als alles einzeln per FTP rüberzuschaufeln.
Wenn darauf Verlass wäre, dass sowas auf jedem Server funktioniert (tut es aber leider nicht, ich weiß), könnte man ein Installationspaket aus zwei Dateien anbieten - dem Installationsscript, in dem die erforderlichen Angaben abgefragt werden, und einem Zip mit den Dateien, das dann im zuge der Installation vom Script auf dem Server entpackt wird.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Mag vielleicht doch irgendwer anders das Thema Installer übernehmen? Ich bekomme da nichts Vernünftiges zustande und würde mich doch lieber auf das WBCE-Forum und die Website konzentrieren, anstatt irgendwie im Code herumzufuhrwerken.
Bearbeitungsstand habe ich mal angehängt.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
- The updater screams to make a backup from the files (for good's sake "our" installer not as loud as the WB classic installer). Nevertheless, this warning comes way too late. When you call the update script, you have already copied the files onto the server and lateral damaged your setup in worst case.
- it takes too long time to copy each file seperately onto the server. I figured out that the unzip trick (e.g. put the update files in a zip and call a prepared php file to unzip it) works also with the update, so a future express updater could contain of a zip file and an unpack script.
- Maybe this could be also an opportunity to include a precheck and/or kind of backup mechanism, e.g.
-- before the new files are unzipped, the system requirements are proven and installation only goes on when thy're ok
-- the existing files are stored to avoid any loss of module customizations.
I know that this is problematic due to timeout and/or access right issues, but maybe there are solutions to this.
- automatic update (as Wordpress does) or at least an information about a new release and the included possibility to update (like Piwik does) would be great.
- at least we should offer taylor made installation/update packages. (Full package, update WBCE 1.1 -> 1.2, update WB -> WBCE)
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
One more thing: the default value "admin" for the login name of the administrator account should be removed. It's a security risk if there is a default administrator account name and it's even bigger if it's the most uninspired account name on earth.
Wir Benötigen: Cents, Euros... jetzt spenden!
Offline
Kann mir jemand sagen, wie man in der save.php des Installers das Anzeigen der Fehlermeldungen aktiviert?
Offline