Joomla 1.0.x : How it works

I gave this presentation in skills camp pune last year. I am sharing the slides here, in hope some one still find it useful even though joomla 1.5 is released last month.

In this presentation I talked about how Request flow in a joomla application. I also explained the entity relationship diagram (ERD) of joomla, that i created by reverse engineering the joomla database,  reading the code and off course searching the internet.

The most difficult part to understand was user rights management part of the database. It is based on phpGACL library, reading their help files helped get clear idea about right management in joomla. Access Control chapter in joomla website also helped.

and here is the recorded session of same.

Joomla as a framework


Request flow in Joomla


Database and User Managment in Joomla


14 thoughts on “Joomla 1.0.x : How it works

  1. Hi Amit,

    I was going through your presentation on joomla. It is really useful. I have few questions on joomla which you may be able to clarify if you don’t mind. The first one is:

    1. I was going through the source code and I saw $my variable for which I couldn’t find where it is initially instantiated.
    2. Do you have anymore docs which you thik will be helpful for a novice like me.

  2. Hi Sandeep,

    $my is initialized in initSessionAdmin function in joomla.php file. yes i have few more things with me, if you could let me know i might link them for you.

  3. That will be wonderful. It will really help me.

    Regarding my question, how the function initSessionAdmin is called? I see a reference to loadbotGroup function in index.php which in turn uses $my declared as global. But where actually $my gets created.

    And is the function above executed for normal users as well?

    Thanks a lot for your time.


  4. sandeep, $my is also initialized in index.php file. search for this “$my = $mainframe->getUser();”. No initSessionAmin function is not used for noraml user.

    exactly what you need?

  5. Hi Amit,

    Could I have the copy of the presentation please. Or is there anyway I can view a clearer version of it in fullscreen?


  6. Hi Amit,

    Wonder Full presentation. I am developing a developing the custom login utility. I am able to login into joomla site by my custom scripts for user registration. But now i want the session ID of the logged in user to get appropriate data from my tables. Exploring session table of joomla i found that session data is stored in this table and $my variable can be used for accessing the session data but i am not able to access the data through $my variable and am not getting the clue of the problem. Can you suggest me some solution please. Also can i get a copy of your presentation so that i can understand the joomla framework efficiently.

    Thanks for your help.


  7. Thanks for quick reply.

    I got following error while trying to download your presentation 🙁

    This XML file does not appear to have any style information associated with it. The document tree is shown below.

    The specified key does not exist.


    Please look into this



  8. hello sir, m doing my project with joomla. Now i need to show the relations between the tables for my report work and its getting difficult for me to get the exact parent child relationships between the tables. can u please help me out….!!!

    Thanks in advance


  9. Hi Amit,

    I’m also interested about joomla and how does it work. It’s a great presentation and I learned lot of things.

    It’ll be more helpful if I can get the ppt slides. Can you please send me those. I tried to download it through but it returns an error.

    Please send me the slides… 😀

    Thank you,


  10. Friend Your presentation so useful. i need your presentation copy.. Please send that file by email..


  11. Hi Amit,

    Your presentation is really useful.Could I have the copy of the presentation please?


Comments are closed.