Ampoliros 3.0.0 released

Today I released the new generation of Ampoliros, with many new features and changes.

Change log:

3000 3.0.0 - 2002/09/09 - "Hui themes"
-----------------------
NEW FEATURES:
- Added Hui themes big features.
- Added ampshared.library for Ampoliros interface elements shared between
  various files and modules.
- Added menus in administration pages.
- Added a specific log for PHP events.
- Added PHP_LOG define for php log.
- Added more entries in the TROUBLESHOOTING file.
- Added the tempdir element type.
- Added the modinst tempdir.
- Added the ampcache tempdir.
- Added the phpsessions tempdir.
- Added the mWidgetType member to HuiWidgetElement class (hui.library).
- Added persistant HUI widgets using sessions big feature.
- Added persistant pages to the Hui table element.
- Added the Hui sessionkey element.
- Added list of sites enabled to each module in module dependencies panel.
- Added the MODULE_CATEGORY configuration key for modules general.def file.
- Added the $gEnv Ampoliros environment variable big feature.
- Added the Ampoliros state feature. Now Ampoliros can be in one of this
  states: setup, upgrade, debug, development and production. State is set in
  $gEnv['core']['state'].
- Added the Ampoliros interface mode feature. Interface mode can be one of the
  following: unknown, console, web, remote, gui. Interface mode is set in
  $gEnv['core']['interface'].
- Added registered shutdown function ampoliros_shutdown().
- Added creation of a pid file for each Ampoliros instance, that gets deleted
  at the instance end by the shutdown function. Pid is set in
  $gEnv['runtime']['pid'].
- Added the pids tempdir.
- Added email field to site users.
- Added the Ampoliros mode feature. Mode can be root or site.
- Added ampsite.php and amproot.php elements for system bootstrap.
- Added P3P compact header in Hui::Render() (hui.library).
- Added a log viewer during setup phase if something goes wrong.
- Added option to not create site database at site creation.
- Hooks can now return special codes to the calling function. Current
  available codes are HOOK_RESULT_OK, HOOK_RESULT_CANCEL, HOOK_RESULT_ABORT.
- Added a root page for advanced settings like Ampoliros state.
- Added list of the available remote methods for the remote accounts in the
  web services root page.
- Added ampremote.php element for remote system bootstrap.

CHANGES:
- Changed Ampoliros generation to 3000.
- Changed default interface look with a new theme. See AUTHORS file for icon
  set credits.
- Moved development docs in a separate directory and archive.
- Now PHP memory limit defaults to 64 Mb.
- Reorganized the TROUBLESHOOTING file.
- Various optimizations.
- Added a consider extensions option in Module::CheckSiteDepengindModules()
  and Module::IsEnabled() (modules.library).
- Now the PHP session files are stored in the Ampoliros temporary directory
  under TMP_PATH.'phpsessions/'.
- Now the Ampoliros cache files are stored in the Ampoliros temporary directory
  under TMP_PATH.'ampcache/'.
- Now the Ampoliros modules installation temporary files are stored in the
  Ampoliros temporary directory under TMP_PATH.'modinst/'.
- Better interface where Hui tables elements are involved.
- Hui treemenu element is now persistant.
- Now sessions stay alive even when closing the browser.
- Now when entering administration pages, the last seen page is loaded.
- Now the modules list is ordered by category. If a module has no category,
  it is listed in the "Various" category.
- Updated dblayer_pgsql.dblayer to new Postgres functions names.
- Various optimizations in users.library.
- Completely restructured the ampconfig.php bootstrap file and system.
- Changed some remaining $PHP_SELF into $_SERVER['PHP_SELF'].
- Now Hui treemenu element widgets are clickable.
- Now menu borders have been removed, only flat style.
- Removed width and height attributes from Hui treemenu widget.
- Added time() as second option to all touch() functions due to a bug
  introduced in PHP since the 4.2.1 release.
- Web setup phase has been improved, graphically and functionally.
- Now hook return codes in Ampoliros functions are verified in order to take
  advantage of new hook functions.
- Now the Ampoliros error handler chooses when to log and when to die in base
  of Ampoliros state.
- Now if an event of type LOGGER_FAILURE is logged, Ampoliros dies in any
  case.
- Now LOGGER_DEBUG and LOGGER_WARNING log event types are logged only if
  Ampoliros state allows it.
- Added a lot of isset() checks to array indexes in order to avoid PHP notices
  when Ampoliros state is set to AMP_STATE_DEBUG.
- Updated Hui menu code to PHPLayersMenu 2.0 beta 3. Now the system works also
  on Mozilla  even with the long DTD for HTML 4.01 Transitional.
- Now sessions stay alive for a year if not specified.
- Increased width of log viewers.
- Now module structure can be seen only when Ampoliros state is set to
  AMP_STATE_DEBUG or AMP_STATE_DEVELOPMENT.
- Now comments in Hui HTML code are automatically enabled in debug state.
- Added support for APC PHP cache. After installing/upgrading a module, the
  cache gets flushed by Ampoliros.

FIXES:
- Added missing copy of logout icons.
- Fixed minor typos in huielement.element handler.
- Fixed typo in dblayer_pgsql.dblayer that prevented the creation of tables.
- Fixes bug which prevented site remotion.
- Fixed broken Module::CheckSiteModuleDeps(); there was a bug in a certain
  situation with multiple dependencies.
- Fixed handling of sessions expire time.
- Fixed typo in sites.library that prevented the correct insert in the sites
  table of the database port when creating a new site.
- Restored support of Postgres, broken due to various fixed issues.
- Fixed Hui treemenu widget that caused a PHP warning if a group was empty.
- Fixed wrong reference to an internal member in DbLayer::ErrorMsg()
  (dblayer.library).
- Fixed broken Hui new window widget javascript code under Internet Explorer.
- Fixed sites permissions trouble with adminpages accessible even for not
  enabled modules.

Ampoliros 2.7.0 released

This version introduces an automatic database table update system in admin and root table elements.

Change log:

2000 2.7.0 - 2002/07/15 - "Database table update"
-----------------------
NEW FEATURES:
- Added the long awaited table update in admintable.element and
  roottable.element. For now it can add new columns and remove old columns.
- Added CompareVersionNumbers() function in misc.library.
- Added check for Curl extension for SSL support in Xml-Rpc functions.
- Added User::GetGroup() memebr (users.library) to get user group id.
- Added site.user.add, site.user.remove, site.group.add, site.group.remove hooks.
- Added OpenLibrary function (ampoliros.library).

CHANGES:
- Changed version to 2.7 series, due to new table update important feature.
- Changed big logo, added a "2000" string.

FIXES:
- Fixed wrong assignment of site superuser locale settings from
  admin/locale.php.
- Added missing HuiPage::mBorder data member.
- Fixed wrong variable inside single quotes block in xml.library.
- Fixed broken image link in main pages if OEM logo is not enabled.
- Fixed "Invalid Ampoliros database handler" failure when finishing web setup
  phase.
- Added check in RecRemoveDir() (misc.library) in order to verify if the given
  dirname exists.

Ampoliros 2.6.0 released

I’ve just released the new 2.6.0 version of Ampoliros.

This is a big new release since I’m introducing the HTML User Interface, that is a web desktop oriented user interface where you don’t need to write HTML code.

I also introduce a hook system for extending platform and applications functionality.

Full change log for this release follows.

2.6.0 - 2002/04/17 - "Hui and hooks"

NEW FEATURES:
- Added hooks big feature.
- Added hui big feature.
- Added Ampoliros name.
- Started Ampoliros domain system big feature.
- Added Network root page.
- Added Informations root page.
- Added LICENSE.xmlrpc file for some parts of xmlrpc code license.
- Added auth.php in Ampoliros public directory root.
- Added site log and site database log files viewer in sites administration.
- Added SITESTUFF_PATH define, alias for old STORESTUFF_PATH define.
- Added logging to site log files in sites.library.
- Added TODO file.
- Added AMPOLIROS_SETUP_PHASE define, defined during Ampoliros setup phase.
- Added Dump class in debug.library.
- Added error handler.
- Added doc directory.
- Added autodocs build script.
- Added XmlRpc sdk docs.
- Added "Slackware 8 to Ampoliros server" guide.
- Added XmlRpc accounts.
- Added example config.h file.

CHANGES:
- Resized header frame in root administration for Ampoliros name and domain
  text.
- Updated Edd Dumbill's XmlRpc code to 1.02 release. Refer to relative
  changelog for details.
- New hui look.
- General code cleanup and revision.
- \Innomatic\Logging\Logger::LogEvent() now formats date and time strings.
- Reorganized auth.php and ampconfig.php files.
- Reformatted CHANGES file.
- Optimized catalog files.
- Various minor optimizations.

FIXES:
- Fixed missing dblayer element handler from the elementtypes table in
  amproot.xsql file.
- Fixed dblayer_mysql::_Close(): removed odd mysql_close().
- Fixed dblayer_mysql::_CreateDB(): removed odd mysql_close().
- Fixed bug in Sites::RemoveAllUsers() not removing all the users.
- Fixed wrong recordset handling with empty result resource.
- Fixed wrong database query in Group::Remove() when updating users table.
- Fixed wrong variable in User::EditUser() when updating "otherdata" field in
  user table.
- Fixed odd method to get current directory in modules.library.
- Fixed query in Module::Install().
- Fixed wrong function name in hook events elements in structure.xml.