the directory tree

some notes on main directories in a clean OOOGUI installation

  • root: the only file here is the main.mxml flash source file. note: only content of bin directory should be published on the production server

    • bin: this is the only folder that have to be deployed on the server where you'll run your website. here is the index.php file (the frontend), main.php file (the backend) and the main.swf file (the flash application OOOGUI relies on)

      • amfphp: the amfphp framework that OOOGUI uses to let main.swf client communicate with server via binary json.

        • amf-core: amfphp framework core classes

        • browser: a very useful services browser to test you php backend classes

        • core: amfphp framework core classes

        • services: here there are all php sources of OOOGUI. these are web services, called by the main.swf client via json protocol. in this folder there is also the Config.php file that you may want to change

          • amfphp: an amfhp class

          • core: core PHP classes of OOOGUI. the foundating classes of OOOGUI are here: Concept, Currency, Instance, Language, Name, O3Object, Permission, Property, Query, RelationInstance, Relation, Role and Site.


            • common: some commonly used classes. very important is ImageResizer, that generates cached thumbnails for hires images uploaded in the backend. ImageResizer also has features like adding watermarks and apply blur

            • data: here there is a class for each datatype that OOOGUI offers. from Integer to Account

            • include: all classes in core directory (the core classes of OOOGUI) shares some chunks of code about the way they fetch data for queries. here there are these chunks of code

            • interfaces: right now there is only the IBase php interface in OOOGUI

          • htmlfrontend: generated PHP classes of OOOGUI

            • modules: this is one of the most used directory: in OOOGUI there is a PHP class (file) for each module that composes a page. these classes are usually generated from the backend, but you could easily modify them, or create new ones by extending the Smartybase class

            • widgets: some experimental classes to be used in your modules. for example a patchwork generator starting from an OOOGUI recordset of images

          • smarty: the smarty template engine, used by OOOGUI

      • content: all files uploaded from backend are stored here


        • assets: a pair of logos here

        • files: the uploaded files container. if you upload an image for an instance that has id_instance = 145, then image file will be stored in the directory: content/files/1/4/5/images/. with this convention, you can manage huge numbers of files without having crowded directories.

      • docs: documentation for the flash sources (flex API docs)

      • javascripts: all javascripts called by the frontend are here. there is ooogui.js wich contains most commonly used javascripts in OOOGUI, and there is jQuery with some plugins

      • scripts: these scripts are related to the automated backup functionality integated in OOOGUI. each script perform a different task to replicate your production website to a remote backup server

      • temp: most important file here is !log.txt, that is the main log file used by php method logThis()

      • templates: this is another most used folder in OOOGUI. it contains all the template .tpl files associated to each modules in a page. as mentioned before, in OOOGUI a page is composed by modules, and a module is defined by a .tpl and a .php file. in this directory there are .tpl files, whereas .php files are located in bin/amfphp/services/htmlfrontend/modules

      • templates_c: cache files generated and managed by smarty engine

    • com: here there are only some external classes OOOGUI uses. only flash sources here.

    • compilation_scripts: contain the script compile_main to be used to compile the flash backend main.swf file, and some others swf.¬†

    • lib: all flash sources of OOOGUI are here. in the lib folder there are some external swc (flash libraries) used by OOOGUI. in subdirectories there are all flash classes.


      • amfphp: a wrapper class

      • ooogui: here is the main class Ooogui.as, the instantiate and uses all other classes.


        • core: the flash counterpart of the php core classes. these flash classes manage the view, php classes manage the data

          • assets: some graphic resources


          • common: base classes extended by most of the core classes

          • data: classes specialized for each datatype managed by OOOGUI

          • interfaces: interfaces to be implemented in flash classes¬†

        • frontend: here there are a Flv and an Mp3 player, that compile standalone to be used as player in the frontend

        • rtw: the ResizableTitleWindow class

 

languages