{img src=/img/wiki_up/thekernel.jpg}
For every page request, here is what the KernelPackage will do:
|TikiSystem::scanPackages() is an important function, and if you are reading this page, you should try to trace that function out. scanPackages will:

!!!1. Define __2 constants__ for every TikiPackage.
The kernel will assume every directory in the TikiPro root is a package, and will make the constants <DIRECTORYNAME>_PKG_URL and <DIRECTORYNAME>_PKG_PATH. For example, the wiki/ directory will cause WIKI_PKG_URL and WIKI_PKG_PATH to be defined. These constants should be used when including files, such as
include_once (HTML_PKG_PATH.'htmlpages_lib.php');
or for setting URL's such as
header ("location: ".POLLS_PKG_PATH."results.php?pollId=$pollId");

-=Fires documentation Initiative=-
ok everyone, this is Fire, I'm taking it upon myself to interview the the great minds of tikipro in order to document and explain how the tickipro ticks...

I am starting with a bottom up approach - thats right! With the very first file that is accessed when someone visits your tikipro site - index.php... from here, I will go through line by line documenting the main functions that get executed, and what the heck actually happens. I am going to try to explain the system as simple as possible...

... you see... I actually don't know how the heck the thing works yet.. so... uh, Im gonna get good'ole spider, xing, and drewslater and others who wanna help (who I probably haven't met yet) to help me demystify this nice web application! Fortunately, Tikipro seams to be really well put together, so my task shouldn't be that hard!

PS. Please bear with me all you senior gurus... I am a beginner, and I hope my attempts to do this are welcomed... I really hope my efforts will help others to join our project!!! Cheers


Ok! Here goes:

-=!!index.php whats in it?=-
* New Users Beware - This doc is pending approval!!! It may have mistakes in it!

Besides determining whether or not tikipro is plugged into a valid database or not, index.php

merely sets up the layout by calling:
$gTikiSystem->loadLayout();

and then does a smarty call to kernel/dynamic.tpl to display our beautiful tikipro web application.


!!!So what does loadLayout() do?
$gTikiSystem->loadLayout(); loads each module into a variable called TikiSystem->mLayout and then uses smarty to call kernel/dynamic.tpl which displays all the active modules on the webpage in order and in the right place! This allows administrators to customize the layout of tikiPro.. admins can place modules in the left,right, or center column.

!!!!Not enough control for ya????
If an administrator wants to modify the layout in other ways... like... say, adding a custom menu bar at the very top of the page... he must work with the theme system...

Please refer the .tpl's in the themes/force directories...

!!Other things to note:
* The Theme and Layout Systems are independent of one another...
* Layouts are displayed inside of themes


Voila... thats all folks!

!!!Summary
* Index.php checks if there is a database attached
* Loads all modules into gCenterPieces
* the calls kernel/dynamic.tpl to display everything!




Page History
Date/CommentUserIPVersion
09 Dec 2004 (17:41 UTC)
fire203.229.37.9511
Current • Source
fire203.229.37.9510
View • Compare • Difference • Source
fire203.229.37.959
View • Compare • Difference • Source
fire203.229.37.958
View • Compare • Difference • Source
fire203.229.37.957
View • Compare • Difference • Source
fire203.229.37.956
View • Compare • Difference • Source
fire203.229.37.955
View • Compare • Difference • Source
fire203.229.37.954
View • Compare • Difference • Source
fire203.229.37.953
View • Compare • Difference • Source
spiderr66.93.240.922
View • Compare • Difference • Source