Ampoliros 3.6.0 released

Change log:

3000 3.6 - 2003/12/15 - "Locale reorganization"
- Added "About Ampoliros" menu.
- Added "TreeVMenu" Hui widget.
- Added RPM spec file and build system.
- Added copyright note in login panels.
- Added charset support in country descriptors.
- Added support in Page widget for country charset.
- Added a year normalization routine in LocaleCountry class (locale.library)
  when using date arrays, in order to resolve issues with short length year
- Added memory usage feature in AmpDebugger class (debug.library).
- Implemented some strategies for reducing database queries.
- Added VertBar Hui widget.

- "Site access" button renamed to "Desktop".
- "Ampoliros administration" button renamed to "Control Panel".
- Updated favicon.ico.
- Added direct link in Ampoliros menus to favicon.ico.
- Moved PHP Layers Menu code from menu.hui to new phplayersmenu.library.
- Now "Tools" and "Preferences" site administration groups are always in the
  last two positions.
- Now Form Hui widget children are organized as a table like a vertgroup.
- New javascript based Hui treemenu look.
- Changed handling of years when using date arrays: years must be always 4
  chars long. Typical 2 chars long years will be changed to 20xx.
- Changed handling of trees of Hui widgets when navigating them by reference,
  resulting in less memory usage.
- Removed HuiWidgetElement->mLog member and related Logger instance, resulting
  in less Hui overhead and minor memory usage.
- Applied CSS "normal" style to all form widgets.

- Now the button argument "target" works also with the "formsubmit" argument.
- PopUp icon in Hui date widget is not shown when readonly is set to
- Added missing "forceinstall" parameter to semaphores and clipboard tempdir
- Removed wrong code for nonexistent align and width properties.
- Better check about $check_script existance in string Hui widget.
- Fixed handling of "compact" attribute in AmpToolbar Hui widget buttons.
- If "rowsperpage" argument is given in table widget but "pagesactionfunction"
  is not specified, it is ignored and the table displays all the rows.

Launched the new Carthag open source PHP framework

Carthag is an enteprise level applications platform written in PHP 5, making full use of the new language features. Being distributed with the Mozilla Public License, Carthag is free to use and distribute and can be used in commercial products.

Carthag’s main purpose is to bring PHP at the Enterprise level. This is achieved by using new PHP 5 OOP features, adopting Design Patterns and bringing some other platforms ideas (in particular Java) to Carthag.

Differently from other PHP based platforms, Carthag is designed to be used in all types of applications, even client ones, and not only as a web scripting system.

Main features

  • Entirely OOP
  • Rigorous code organization (like Java)

Language and base packages

  • Bootstrap system
  • IO and files
  • Classes serialization
  • Data types
  • Exceptions
  • Class loader and class autoload interceptor
  • Support of threading/concurrent processes
  • Server sockets
  • Manipulators
  • Archives
  • Security manager
  • Dom/Sax XML manipulation
  • Utility packages


  • Implementation of design patterns like Observer, Factory, DAO, etc.
  • Singleton pattern implementation
  • Command pattern interface
  • Observer pattern implementation

Integration features

  • Database abstraction through Data Access
  • DAO base
  • Web services support (SOAP, UDDI, WSDL, XML-RPC)

Common application frameworks provided

  • Validation
  • Sessions
  • Logging system based on log4j
  • Templating
  • Localization
  • Authentication and authorization
  • Unit testing

Carthag structure