0.9969:
- SQL/mysql.pm: sql_do fixed for temporality (UPDATE watching);
0.9968:
- _static_files recognition fixed (by pashka);
- js fix: up & down table scrolling is way smoother now;
0.9967:
- draw_centered_toolbar fixed for broken HTML;
- sql_select_ids added;
- $conf -> {db_temporality} introduced;
0.9966:
- js_escape fixed for \ quoting;
- b64u_encode/b64u_decode & b64u_freeze/b64u_thaw introduced;
- no more eval'ing $_REQUEST {redirect_params} when Storable.pm is present;
- draw_form fixed for the case where $core -> {auto_esc} is on and __last_query_string's session is dead;
0.9965:
- robots.txt & favicon.ico added
- Zanas::Loader introduced
0.9964:
- Server & InternalRequest fixed;
- added $preconf -> {no_model_update} option for pathological mod_cgi circumstances :-( ;
- check_href fixed for no __last_query_string appending in javascript urls;
0.9960:
- js fix: focus_on_first_input don't try to focus on hidden input;
- sql_assert_core_tables fixed (was completely broken :-( );
0.9959:
- fixed (?) cookie auth in pub_handler;
- $preconf -> {core_auth_cookie} now overrides $conf -> {session_timeout};
0.9958:
- improved version naming :-);
0.9957:
- handler fixed for missing $ENV {PATH_INFO} (mod_perl w/o libapreq case);
- fixed a small DHTML bug with _src of 'invisible';
- new type: '_logout'. Killing sessions;
- upload_file and Zanas::Upload are fixed for the case where no file is sent and use_cgi is on;
0.9956:
- fixed a bug in public_handler introduced in 0.9956;
0.9955:
- fixed a bug in redirect/http introduced in 0.9954;
0.9954:
- Zanas::Server introduced;
- fixed (?) an encoding bug for mod_perl 1 and Perl 5.8;
- type=_info;
0.9953:
- stripping HTML in check_title;
0.9952:
- sid uniqueness enforced;
- HTML is srtipped out in ALT tag in draw_toolbar_button;
0.9951:
- transaction related operations are enclosed in eval blocks;
- $SQL_VERSION introduced;
- cookie authorization introduced;
- support for SQL_CALC_FOUND_ROWS added;
0.9950:
- no more error messages for 'validate_... not found';
- profiling added;
- fixed charset for XLS files;
0.9949:
- DHTML fix: tabindex is now set for <select>s;
- speed optimization: get_user's SQL is no more executed when $_REQUEST {type} eq '_static_files';
- speed optimization: keepalive requests are now delayed;
0.9948:
- use Carp;
- *::Cookie loading fix;
- set_cookie API function added;
- js fix: escaping '\' in draw_form_field_htmleditor sub;
- handler fixed for Windows&CGI case: copying 0.gif e.t.c. to /i is no longer needed; (Zanas::Request bug ?)
- removed dependency of Apache::Request in Makefile.PL;
- force_label option in draw_row_button sub;
0.9947:
- core_auto_esc related fix (cleaning up the request string);
0.9946:
- $_USER -> {demo_level} introduced;
0.9945:
- alpha support for height option in draw_table;
- core_auto_esc facility fixed for the '..' case;
- log_action fix: id_object => $_REQUEST {id} || $_OLD_REQUEST {id};
0.9944:
- pub_handler changed: now passing all form input values after validation fail;
- js fix: scrollable_table_row limited;
- sql_do_refresh_sessions/Oracle transaction related fix;
- no more immediate keepalive requests ('virgin' parameter added);
0.9943:
- create_url fixed for compatibility with $conf -> {core_auto_esc};
0.9942:
- added order option in sql_select_vocabulary sub;
- documentation fixes;
- get_user fixed (multirole specific bug was introduced in 0.9937 with Oracle support);
- conf option core_auto_esc added;
0.9941:
- added icon option in draw_centered_toolbar_button sub;
0.9940:
- startup logging beautyfied;
- magic parameter $_REQUEST {__redirect_alert} added;
- main menu rendering changed for {no_page} items;
0.9939:
- fixed logging (was broken with adding support for Oracle);
0.9937:
- public_handler fixed: now loading Apache::Cookies;
- delete $_REQUEST {id} in sql_do_delete;
- added support for Oracle;
- sql_reconnect & sql_disconnect are moved to PerlChildInitHandler & PerlChildExitHandler;
0.9936:
- logging changed (keep original %_REQUEST state);
- sql_do_delete enhanced: Post Mortem Photo feature added.
0.9935:
- {lpt => 1} tables where $_REQUEST {id} is set are now allowed;
- draw_row_button is off when $_REQUEST {lpt} is set;
- js enhancement: click on td moves the slider;
- {empty} now is cheched with defined, not exists (by pashka);
- calendars are no more rendered for MSIE 5.0;
0.9934:
- draw_input_cell now returns empty <td> insteaf of '' when off => 1;
- added attributes option in draw_table_header;
- added picture option in draw_input_cell;
0.9933:
- charset in html documentation;
- wx_handler introduced (early alpha);
- direct hrefs in main menu;
0.9932:
- size option in draw_form_field_password;
0.9930:
- small fix in draw_toolbar_pages: nevative paga numbers (thanks RomALo);
- $data -> {max_len} defaults to $data -> {size} in draw_text_cell (thanks pashka);
- no more trunc_string in draw_input_cell (thanks pashka);
0.9929:
- trunc_string now does nothing when xls=1;
- new field type: date (synonym for datetime with no_time => 1);
- new option: no_read_only in draw_form_field_datetime sub;
0.9928:
- draw_select_cell sub added (by pashka);
- draw_text_cell fixed for {off => 1} (by pashka);
0.9927:
- fixed a js bug introduced in 0.9926 (popup menus rendering);
0.9926:
- new option no_clear_button in draw_form_field_datetime (thanks RomALo);
- fixed a bug with empty record duplication in draw_toolbar_input_select (thanks RomALo);
- added support for plain CGI in pub_handler;
- plain hrefs in menus (thanks pashka);
0.9925:
- out_html, sql_download_file and pub_handler fixed for proper file downloading on public sites;
0.9924:
- draw_radio_cell sub added (by pashka for another pashka);
0.9923:
- module compilation errors are in STDERR again (lost in 0.9922);
- fixed [X] button for datetime control: <nobr>;
- fixed default Content-Type header for pub_handler;
- added X-Powered-By header;
- fixed a bug: keepalive requests now work for non-root install;
- HTML cacheing for public sites is completely redone (files instead of LONGTEXT), many bugs fixed;
- some code cleanup;
0.9922:
- cache_html column types are changed to longtext;
- added support for client side caching (proper If-Modified-Since handling);
- get rid of Mozilla/Unsupported;
- doc fixes;
- [X] button for datetime control (by pashka);
- fixed a bug with CGI interface inroduced in 0.9918 (by pashka);
0.9921:
- new $conf option: core_cache_html. HTML cacheing in pub_handler introduced;
0.9920:
- new redirect kind: 'http';
- fixed a bug in draw_form_field_select (empty item duplicates);
- fixed a bug in draw_form_field_select (" -> " in IDs);
- added support for public sites: pub_handler introduced;
0.9919:
- fixed a bug introduced in 0.9918 (current path resolution);
- 0.gif & 0.html are moved to $_REQUEST {__uri};
0.9918:
- saving files fith original extensions in upload_file;
- file purging fixes;
- new sub: sql_select_loop;
- Zanas.pm application can now live in a separated subdirectory (e.g. /admin/?sid=123456, /crm/?sid=6666666...);
0.9917:
- new option 'target' in redirect of kind 'js';
- new option 'before' in redirect of kind 'js';
0.9916:
- added size option for draw_toolbar_input_text;
- fixed HTML for toolbar inputs;
- new widget: draw_toolbar_input_submit;
- create_url fixed for setting 'salt' directly (by pashka) (why?!);
0.9915:
- fixed a typo in draw_form_field_htmleditor;
0.9914:
- fixed minor bug in i18n ($$i18n{toolbar_pager_empty_list} wasn't interpolated);
- i18n for page_title implemented ($conf -> {$lang} -> {_page_title});
- new form field type introduced: 'iframe';
- onChange option for form field type 'file';
0.9913:
- new option in draw_form_field_htmleditor: toolbar (by pashka);
- new option in draw_table: top_toolbar;
- new option in draw_table: path;
- new option in draw_table: title;
- draw_toolbar: buttons as hashrefs, not plain HTML;
- i18n support added;
- simultaneous sessions for multiple roles support added (by pashka);
0.9912:
- create_url sub fixed to always set random 'salt' parameter;
- new feature: js redirects with messages;
0.9911:
- js fix: checkboxes (draw_checkbox_cell) are now toggled by spacebar even when focused;
- js fixes related to focus handling on slider move;
- 'undocumented' warnings in docs generator;
0.9910:
- 'keep_params' option added to draw_form and draw_toolbar_input_text subs;
- fixed a bug caused the table slider to disappear then lpt option was set in draw_table;
- draw_toolbar_input_checkbox sub added;
0.9909:
- fixed a bug in draw_row_button (no sid inheritance when confirm is defined);
0.9908:
- check_title sub is added, draw_table_header, draw_row_button and draw_text_cell are fixed to use it;
0.9907:
- magic %_REQUEST params documented;
- trees in 'checkboxes' are supported;
0.9906:
- new $conf options: kb_options_menu, kb_options_buttons, kb_options_pager and kb_options_focus;
- hotkey and hotkeys subs added;
- draw_toolbar_input_select sub added;
- draw_form_field_checkboxes redone dramatically;
0.9905:
- Zanas::Docs added;
0.9904:
- added 'read_only' option in draw_menu sub;
0.9903:
- new magic parameter: __help_url;
- draw_text_cell fix: no hrefs rendered when lpt=1;
- added 'position' option in add_totals sub;
- added 'read_only' option in draw_input_cell sub;
- another XLS fix: $conf -> {site_root} removed, $$ added in temporary filename;
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.