zuletzt geändert : 24.01.10
Der efileman benutzt Skins (Templates), die das Benutzerinterface beschreiben. Es gibt für jede Ansicht eine separate Skin-Datei.
Skin-Dateien sind HTML-Dateien, die mit jedem Editor bearbeitet werden können :
- manager.skin für die Datei- und Verzeichnisliste
- edit.skin für das editieren einer Datei
- login.skin für das Login
- admin.skin für die Administration
- ...
Der efileman Default Skin ist kompatibel zu (getestet mit der entsprechenden MS Windows Version)
- Internet Explorer 6
- Opera 6.05
- Netscape 4.7
- Mozilla 1.1
Es wird empfohlen, den Anwendern jederzeit die Möglichkeit zu geben, den Default Skin zu nutzen.
Soll das Layout des efileman angepasst werden, erstellt man am besten ein neues Unterverzeichnis im Skins-Verzeichnis, kopiert alle skin-Dateien aus dem default-Verzeichnis und ändert diese.
Es müssen nicht alle skin-Dateien kopiert oder geändert werden, wenn eine Skin-Datei für den gewählten Skin nicht existiert, wird automatisch auf die entsprechende Datei im default-Verzeichnis "/skins/default" zurückgegriffen, z.B. alle Skin-Dateien liegen (sowieso) im default-Verzeichnis vor und nur manager.skin, edit.skin und useradmin.skin wurden neu gestaltet und in einem neuen Unterverzeichnis abgelegt. Der Name dieses neuen Verzeichnisses kann dann in der Administration ausgewählt werden.
Der zu verwendende Skin (Verzeichnis) wird innerhalb des /skins-Verzeichnisses wie folgt gefunden :
- das Verzeichnis definiert durch den myskin-Parameter, z.B. myskin=frames/header wird gesucht in /skins/frames/header
- das Basis-Verzeichnis definiert durch den myskin-Parameter im Fall eines Unterverzeichnisses, z.B. myskin=frames/header wird gesucht in /skins/frames
- das Verzeichnis konfiguriert in der Anwender Skin Variablen
- das Verzeichnis konfiguriert in der globalen Skin Variablen
- der Default Skin im Verzeichnis /skins/default
- ...Fehlermeldung
Wenn noch kein HTML-Editor vorhanden ist oder Schwierigkeiten mit den "benutzerfreundlichen" Funktionen des vorhandenen Editors bestehen, lohnt sich eine Blick auf den phase 5 HTML-Editor. Für professionelle Anwender ist Adobe GoLive empfehlenswert, da hier manuelle Änderungen am HTML Code respektiert werden.
Für das Ändern der Skin-Dateien müssen folgende Regeln beachtet werden :
- Werte in ## sind Variablen die durch das Script verarbeitet werden.
- Werte in <!-- und --> sind Kommentare. Kommentare wurden eingesetzt, um das Design während der Skin-Entwicklung besser kontrollieren zu können. Jeder Wert in ## wird verarbeitet.
- Die Namen der Eingabefelder (input) dürfen nicht verändert werden.
- Die Namen der versteckten Eingabefelder (hidden input) dürfen nicht verändert werden. Diese Felder dürfen auch nicht gelöscht werden.
- Soll ein Skin mehrsprachenfähig sein, sollten die Variablen aus den Sprachdateien verwendet werden, z.B. die Verwendung der Variablen $TEXT{'mailsubject'} aus der Sprachdatei wird im Skin als ##TEXT'mailsubject'## notiert.
- Das Format von Datum und Zeitangaben kann durch Änderung in der entsprechenden Sprachdatei geändert werden. Siehe unter Sprachdateien für weiterführende Informationen.
Nach Abschluß der Designphase sollte jede Skin-Datei noch einmal geöffnet und folgender Metatag überprüft werden :
Metatag :<meta http-equiv="content-type" content="text/html;charset=##charset##">
Einige HTML-Editoren ersetzen die ##charset##-Variable durch einen voreingestellten Wert.
TESTE JEDE NEUE SKIN DATEI !
Das "/skins/default"-Verzeichnis darf nicht gelöscht werden ! Soll nur ein Skin benutzt werden, können die entsprechenden Skin-Dateien in das "/skins/default"-Verzeichnis kopiert werden, ohne ein extra Skin-Verzeichnis anzulegen.
Seit Version 7.1.0.82 des efileman ist es möglich, Templates in den Skins durch Einsatz von ##file:filename## zu benutzen z.B. ##file:style.css##. Dies könnte so aussehen:
<style type="text/css">
##file:../style.css##
</style>
Die Dateiendung der Datei, deren Inhalt eingefügt werden soll, spielt keine Rolle. Die referenzierte Datei wird im Verzeichnis der Skin-Datei gesucht, oder relativ zu ihr, wie das obige Beispiel zeigt.
Version 7.1.0.82 des efileman unterstützt auch Frame-basierte Skins. Der Parameter myskin=skinname setzt den Skin für den nächsten Skriptdurchlauf.
Dieser Parameter muss für alle Form und Links, die den efileman aufrufen, gesetzt werden, ansonsten wird das Skript den für den Benutzer konfigurierten Skin verwenden. Das klingt vielleicht ersteinmal verwirrend, deswegen hier ein Beispiel:
| skins/frames/manager.skin | | Dies definiert den Dateimanager unterteilt in drei Frames |
| skins/frames/head/manager.skin | | Dateimanager Menü |
| skins/frames/body/manager.skin | | Dateimanager Liste |
| skins/frames/foot/manager.skin | | Dateimanager Buttonleiste |
frames ist der Name des Skin. Innerhalb der Skindatei sollte ##usrskin## anstelle des tatsächlichen Skin-/Verzeichnisnames verwendet werden, um das Umbenennen dieses Skins/Verzeichnisses zu erlauben.
<form action="##hrefscript##" method="POST" accept-charset="##charset##,iso-8859-1">
<input type="hidden" name="dir" value="##path##">
<input type="hidden" name="sid" value="##sid##">
<input type="hidden" name="root" value="##rootalias##">
<input type="hidden" name="myskin" value="##usrskin##/adm_values">
...
oder als Parameter für einen Link:
<a href="##hrefdirectory##&myskin=##usrskin##/man_list" style="color:#FFFFFF">##directoryname##</a>
unvollständige Liste der Platzhalter
Die Parameter-Werte in Links wie der Name des aktuell angezeigten Unterverzeichnisses in dir=... sind generell URL kodiert.
| Platzhalter | | wird ersetzt durch | | wird ersetzt in | |
| ##imageURL## | | Basis-URL zu den efileman images aus der Konfiguration wie http://yourdomain/images/efileman | | alle Skindateien | |
| ##hrefscript## | | vollständige URL des efileman ohne Parameter wie http://yourdomain/cgi-bin/efileman/efileman.cgi | | alle Skindateien | |
| ##hrefmanager## | | vollständige URL des efileman mit Parameter wie http://yourdomain/cgi-bin/efileman/efileman.cgi?root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | alle Skindateien | |
| ##hrefupload## | | vollständige URL des efileman mit Parameter innnerhalb ##startuploadlink## ##enduploadlink## wie http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=upload&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | alle Skindateien | |
| ##hrefmail## | | vollständige URL des efileman mit Parameter innerhalb ##startmaillink## ##endmaillink## wie http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=mail&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | alle Skindateien | |
| ##hrefadmin## | | vollständige URL des efileman mit Parameter innerhalb ##startadminlink## ##endadminlink## wie http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=admin&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | alle Skindateien | |
| ##hreflogout## | | vollständige URL des efileman mit Parameter innerhalb ##startlogoutlink## ##endlogoutlink## wie http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=logout&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | alle Skindateien | |
| ##path## | | aktuell angezeigtes Unterverzeichnis (HTML encoded), Wert des Parameter dir | | alle Skindateien | |
| ##sid## | | verschlüsselter Benutzername und -paßwort | | alle Skindateien | |
| ##usrskin## | | aktuell verwendeter Skin | | alle Skindateien | |
| ##username## | | Anmeldename des aktuellen Benutzers | | alle Skindateien | |
##href_manager_help## ##href_upload_help## ##href_admin_help## ##href_edit_help## ##href_login_help## ##href_mail_help## ##href_useradmin_help## | | Link zum entsprechenden Hilethema z.B. http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=admin_help | | alle Skindateien | |
| ##filespace## | | Diskquota des aktuellen Benutzers | | Manager & Upload Skindatei | |
| ##spaceused## | | verbrauchte Menge der Diskquota | | Manager & upload Skindatei | |
| ##curpath## | | aktuell angezeigtes Unterverzeichnis wie ../currentdir (HTML encoded) | | Manager & Upload Skindatei | |
| ##nocopy## | | disabled innerhalb ##startcopybtn## ##endcopybtn## | | manager Skindatei | |
| ##nomove## | | disabled innerhalb ##startmovebtn## ##endmovebtn## | | Manager Skindatei | |
| ##workroot## | | Index der aktuell angezeigten Benutzer Root | | Manager Skindatei | |
| ##filecnt## | | Anzahl der aktuell angezeigten Dateien | | Manager Skindatei | |
| ##dircnt## | | Anzahl der aktuell angezeigten Verzeichnisse | | Manager Skindatei | |
| ##dirsize## | | Verzeichnisgröße in KB (##TEXT'kilobyte'##), zeigt an, wieviel Plattenplatz durch die Dateien in den Verzeichnissen belegt wird, Benutzung innerhalb von ##startdirlist## und ##enddirlist## | | Manager Skindatei | |
| ##savevalue## | | Index der aktuell angezeigten Benutzerwerte | | Admin Skindatei | |
|