Simplilo (version 0.03)
Developed since 2009-12-07 until 2010-04-27.
Main changes (from version 0.02)
- The name is changed to Simplilo.
- Page cache.
- Search cache.
- New login system, with user names and user pages.
ADDON_control_panel()
includes a new link to go to the main page.- Error 404 handling.
- The user name is used as the default author of a new page.
- Both ":" and "=" can be used as datum separators, for metadata and config data. Formerly ':' was used for metadata and '=' for config data. Any spaces or tabs are allowed and omitted at both sides of the separator.
- The arrays that keep the special zones (nowiki, html, addon) are indexed by a content id (based on the page or the metadatum to be rendered). This is needed to let recursive rendering.
- New addon "include_page" to render and include individual pages.
- New addon "include_pages" to render and include several pages.
- New interface text:
T_DELETED
. - The engine config pages (the main one and the language one) are read before the site config pages. This way the engine config is the default one for all sites (e.g. the new interface texts added to the engine can be used by any site without updating the site config pages).
- New super comment markup that is rendered first.
- New branch for default system pages provided by the engine: system.engine.
- Both metadata and config variables use "=" to separate label and value (":" cannot be used in metadata as before).
- Link syntax expanded: User links are allowed with the format "link:my_link", both as fake URL of the link itself and as label of the config variable that holds the actual content of the link.
- Link syntax expanded: File links are allowed with the format "file://". This lets to link to an image. The former way is kept (the use of the image syntax to link to non-images).
Main bugs fixed
- 2009-12-07 The "language_versions" case of
ADDON_meta()
was rewritten because it still expectedmetadatum('language_versions')
returns an array. - 2009-12-07 In
ADDON_search_results()
there was a call to the old nameis_invisible_draft()
instedis_invisible()
. - 2009-12-25 The addon zone marks
{}ADDON{}
caused problems when addons used inside file markups{{...}}
, so "{}" was changed to "=¡=" in all such marks. - Many more...
Changes needed to migrate (from version 0.02)
Config
- New text:
T_CACHED
= Cached. - New text:
T_USER_NAME
= User name. - New variable in config.php:
$USER_PAGE
= "user". - The config variables
PASSWORD
andPASSWORD_MD5
has to be moved from the page system.config to the page of the corresponding user, (system.user.X, where "X" is the user name). - New variable in system.config:
USE_CACHE
= true. - New variable in config.php:
$CACHE_DIR
= "cache/". This directory has to be created. - New variable in config.php:
$SEARCH_DIR
= "search/". This directory has to be created. - New directory: "cache/pages/" (supposing the content of
$PAGES_DIR
is the default value "pages/"). This directory has to be created. - New directory: "cache/search/" (supposing the content of
$PAGES_DIR
is the default value "pages/"). This directory has to be created. - New config variable: ERROR_404_PAGE.
- The addon simplilo/0.03/addons/metadatum_separator_updater.php has to be executed to change the metadata format of all pages (a backup is suggested).
Styles
- Class name changed from "SimploXAction" to "SimploActionX".
- Id name changed from "previewseparator" to "SimploPreviewSeparator".
- Id name changed from "searchresults" to class name "SimploSearchResults".
Page cache
The page cache system works the following way:
- The HTML pages are stored under
$CACHE_DIR
. Their names are the same as the sources. - The config variable
USE_CACHE
activate or deactivate the cache. - Pages are cached only when the user is not logged in. [Obsolete feature?]
- When a user edits a page with the edit form, the cache of the current page is removed.
- The cache of the current page is created when it doesn't exist or its modification time is older than the modification time of the source page.
Directory tree
simplilo/ simplilo/0.03/ simplilo/0.03/addons/ simplilo/0.03/addons/files/ simplilo/0.03/addons/lang/ simplilo/0.03/files/ simplilo/0.03/files/temp/ simplilo/0.03/pages/ simplilo/0.03/config.php simplilo/0.03/config.lang-1.php simplilo/0.03/config.lang-2.php simplilo/0.03/engine.php mysite/ mysite/addons/ mysite/addons/files/ mysite/addons/lang/ mysite/cache/pages/ mysite/cache/search/ mysite/files/ mysite/history/ mysite/pages/ mysite/temp/ mysite/config.php mysite/config.lang-1.php mysite/config.lang-2.php mysite/config.lang-n.php mysite/index.php