DBIx-Web
view release on metacpan or search on metacpan
# 2006-08-31 changed cgiQuery(), -qkey=>{[{}]} partial case excluded to cgiQKey()
# 2006-08-30 new dsdQuot()
# 2006-08-30 changed dbiSel()/dbiKeyWhr()/htmlMenu() to nest hashes within arrays recursivelly
# 2006-08-30 fixed ugnames(name) using local -userln undef
# 2006-08-24 changed htmlMQH() - added -xpar, -xkey
# 2006-08-24 fixed ugnames(username)
# 2006-08-24 changed and corrected -frmLso1C, -frmLso2C specifications
# 2006-08-24 new htmlMQH() for -frmLso1C
# 2006-08-23 added htmlMenu() 'recNew' for 'recList'
# 2006-08-23 new cgiQDflt(); 'cgiQuery', 'cgiForm' optimized; 'htmlHidden' changed
# 2006-08-15 new cgiQInherit(), called before query formulas
# 2006-08-15 new recUnion()
# 2006-08-14 changed cgiForm, cgiQuery, cgiList: local $c->{-cmdt}, $c->{-cmdf} added for formulas
# 2006-08-14 tfvReferences() fixed, 'l' flag not needed when -data/-display in table query
# 2006-08-14 changed field spec sub{$_}({self},{field},?edit,?query...) -> ({self},{field},'eqp',...)
# 2006-08-12 changed field spec sub{$_}({self},{field},?edit,?query,value) -> (...{record})
# 2006-08-12 changed -fdclass, -fdstyle, -fhclass, -fhstyle subs to sub{$_}({self},{field},?edit,?query,value)
# 2006-08-12 changed -ldclass, -ldstyle, -lsthtml subs to sub{$_}($self,, ?hyperlink,, cursor, [record])
# 2006-08-12 changed -ddlb to sub{$_}(fld,edit,query,$_=value)
# 2006-08-12 new -fnhtml, -fnhref, -fvhref
# 2006-08-11 changed 'htmlHidden' QBF: 'frmLso' and 'frmLsc' added
# 2006-08-11 changed 'cgiQuery' defaults and parameters joint usage: 'frmLso', 'qkey', 'qwhere', 'qurole'
# 2006-08-10 new -cgiRun0A, -udisp
lib/DBIx/Web.pm view on Meta::CPAN
# ,-rvcUpdBy =>'fieldname' # field for user name record updated by
# ,-rvcUpdWhen =>'fieldname' # field for time record updated when
# ,-rvcVerWhen =>'fieldname' # field for time version created when
# ,-rvcActPtr =>'fieldname' # field for actual record version pointer
# ,-rvcChgState=>[fld=>states] # changeble states of record
# ,-rvcCkoState=>[fld=>state ] # check-out state of record
# ,-rvcDelState=>[fld=>state ] # deleted state of record
# Record File Attachments rooles:
,-rfa =>1 # switch on
# ,-rfdName =>sub{} # 'rfdName' formula for key processing
# Record ID References
# ,-ridRef =>[] # reference fields
# Record Manipulation Triggers:
# ,-recTrim0A =>sub{} # 'recTrim' trigger before UI action
# ,-recForm =>'form'|sub{} # 'recForm' UI implementation
# ,-recForm0A =>sub{} # 'recForm' trigger before UI action
# ,-recForm0C =>sub{} # 'recForm' trigger before command
# ,-recForm0R =>sub{} # 'recForm' trigger before row
lib/DBIx/Web.pm view on Meta::CPAN
,($u
? $s->ugnames($u)
: $s->ugnames())
, $_[4])
: ())
}
sub dbiSel { # Select records from database
# -select =>ALL, DISTINCT, DISTINCTROW, STRAIGHT_JOIN, HIGH_PRIORITY, SQL_SMALL_RESULT
# -data =>[fields] | [field, [field=>alias], {-fld=>alias, -expr=>formula,..}]
# -table =>[tables] | [[table=>alias], [table=>alias,join]]
# -join[01] =>string
# -join =>string
# -join2 =>string
# -key =>{field=>value}
# -where =>string | [strings]
# -ftext =>string
# -version =>0|1
# -order =>string | [field, [field=>order]]
# -keyord =>-(a|f|d|b)(all|eq|ge|gt|le|lt)
lib/DBIx/Web.pm view on Meta::CPAN
delete $c->{$k} if !defined($c->{$k});
}
}
$s
}
sub cgiQInherit { # Inherit cgi query attributes if needed
my($s, $q, $qm, $tm) =@_; # (self, query, meta, table meta, table query)
# use local @$q{qw(-meta -field -data -display -order -keyord)} =@$q{qw(-meta -field -data -display -order -keyord)};
# meta - process -query specification - fill inheritance for formulas
# !meta - process request formed - fill metadata for cgiList
$tm = !$q->{-table}
? $tm
: !ref($q->{-table}) && ($q->{-table} =~/^([^\s]+)/)
? $_[0]->{-form}->{$1} || $_[0]->mdeTable($1)
: ref($q->{-table}->[0])
? $_[0]->mdeTable($q->{-table}->[0]->[0])
: ($q->{-table}->[0] =~/^([^\s]+)/) && $_[0]->mdeTable($1)
if !$tm;
# return(&{$s->{-die}}("cgiQInherit -> no table meta" .$s->{-ermd})) if !$tm;
lib/DBIx/Web.pod view on Meta::CPAN
=item -env
=> not exists || {env var=>value,...}
(C<Creation and Setup>)
Assignment or deletion of environment variables within C<set>.
=item -expr
=> not exists || database name or formula
(C<Table/Form Description>, C<Field Description>)
Table or Field name as used inside SQL database engine,
or SQL expression.
Table name for application is explained as C<-table> key.
Field name for application is explained as C<-fld>.
=item -fdclass
lib/DBIx/Web.pod view on Meta::CPAN
Relative filename will be based on 'C<-path>/psp/' with
C<-url> as default base URL.
See C<Perl Script Pages>.
=item psParse (? '-e', perl script source string, ? base URL) -> perl source string
C<User Interface>.
Converts HTML with embedded perl into perl source with C<output> calls.
'e'mbeddable html option prevents generation output of html headers.
Perl code markers are: '<% perl formula %>', '<script> perl script </script>', '<script language=PerlScript|Perl runat=Server>'.
'@_' considered to contain application object, options, filename, base URL, additional args.
See C<Perl Script Pages>.
=item pthCln (path) -> success
C<File Store>.
Removes path if empty.
Recourses bottom-up.
Empty path may contain '.htaccess' files.
lib/DBIx/Web.pod view on Meta::CPAN
C<Database Operation>.
Rollbacks changes to database. Should be called from $SIG{__DIE__},
see C<set> source for example.
See also C<recCommit>.
=item recSel (
-table => table name || 'FROM clause' || [table name, [table, alias], [table, alias, join],...],
? -join[01] => 'left or right addition to FROM clause'
? -select => 'ALL' || 'DISTINCT' || 'DISTINCTROW' || 'STRAIGHT_JOIN'...,
? -data => [field, [field => alias], {-fld => alias, -expr => formula,..},...],
? -key => {field name => value,...},
? -where => 'WHERE clause' || ['WHERE clause',...],
? -urole => 'author'||'authors'||'actors'||'principals'||'user'||'users',
? -uname => 'role username'
? -ftext => 'full-text search string',
? -version => false ||true,
? -group => 'GROUP BY clause' || ['GROUP BY clause'...]
? -order => string || [field, [field => order],...],
? -keyord => -(a|f|d|b)(all|eq|ge|gt|le|lt),
? -filter=> sub{}(cursor, undef, {field=>value,...})
( run in 0.531 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )