[ class tree: Lithron ] [ index: Lithron ] [ all elements ]
Prev Next
Lithron concept

Lithron concept

How it should work.

This is the deal.

Lithron uses the PRADO component, object-orientated and event-driven concept. And provides a set of tools for building web applications.

The main goal is to provide functionality for creating a website in a tree structure with "dynamic" pages, filled with "intelligent and interactive" controls, which are provided by modules. And also the possiblity to access module pages directly.

Our main goal was to implement to implement basic CMS features like a sitemap, content administration, media management, etc... And also to do this with exensive use of PRADO's functionality. And also we tried to keep the packages as independent as possible to each other.

So we created lithron packages, we also call them rich components, because they do not only contain controls, but also pages and support files like images or database schemas. They are the core of lithron.

First of all. Lithron is designed to handle both ways of website content editing. You can do everthing hardcoded, or you can connect any layout piece to an administraion interface. Or you can mix them in any way you want.

So, there is the website which contains of a tree-structure of pages. This is managed by LVirtualnodes, which implements, as the name suggests, a structrue of virtual nodes, where every node maps to a prado .page file or an external link. This gives the sitemap the ability to use PRADO's authorization and configuration features without an own implementation.

Now on to the important part. Another focus lies on fast customization of layouts and their contents.

Therefore lithron introduces cells & bricks. A cell is a DIV within a page, which can be dynamically filled with components, which are called bricks.A brick itself is like a widget, usually it has two modes, normal (displaying content) and admin.

When you add bricks (into cell) to a page, which was mapped by a virtual node, the brick data get connected to this node id and cell id. If you have added bricks to a static page, the data gets connected to the page name/alias and cell id.


  • Website tree structure and brick administration

  • Dynamic brick rendering

  • Access module pages directly

  • Image manipulation with ImageMagick

Todos (not the only ones):

  • PDF rendering via XML templates


Mainly we try to use the PRADO naming.

  • Application

    Lithron is the PRADO application you are using.

  • Website

    The whole homepage. It has a tree structure representing the subsections of the site.

  • Siteroot

    The root node.

  • Sitenode

    Single "page" in website tree. We don't call this page, because this is used in another manner by PRADO. Note: a sitenode can point to a module page.

  • Cell

    Area in a sitenode used for layout purposes. Contents can be inherited by child sitenodes, useful i.e. for headers, footers and navigation. Can be also be used in module pages with a master template.

  • Brick

    Container for controls in a cell., i.e. CSS menu, forum shoutbox, product teaser, login sidebar etc...

  • Component

    Base class for modules, pages and controls - a (base) object in PRADO.

  • Module

    Group of pages, serving for a common goal (taken from PRADO).

  • Modulecore

    Capsules the logic for controls and pages. Keyword: singleton. Should be used with static calls.

  • Page

    A page, (only) in a module. Provides i.e. an admin interface.

  • Control

    "Snippet" from a module for displaying data or user interaction.

  • Event

    User interaction from a control or from the system.

  • LVirtualNodes

    Module for organizing sitenodes in tree structure. Administration of content containers, known as cells.

Prev   Next
HowTo: Include custom PRADO components

Documentation generated on Tue, 20 Jun 2006 05:14:52 +0200 by phpDocumentor 1.3.0RC4