The Webdesktop is an online desktop written in ExtJs4 as frontend and Zend Framework as backend. It is used as a sample project to use the MVC pattern from ExtJs4 and ZendFramework.
- Clone from the GitHub Project page at https://github.com/derAndreas/Webdesktop
- Download ExtJs4 and Zend Framework
- Extract ExtJs4 in the folder lib/Ext/
- Extract Zend Framework in the folder src/library/Zend/
Now there are two ways:
First:
- open a shell and go to the installer directory
- edit the 5 variables at the top (path, db credentials)
- run "php setup.php"
Second (manually):
- Edit the configuration files
- Create a MySQL Database and import the db structure
- Secure your configuration files! (see Security)
- Set an Admin password with genAdmin.php
There are two main configuration files from the Zend Framework Backend
- src/application/configs/application.ini - the main application configuration
- src/application/configs/webdesktop.ini - webdesktop specific paths
In file application.ini change the following config options:
resources.db.password_salt
resources.db.params.dbname
resources.db.params.username
resources.db.params.password
resources.db.params.hostname
In file webdesktop.ini you have to modify every path related line
The downloadable files from the GitHub Repo have the ./src folder, containing all Zend Framework relevant stuff in the main httpdocs folder. For security reasons your should move this folder to a secure loction. This could be any path, that is not accessable via http (or other). Then you have to change the application path in the index.php
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/src/application'));
An other way is to change the permissons on the ./src folder with chmod.
IMPORTANT: If you do not secure your configuration files, your credentials to database, the password salt and so on are readable for everyone!!!
The installation script is just a very quick one and should be seen as a temporary solution.
If you setup the script or lost your admin password you cannot change the password in the database directly, because a salted MD5 hash as password is used. To generate a salted MD5 hash for your password, run the script "genAdmin.php" and use phpMyAdmin or simple shell mysql and update the column uu_passwort in the user_users table for your user. After a fresh installation it will look something like this:
USE <DATABSE_NAME>;
UPDATE `user_users` SET `uu_passwort` = '<PUT THE HASH HERE>' WHERE `user_users`.`uu_id` = 2;
- This is my first public project ever
- This is my first ExtJS4 project
- This is my first Zend Framework project
- This is my first GitHub, no wait, this is my first version controlled project
- This is my first MarkDown file
Please consider this and be patient - although critics and improvments very welcome!
Regards, Andreas