last changed : 01/24/10
efileman use skins (templates), which are describes the user interface. There is a skin file for every script part, which have an own design.
Skin files are html files. You can edit these files with every editor.
- manager.skin for the directory and file listing
- edit.skin for edit a file
- login.skin for login procedure
- admin.skin for administration
- ...
efileman default skin is compatible to (tested with the respective MS Windows version)
- Internet Explorer 6
- Opera 6.05
- Netscape 4.7
- Mozilla 1.1
It could be a good idea to give user every time the possibility to use the default skin.
If you want to design own skins, create a new directory in skins directory, copy the default skin files and change them. The name of the directory you have created will be displayed in admin page.
It's not necessary to create or copy every skin file, because if no respective skin file in your directory, the script will use the skin file from directory "/skins/default". For instance: there are all skin files in the default directory and only manager.skin, edit.skin and useradmin.skin are new designed in your directory.
The skin (directory) is selected inside /skins using the following algorithm :
- the directory defined by myskin parameter, eg. myskin=frames/header will search in /skins/frames/header
- the root directory defined by myskin parameter in case of a subdirectory, eg. myskin=frames/header will search in /skins/frames
- the directory configured by User Skin variable
- the directory configured by global Skin variable
- the default skin in /skins/default
- ...error message
If you don't have a html editor, or if you have trouble with some "user friendly" functions, test the free phase 5 html editor. Adobe GoLive is highly recommended for professionals, because it respects your manually HTML code changes.
For changing a skin file note the following rules :
- Values enclosed by ## are variables handled by the script.
- Values enclosed by <!-- and --> are comments. Comments has been used only for better style control during skin design. Every value enclosed by ## will be used and displayed by the script.
- Don't change the names of input fields.
- Don't remove or rename hidden input fields.
- If you want to design a multilingual skin, use the variables from languages files. If e.g. the variable you want to use $TEXT{'mailsubject'}, use in skin ##TEXT'mailsubject'##.
- JavaScript and Style sections shouldn't be outsourced for compatibilty reasons.
- You can change the format of date and time values by changing the respective language file. See language file section for more information.
- If you want to hide a funktion to the user by deleting a button from a skin, note that the respective funktion will be still available, as long as the function is not configured as disabled for the user.
After finish the design of your skin, open every of your new skin files and check the following metatag :
<meta http-equiv="content-type" content="text/html;charset=##charset##">
Some html editors remove the ##charset## variable by a predefined value.
TEST EYERY NEW SKIN FILE !
Don't remove the "/skins/default" directory ! If you want to use only one skin, upload your favorite skin files in "/skins/default" directory without creating extra skin directories.
As of version 7.1.0.82 of efileman it's possible to use templates in the skins by using ##file:filename## eg. ##file:style.css##. For example:
<style type="text/css">
##file:../style.css##
</style>
The file extension of the file you want to include doesn't matter. The file will be located in the same directory as the skin file, or relative to them like it is shown in the example.
Version 7.1.0.82 of efileman supports also frame based skins. The parameter myskin=skinname set the skin for the next script run.
This parameter must be set for all forms or links which calls efileman, unless the script will use the configured users skin.
This may sound confusing, but see the following structure of a frame based skin example:
| skins/frames/manager.skin | | this defines a manager screen subdivided into three frames |
| skins/frames/head/manager.skin | | manager screen menu |
| skins/frames/body/manager.skin | | manager file list |
| skins/frames/foot/manager.skin | | manager button bar |
frames is the name of the skin. Inside the skin file it make sense to use ##usrskin## instead of the real name of the skin to allow renaming of skin directory, eg.
<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">
...
or with a link
<a href="##hrefdirectory##&myskin=##usrskin##/man_list" style="color:#FFFFFF">##directoryname##</a>
incomplete list of placeholder
parameter values in links like name of current displayed subdirectory in dir=... are generally URL encoded.
| placeholder | | will be replaced by | | will be replaced in | |
| ##imageURL## | | base URL to efileman images from config like http://yourdomain/images/efileman | | all skin files | |
| ##hrefscript## | | full URL to efileman without any parameter like http://yourdomain/cgi-bin/efileman/efileman.cgi | | all skin files | |
| ##hrefmanager## | | full URL to efileman with parameter like http://yourdomain/cgi-bin/efileman/efileman.cgi?root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | all skin files | |
| ##hrefupload## | | full URL to efileman with parameter inside ##startuploadlink## ##enduploadlink## like http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=upload&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | all skin files | |
| ##hrefmail## | | full URL to efileman with parameter inside ##startmaillink## ##endmaillink## like http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=mail&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | all skin files | |
| ##hrefadmin## | | full URL to efileman with parameter inside ##startadminlink## ##endadminlink## like http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=admin&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | all skin files | |
| ##hreflogout## | | full URL to efileman with parameter inside ##startlogoutlink## ##endlogoutlink## like http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=logout&root=0&dir=&sid=ttXydORJt50wQ-555F52427A725109026775424D | | all skin files | |
| ##path## | | current displayed subdirectory (HTML encoded), value of parameter dir | | all skin files | |
| ##sid## | | encryted user name and password | | all skin files | |
| ##usrskin## | | currently used skin | | all skin files | |
| ##username## | | username of current user | | all skin files | |
##href_manager_help## ##href_upload_help## ##href_admin_help## ##href_edit_help## ##href_login_help## ##href_mail_help## ##href_useradmin_help## | | link to the respective help topic http://yourdomain/cgi-bin/efileman/efileman.cgi?mode=admin_help | | all skin files | |
| ##filespace## | | diskquota of current user | | manager & upload skin file | |
| ##spaceused## | | quantity consumed of diskquota | | manager & upload skin file | |
| ##curpath## | | the current display directory like ../currentdir (HTML encoded) | | manager & upload skin file | |
| ##nocopy## | | disabled inside ##startcopybtn## ##endcopybtn## | | manager skin file | |
| ##nomove## | | disabled inside ##startmovebtn## ##endmovebtn## | | manager skin file | |
| ##workroot## | | index of current displayed user root | | manager skin file | |
| ##filecnt## | | number of current displayed files | | manager skin file | |
| ##dircnt## | | number of current displayed directories | | manager skin file | |
| ##dirsize## | | directory size in kb (##TEXT'kilobyte'##), shows how much disk space each folder is consuming, to use inside of ##startdirlist## and ##enddirlist## | | manager skin file | |
| ##savevalue## | | index of current displayed user values | | admin skin file | |
|