Hello, 

As announced earlier a new experimental installer comes with the latest
beta 2.1.5. I want to give more details about this. 

First and most important. This installer is EXPERIMENTAL. Use it only
for testing. The old installer is still available
at /install/install.php. The new one is under alias /installer. 

How did I come to the idea to make new installer for Care2x? Two or
three months ago I decided to give a try of the MirrorMed project. I was
impressed by the installer: 
    * it looks stylish;
    * it makes checks of my system before the actual installation;
    * the installation process steps are clearly described in a separate
descriptor php file;
    * potential (not tested) possibility for upgrades.

I thought: if the Care2x has such checks before the installation
process, there will be no more erroneous installations and people
complaining why Care2x is not working on unsupported PHP and Database
versions. 

I looked at the source code and get oriented very quickly. The code has
good object oriented structure and is easily extensible. So, I decided
to port the installer to Care2x. 

There are several things I added as features: 
    1. Collection of data - the original version has only text fields,
the new version adds password fields, select fields and labeled
separators;
    2. Full database abstraction - the original version works only with
MySQL, in the new version the code is refactored to work entirely with
ADOdb;
      2.1. AXMLS (ADOdb XML Schema) - the original version creates the
DB schema by a MySQL dump, the new version uses XML file
(/installer/db/schema.xml), ADOdb translates the XML to sql statements
for the corresponding database type;
      2.2. CSV import - ICD10 and OPS301 codes are imported not from sql
statements, but from CSV (comma-separated values) files (/installer/db).
Using ADOdb the CSV files are translated to appropriate sql statements. 

The big benefit from the Full database abstraction feature is the
supportability. When a correction of the DB layout is needed only the
database XML schema (schema.xml) has to be changed and not the sql dump
for each database type. 

Moreover, there are no possible problems for backward incompatibilities
for future version of the databases. We had recently such situation: the
MySQL dump made by version 3.23 could not be imported in MySQL version
4.1 and later. 

The database abstraction also opens the gates for Care2x to be installed
on all possible database types supported by ADOdb. 

The status for the new installer at the moment is EXPERIMENTAL. It has
good vision how it should look like, it is a working prototype. There
are several more things to be done: 
    1. The schema.xml has to be carefully reviewed for mistakes;
    2. Additional 'system tests' has to be added: at the moment there
are tests for PHP and Database versions, write permissions, availability
of certain PHP modules, values of PHP parameters. It has to be decided
what additional PHP parameters has to be checked;
    3. Additional actions may be added. If anybody things that the
installer should make some additional things, let me know;
    4. Help information and description of the fields, tests and actions
has to be added;
    5. New style of the installer. At the moment the style is almost the
same as the one of MirrorMed installer. 

Also I need people to run the new installer and test if Care2x works
properly after the installation. I will publish a tutorial with
screenshots about the new installer soon. Please, report all problems
you find in the mailing list. 

For the above tasks I need your help. If you can help with something let
me know. 

Greetings
Kaloyan



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
Care2002-developers mailing list
Care2002-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/care2002-developers

Reply via email to