0.9902: - serving XLS responses refactored: $conf -> {site_root} is obsoleted & no more filesystem garbage; - <title> fixed to $$conf{page_title} in lpt mode; - new magic parameter: $_REQUEST{_xls_checksum}. Added in the 1st <td> in an invisible extra row of the main table (LPT mode only); 0.9901: - added magic parameter _xml (included in <head>); - added namespace for excel; - added title attribute for table headers an cells; - added 'a_class' option to draw_text_cells sub; # - storing sid in session-only cookie; 0.99: 15.03.2004 10:30 - pulldown menu rendering fixed (no glitches now); - js function open_popup_menu is moved to navigation.js; - HTTP_X_FORWARDED_FOR logging; 0.98: 12.03.2004 11:00 - new feature: 2-level main menu; sub get_menu_for_my_role { return [ { name => 'type1', label => 'Screen Type 1', items => [ { name => 'type11', label => 'Screen Type 11', }, { name => 'type12', label => 'Screen Type 12', }, ] }, { name => 'type2', label => 'Screen Type 2', }, ] } 0.97: 10.03.2004 16:40 - sql_reconnect and Config reloading order fixed; - target option added in draw_toolbar_button sub; 0.96: 09.03.2004 17:00 - target option added in draw_toolbar sub; - Zanas::Install is forked out; - order sub fixed for correct DESC handling; - draw_table fixed for not scrolling through totals; - added is_total option to draw_text_cell sub; - added real_path option to upload_file output; - added add_columns option in sql_upload_file sub (by pashka); - Zanas::Request fixed for the case where directory listing is denied; - Apache::Constants::OK fixed for prototype matching. 0.95: 03.03.2004 12:30 - add_totals sub added; - $_REQUEST {__response_sent} is now used when doing actions (by pashka); - redirection target is changed from _top to _parent (by pashka); 0.94: 02.03.2004 16:00 - (by pashka) no more strong dependency on Apache::Request or even mod_perl. One can use Zanas.pm based apps on any raw CGI hosting. The script is ----------- cut here ------------------------ #!/usr/bin/perl -w use lib '/path/to/webapp/library'; use MYAPP; $MYAPP::preconf = { db_dsn => "DBI:mysql:database=mybase", db_user => 'myuser', db_password => 'mypassword', core_load_modules => 0, core_spy_modules => 0, core_fix_modules => 0, core_gzip => 1, }; MYAPP::handler; ----------- cut here ------------------------ It's 20 times more slow, but it works; - fixed a security hole with 'type=users_for_admin' (by pashka); - multirole fixes (by pashka); - added $_REQUEST {redirect_params} handling (idea by pashka); - new log fields: id_object and ip; 0.93: 26.02.04 12:50 - targets are now in use with activate_link js function; - target option is now passed in draw_text_cells; - don't show labels for hrgoups items that are off; - <tr> are now marked as id="tr_$$field{name}" in draw_form; - added setVisible js function; - added onChange option to draw_form_field_select sub; - added onClose option to draw_form_field_datetime sub; - fixed a bug with calendar format; 0.92: 19.02.04 10:40 - added href option in draw_text_cells sub; - draw_text_cell now receives 2 args: data and options, data can be scalar (label only); - '..' option in draw_table; - don't load Mozilla3; 0.91: 13.02.04 10:30 - added a 'no_nobr' option in draw_text_cell; - added a 'title' option in draw_text_cell; 0.90: 12.02.04 10:30 - added a configuration option: $conf -> {exit_url}; 0.89: - fixed a bug in draw_toolbar_input_text (useless sid hidden input); - fixed a bug in check_href (useless sid appending); - href option in check_href sub ( => almost *EVRYWHERE*) can now be a HASHref (fed to create_url); - added 'additional_buttons' option in draw_form. - added 'status_switch' utility function. Synopsis (in YOUR_APP/Config.pm): our ($SQL_STATUS, $status) = status_switch (<<EOS); CASE WHEN now() > my_table.expire_dt THEN 2 # Expired WHEN my_table.is_ok THEN 1 # OK ELSE 0 # New END EOS To use it, add 'use Zanas::Util;' BEFORE 'use YOUR_APP::Config;'. - added 'read_only' option for all form inputs; - now working unless Apache::Request is installed: in this case, params are fetched with CGI.pm; - 'values' option in draw_form_field_static sub can be a hashref; 0.88: added 'headers' sub: draw_table ( headers (qw( ยน no Label label _ )), sub { ... } ) - added 'hrefs' sub (for column ordering): href => create_url (order => $order, desc => 0), href_asc => create_url (order => $order, desc => 0), href_desc => create_url (order => $order, desc => 1), - added 'href_asc' and 'href_desc' options to draw_text_cell. - new magic parameter: __pack. Resizes the new opened window to fit its contents. - added js function: nop. Does nothing. - new magic parameter: __read_only. All form inputs are static. - added 'picture' option to draw_form_field_string and draw_form_field_static subs 0.87: 30.01.04 10:30 - added 'value' option to draw_checkbox_cell sub 0.86: 29.01.04 16:30 - added 'confirm' option to draw_centered_toolbar_button sub - added 'target' option to draw_toolbar_button sub 0.85: 22.01.04 11:52 - 0.gif is relocated to the root - no more 'keepalive' iframe on logon screen 0.84: 21.01.04 13:45 - Accept-Encoding header is now considered 0.83: 21.01.04 12:15 - menu.js is killed 0.82: 21.01.04 11:00 - 0.html is relocated to the root 0.81: 20.01.04 14:00 - Zanas::Install module added; - gzip encoding for basic js and css; - sub sql_select_subtree added; 0.80: 26.12.03 14:30 - basic js and css is now served from Zanas.pm itself; - fixed a memory leak related to __include_js and __include_css handling; - distro is cleaned up; 0.79: 25.12.03 12:30 - added html sweeping option ($conf -> {core_sweep_spaces}); - _W_A_R_N_I_N_G_ !!! Basic navigation javaScript is now served as static content. Copy or symlink static/navigation.js to your app /docroot/i/ dir; - added gzipping option ($conf -> {core_gzip}). Requires Compress::Zlib. - added Content-Range header in download_file sub; 0.78: 24.12.03 12:30 - added Content-Length header in download_file sub; - added support for $preconf configuration hash (setting in <perl> section); - added support for __focused_input magic parameter; - sub add_vocabularies added; - sub sql_select_vocabulary added; - $conf -> {top_banner} is now rendered; 0.77: 17.12.03 10:30 - added db schema autocheck with DBIx::ModelUpdate; - added support for multiroled users (by pashka); - __no_navigation is now passed through URL rewriting (by pashka); - fixed check_href for /i/ (by pashka); 0.76: 16.12.03 10:30 - various js fixes in table scrolling/focus handling; 0.75: 15.12.03 14:00 - new field type: 'calendar' (control taken from http://dynarch.com/mishoo/calendar.epl); - added support for: $conf -> {include_js} ||= ['js']; $_REQUEST {__include_js} = $conf -> {include_js}; $conf -> {include_css} ||= ['new']; $_REQUEST {__include_css} = $conf -> {include_css}; Fckeditor js include moved there. - added off option to draw_toolbar_input_htmleditor sub; 0.74: 04.12.03 14:00 - added confirm option to draw_toolbar_button sub; - added target option to draw_form sub; 0.73: 02.12.03 15:00 - added off option to draw_toolbar_input_text sub; - added top_banner configuration option; 0.72: 28.11.03 16:00 - added type-ahead facility to all <select> controls (recipe taken from http://www.oreillynet.com/javascript/2003/09/03/examples/jsdhtmlcb_bonus2_example.html); - new magic parameter: __no_navigation. Hides top navigation toolbar and replaces ok_esc_toolbar by close toolbar (for popup windows); - added draw_close_toolbar sub; - added attributes option to draw_form_field_string sub (for attributes like readonly, disabled etc.); 0.71: 27.11.03 16:20 - fixed sql_select_all_cnt sub (case: GROUP BY); - added value option draw_form_field_select sub; 0.70: 26.11.03 12:00 - added sql_select_scalar sub; - added draw_input_cell sub (by hekima); - fixed MSIE_5_js_ok_escape sub (case: no_ok option is set); - fixed a bug in draw_form_field_static (case: values option defined); - added label_width and cell_width options to all draw_form_field_... subs; - added href, target and a_class options in draw_form_field_static sub; - fixed draw_form sub (empty <tr>s when $field -> {off}); - fixed upload_file sub (case: no file upload field at all); 0.69: 25.11.03 15:50 - added picture option in draw_text_cell sub (Number::Format is now required for install); - added draw_text_cells sub; - added tooltips in draw_text_cell sub; 0.68: 24.11.03 10:10 - js fix (char 13 from keyboard & javascript href); - added checked option in draw_form_field_checkbox sub (by hekima); - added support for $_REQUEST {__meta_refresh} parameter; - truncating long strings in draw_form_field_static sub; 0.67: 20.11.03 14:00 - added values option in draw_form_field_static - added support for multicolumn form rows via nested arrays in draw_form sub - steps in draw_path in multiline mode (Mayakovsky style) - added support for multirow table headers via nested arrays in draw_table sub - draw_toolbar_pager is fixed for the case total == 0 0.66: 18.11.03 13:40 - added portion option in draw_toolbar_pager - added support for $_REQUEST {__blur_all} parameter - added support for $_REQUEST {__scrollable_table_row} parameter - more js fixes - added file (up|down)load API: delete_file, download_file, upload_file, sql_download_file, sql_upload_file subs and $_REQUEST {__response_sent} parameter - added hidden inputs to draw_form_field_static (by hekima) - multiline path fixes (by pashka) - separate tds for each button in draw_row_buttons sub 0.65: 17.11.03 12:44 - "Generator" meta tag with version number added in draw_page sub - empty action values are now allowed in draw_form 0.64: 17.11.03 11:51 - added multiline option in draw_path - added width & height options in draw_form_field_htmleditor (by pashka) - added check_href facility to draw_ok_esc_toolbar and draw_esc_toolbar (by pashka) 0.63: 14.11.03 12:35 - added value option in draw_form_field_static sub (by hekima) - don't show ':' after empty labels in draw_form_field_hgroup (by hekima) - js fix: added support for scancodes 48..57 0.62: 13.11.03 09:40 - added href attribute for table headers in draw_table sub (by hekima) - added value option in draw_form_field_text sub (by hekima) - fixed a bug with '$name.submit' - added 'off' parameter in draw_toolbar_button sub 0.61: ... Can't remember at all :-(( 0.60: 06.11.03 10:40 - added draw_form_field_button sub (by hekima) - added support for arbitary value in draw_toolbar_input_text sub (by hekima) - optional rows and cols numbers in draw_form_field_text sub (by hekima) - optional form name in draw_ok_esc_toolbar and draw_form subs (by hekima) - js fix for scrollable table navigation - draw_toolbar_input_text refactored for parameter stickness - added cgi_tail option in sql_select_path and sql_draw_path subs 0.59: 03.11.03 12:28 - added support for keepalive - size and max_length attributes separated in draw_form_field_string - default 'string' type in draw_form_field_hgroup - don't show ':' after empty labels in forms 0.58: 30.10.03 14:21 - workaround for missing error message templates (by Hekima) - added 'mandatory' option in draw_form sub - added 'a_class' parameter in draw_text_cell sub 0.57: 23.10.03 14:52 - added 'off' parameter in draw_window_title and draw_table subs - added 'draw_text_cell' parameter in draw_text_cell sub - added 'attributes' parameter in draw_text_cell sub - added support for multiple per-row callbacks in draw_table sub - js fixes for fast find/table scrolling - js fixes for multitable scrolling 0.56: 21.10.03 15:56 - fixed check_href: period parameter 0.55: 13.10.03 10:23 - added sql_select_path sub; 0.54: 30.09.03 10:28 - added check_href sub; - new field types: 'image' & 'htmleditor' (htmleditor taken from http://www.fredck.com/FCKeditor/); 0.53: 26.09.03 13:18 - added error reporting when reloading modules; - fixed hidden inputs rendering; - added $options -> {value} for hidden inputs.