DBIx-Web
view release on metacpan or search on metacpan
lib/DBIx/Web.pm view on Meta::CPAN
#!perl -w
#
# DBIx::Web - Active Web Database Layer
#
# makarow at mail.com, started 2003-09-16
#
# Future ToDo:
# - !!! ??? *** review, code review
# - record references finder via 'wikn://', 'key://', bracket notation
# - root hierarchical record functionality: -ridRoot
# - calendar views: type and start/end time; start sub{}, entry sub{}, periodical rec.
# - mail-in interface - records and message browser source
# - logfile reading interface - message browser source
# - acknowledgements feature - message browser implementation
# - replication feature - distributing data
# - 'recRead' alike calls may return an objects, knows metadata
# - remake in three tiers: database with triggers, web interface, communicator
#
# Problems - Think:
# - strDiff() breaks hyperlinks
# - table operation trigger instead of -cgiRun0A: should be included within each trigger and duplicated within actions and user interface
# # -unflt/uglist, -ugflt/uglist/ugroups, -usernt/user/uglist, -userln/user/uglist, -udisp/udisp, -ugadd/ugroups/uglist
# # ui: -unflt, -udisp
# # pi: -ugflt, -usernt, -userln, -ugadd
# # pc: uglist, user, ugroups, udisp
# - store for users preferences, homepages, notes, etc.
#
# Limitation Issues:
# - PerlEx/IIS Source='Application Error', EventID=1000, faulting application:
# w3wp.exe 6.0.3790.1830; unknown 0.0.0.0; address 0x01805f98.
# w3wp.exe 6.0.3790.1830; w3cache.dll 6.0.3790.1830; address 0x0000342a.
# w3wp.exe 6.0.3790.3959; w3cache.dll 6.0.3790.3959; address 0x0000341a.
# W3SVC. Warning. 1009. A process serving application pool 'IIS5AppPool' terminated unexpectedly. The process id was '6280'. The process exit code was '0xc0000005'.
# ? may occur stopping www serice with DBIx::Web, CGI::Bus, printenv.cgi, reload.cgi
# ? this may be a PerlEx bug or bug in my PerlEx installation
# - html page scrolling with menu bar
# # no simple means
# - innice htmlML() selection: _frmName.value=_form.value ? _form.value : '';
# # ms-help://MS.MSDNQTR.2005JAN.1033/DHTML/workshop/samples/author/dhtml/refs/oncontextmenu.htm
# - dbmSeek() -key=>{[{}]} syntax of cgiForm(recQBF)/cgiQKey
# # dbm not used at all, it seems
#
# ToDo:
# CMDB / Service Desk:
# - hdesk: association records, invisible when not needed?
# - cmdb/hdesk: status classification graphs: object, application, location, personal
#
# Done:
#
package DBIx::Web;
require 5.000;
use strict;
use UNIVERSAL;
use POSIX;
use Fcntl qw(:DEFAULT :flock :seek :mode);
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $AUTOLOAD $SELF $CACHE $LNG $IMG);
$VERSION= '0.80';
$SELF =undef; # current object pointer, use 'local $SELF'
$CACHE ={}; # cache for pointers to subobjects
*isa = \&UNIVERSAL::isa; isa('',''); # isa function
my $RISM0 ='/'; # record identification separation mark 0
my $RISM1 ='//'; # record identification table/id seperator
# (-idsplit; consider -recInsID, -rfdName)
my $RISM2 ='.rfd'; # record identification end special mark
my $NLEN =14; # length to pad left numbers in indexes
my $LIMRS =512; # limit of result set
my $LIMLB =8 *$LIMRS; # limit of result set for listboxes
( run in 2.143 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )