Ocs-server/Gfx4/Folders and MVC: Difference between revisions
Created page with "The Gfx frameworks consist of a root directory that contains basically the source directory that's (still) called ''gfx3'', a standard ''index.php'' and ''.htaccess'' file res..." |
No edit summary |
||
Line 1: | Line 1: | ||
The Gfx frameworks consist of a root directory that contains basically the source directory that's (still) called ''gfx3'', a standard ''index.php'' and ''.htaccess'' file responsible for the rewriting stuff. | The Gfx frameworks consist of a root directory that contains basically the source directory that's (still) called ''gfx3'', a standard ''index.php'' and ''.htaccess'' file responsible for the rewriting stuff. | ||
In order to prepare your server to host a Gfx application please refer to the [[Ocs-server/Install/Configuring a webserver as host| Configuring a webserver as host]] guide, since ocs-server is built around Gfx (or, in | In order to prepare your server to host a Gfx application please refer to the [[Ocs-server/Install/Configuring a webserver as host| Configuring a webserver as host]] guide, since ocs-server is built around Gfx (or, in many cases, the contrary). | ||
Unzipping our latest package in your DocumentRoot will create a standard directory tree for you. | Unzipping our latest package in your DocumentRoot will create a standard directory tree for you. | ||
Line 13: | Line 13: | ||
===Main site and subsites folder structure=== | ===Main site and subsites folder structure=== | ||
* '''/config''': contains all the configuration files of the website | * '''/config''': contains all the configuration files of the website | ||
* '''/models''': contains all the models | * '''/models''': contains all the models | ||
* '''/controllers''': contains all the controllers | * '''/controllers''': contains all the controllers | ||
* '''/views''': contains all the views | * '''/views''': contains all the views | ||
* '''/libs''': contains all the third part libraries | * '''/libs''': contains all the third part libraries | ||
---------------- | |||
In order to create a sub-website with its config, models etc... just create a folder called "config" inside the folder you want to become a subsite. Remember to create a proper ''generic.conf.php'', ''database.conf.php'' and ''rewrite.conf.php''. Grab them from the main website and then modify them according to your needs if you don't know how to write them. | |||
===Finding paths=== | |||
There's a handy class that stores all useful absolute paths: '''ELoader'''. This class is also responsible for the actual load and execution of the Gfx framework. | |||
Let's suppose we have installed Gfx in ''/var/www/html'' which responds to ''http://localhost''. URL called is ''http://localhost/admin''. Then '''ELoader''' will have those attributes set: | |||
* '''ELoader::$prev_path''' = ''/var/www/html'' | |||
* '''ELoader::$abs_path''' = ''/var/www/html/gfx/src'' | |||
* '''ELoader::$root_path''' = ''localhost'' or the host of your choice | |||
* '''ELoader::$subsite_path''' = ''/admin'' | |||
* '''ELoader::$cache_path''' = ''/var/www/html/gfx3/cache'' | |||
* '''ELoader::$libs_path''' = ''/var/www/html/gfx3/libs'' | |||
* '''ELoader::$config_path''' = ''/var/www/html/admin/config'' | |||
* '''ELoader::$controllers_path''' = ''/var/www/html/admin/controllers'' | |||
* '''ELoader::$models_path''' = ''/var/www/html/admin/models'' | |||
* '''ELoader::$views_path''' = ''/var/www/html/admin/views'' | |||
* '''ELoader::$locallibs_path''' = ''/var/www/html/admin/libs'' | |||
===Other webpage properties=== | |||
The class '''EPageProperties''' has some userful methods that gives infos about the current web page. | |||
* '''EPageProperties::get_current_website_url()''' = ''http://localhost'' or for example ''http://www.example.com'' | |||
* '''EPageProperties::get_clear_domain()''' = ''example'' when full URL of website is ''http://www.example.com'' | |||
* '''EPageProperties::get_domain()''' = ''example.com'' when full URL of website is ''http://www.example.com'', works also for co.uk amd other unusual domain names... |
Latest revision as of 11:11, 28 July 2015
The Gfx frameworks consist of a root directory that contains basically the source directory that's (still) called gfx3, a standard index.php and .htaccess file responsible for the rewriting stuff.
In order to prepare your server to host a Gfx application please refer to the Configuring a webserver as host guide, since ocs-server is built around Gfx (or, in many cases, the contrary).
Unzipping our latest package in your DocumentRoot will create a standard directory tree for you.
Gfx root folder structure
- index.php: handles every request. Shouldn't be moved or modified.
- .htaccess: responsible for Gfx URL rewriting, shouldn't be moved or modified.
- /gfx3/src: contains all the source of Gfx
- /gfx3/libs: put here any php file that will be loaded and handled as an external library available for all subsites.
- /gfx3/docs: contains some small hand txt documentation files (can be outdated)
Main site and subsites folder structure
- /config: contains all the configuration files of the website
- /models: contains all the models
- /controllers: contains all the controllers
- /views: contains all the views
- /libs: contains all the third part libraries
In order to create a sub-website with its config, models etc... just create a folder called "config" inside the folder you want to become a subsite. Remember to create a proper generic.conf.php, database.conf.php and rewrite.conf.php. Grab them from the main website and then modify them according to your needs if you don't know how to write them.
Finding paths
There's a handy class that stores all useful absolute paths: ELoader. This class is also responsible for the actual load and execution of the Gfx framework.
Let's suppose we have installed Gfx in /var/www/html which responds to http://localhost. URL called is http://localhost/admin. Then ELoader will have those attributes set:
- ELoader::$prev_path = /var/www/html
- ELoader::$abs_path = /var/www/html/gfx/src
- ELoader::$root_path = localhost or the host of your choice
- ELoader::$subsite_path = /admin
- ELoader::$cache_path = /var/www/html/gfx3/cache
- ELoader::$libs_path = /var/www/html/gfx3/libs
- ELoader::$config_path = /var/www/html/admin/config
- ELoader::$controllers_path = /var/www/html/admin/controllers
- ELoader::$models_path = /var/www/html/admin/models
- ELoader::$views_path = /var/www/html/admin/views
- ELoader::$locallibs_path = /var/www/html/admin/libs
Other webpage properties
The class EPageProperties has some userful methods that gives infos about the current web page.
- EPageProperties::get_current_website_url() = http://localhost or for example http://www.example.com
- EPageProperties::get_clear_domain() = example when full URL of website is http://www.example.com
- EPageProperties::get_domain() = example.com when full URL of website is http://www.example.com, works also for co.uk amd other unusual domain names...