EssenceOne Php Framework
The Term "Organized Despair" defines the broad use of bulky router developed websites and applications. EssenceOne provides a simple alphanumeric ordered list for your team or production build environment. Files are stored by module and all views(page-parts),
controllers(classes and functions) are indexed alphanumerically by a single model indexer in a list. This allows rapid application development and a completely understood routing cohesion.
Single Model Indexer Routing
- Uses A Single Alphanumeric Indexer Model.
- Alphanumeric Module Separation.
- Can Be Used To Repair Outdated or Damaged Framework Developed Applications.
!The indexer model
How It Works
- Request all views and controllers in the order in which they are needed per page-part basis.
- Config defined paths allow one page changes to alter all views, controllers.
- Allows breakdown of templates(page-part-views) in any alphanumeric order.
- Allows addition of modules fluidly.
The model indexer routes everything by page Views(6 to 10 broken down parts) paths. If a page-part, file or controller does not exist within the list it defaults to an assigned default page list of paths or index.php. To add page-parts simply add their views
and controllers in the order in which they are requested to form the page. The modules are separated into three levels which you can add more easily. Public(static), Protected(members) and Private(admin). Files named c1(controllers),v1(all views),r1(resources),l1(libraries)
Modules are separated numerically in this order--> c1,v1,r1,l1(for Public) c2,v2,r2,l2(for protected) and c3,v3,r3,l3(for Private). To add new modules name them in alphanumeric order as next-->c4,v4,r4,l4 and so on.
Page Inclusion Is done using cookies within the config allowing non repetitive changes of page-parts making it MVC. See
Static Public page sample list
Protected(members) page sample list
- c1/guest_ip.php (visitor class and functions)
- v1/h1.php (static header)
- v1/b1.php (site banner)
- v1/hz1.php (horizontal main menu)
- c1/login_process.php (Login class and function inclusion)
- v1/lm1.php (left menu)
- v1/home.php (content section page view)
- v1/rm1.php (right menu)
- v1/ad1.php (advertising section far right menu)
- v1/f1.php (static footer)
- c2/auth_user.php (redirect check-user class and functions before header.php files)
- c2/profile.php (inclusion of user class and functions to show user data etc.)
- v2/lm2.php (shows the user data using one echo php short tag from c2/profile.php)
- c2/wall_post.php (inclusion of class and functions for profile page content)
- v2/profile.php (echos user data using a single php short tag from c2/wall_post.php)
- c2/show_groups.php (inclusion of class and functions for groups using a single php short tag)
*v2/rm2.php (echos group short tag and shows data)
Using this method not only insures your routed path but also allows any team to make changes fluidly and easily simply by changing the paths within the indexer variable within the config file in relation to the indexer model index.php page. Als all Php Inclusions
are done automatically, so no need of having to add include()'s onto any file or page.
For Repairing Damaged Framework Designed Websites
- Add the page parts in order of page request into the config.
- Add the page name into the indexer(in no special order).
- Change all links, resources, paths, inclusions, and GET$datavalues through the indexer(index.php)page.
This Framework Comes With Both Twitter-Bootstrap Front-End Loaded and Session Users.
For documentation on Bootstrap visit
here for Sessions instructions.
To use any other template simply remove existing and break down a new template into View parts as header, horizontal-menu, left-menu, content(page-name), right-menu and footer respectively. You can choose less or more depending on you're dynamics. For Fluid
Mobile Bootstrap just add the fluid class after each row as shown at Bootstrap Docs.
Additional information on starting a new project is available here:
Project Startup Guide