You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(381) |
Nov
(176) |
Dec
(310) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(334) |
Feb
(96) |
Mar
(149) |
Apr
(214) |
May
(120) |
Jun
(56) |
Jul
(10) |
Aug
(273) |
Sep
(182) |
Oct
(56) |
Nov
(125) |
Dec
(22) |
| 2003 |
Jan
(63) |
Feb
(181) |
Mar
(498) |
Apr
(433) |
May
(39) |
Jun
(512) |
Jul
(276) |
Aug
(156) |
Sep
(101) |
Oct
(66) |
Nov
(24) |
Dec
(161) |
| 2004 |
Jan
(1) |
Feb
(377) |
Mar
(68) |
Apr
(26) |
May
(107) |
Jun
(333) |
Jul
(13) |
Aug
|
Sep
(76) |
Oct
(88) |
Nov
(170) |
Dec
(91) |
| 2005 |
Jan
(52) |
Feb
(239) |
Mar
(402) |
Apr
(15) |
May
(2) |
Jun
(1) |
Jul
(13) |
Aug
|
Sep
(71) |
Oct
(34) |
Nov
|
Dec
|
| 2006 |
Jan
(5) |
Feb
(5) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(7) |
Oct
(2) |
Nov
|
Dec
|
| 2007 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Chris W. <la...@us...> - 2001-10-11 15:12:12
|
Update of /cvsroot/openinteract/OpenInteract/template
In directory usw-pr-cvs1:/tmp/cvs-serv15920
Modified Files:
form_select form_select_option
Log Message:
update to enable plain select box creation (just from lists, not objects)
Index: form_select
===================================================================
RCS file: /cvsroot/openinteract/OpenInteract/template/form_select,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** form_select 2001/10/09 00:52:45 1.2
--- form_select 2001/10/11 15:12:05 1.3
***************
*** 1,5 ****
[%########################################
form_select( name(*), list/iterator(*), value_field(*), label_field,
! picked, first_label, is_multiple, size, field_label )
Create a SELECT dropdown box where the options are specified by
objects in 'list' or 'iterator'
--- 1,5 ----
[%########################################
form_select( name(*), list/iterator(*), value_field(*), label_field,
! picked, first_label, first_blank, is_multiple, size, field_label )
Create a SELECT dropdown box where the options are specified by
objects in 'list' or 'iterator'
***************
*** 7,14 ****
[%- INCLUDE form_select_intro -%]
! [%- IF first_label -%]
<option value="">[% first_label %]</option>
[%- END -%]
! [% IF iterator %][% INCLUDE form_select_options_iterator -%]
! [% ELSE %][% INCLUDE form_select_options_list() -%][% END -%]
</select> [% field_label %]
--- 7,15 ----
[%- INCLUDE form_select_intro -%]
! [%- IF first_label OR first_blank -%]
<option value="">[% first_label %]</option>
[%- END -%]
! [% IF plain %][% INCLUDE form_select_options_plain_list -%]
! [% ELSIF iterator %][% INCLUDE form_select_options_iterator -%]
! [% ELSE %][% INCLUDE form_select_options_list -%][% END -%]
</select> [% field_label %]
Index: form_select_option
===================================================================
RCS file: /cvsroot/openinteract/OpenInteract/template/form_select_option,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** form_select_option 2001/10/08 20:24:02 1.2
--- form_select_option 2001/10/11 15:12:05 1.3
***************
*** 3,10 ****
Display a single OPTION item for use in a <SELECT> dropdown.
########################################-%]
!
! [%- SET use_label_field = label_field || value_field;
! SET value = item.$value_field;
! SET label = item.$use_label_field;
! SET is_picked = ( value == picked ) ? 'SELECTED' : ''; -%]
! <option value="[% value %]" [% is_pick %]>[% label %]</option>
\ No newline at end of file
--- 3,11 ----
Display a single OPTION item for use in a <SELECT> dropdown.
########################################-%]
! [%- UNLESS plain -%]
! [%- SET use_label_field = label_field || value_field;
! SET value = item.$value_field;
! SET label = item.$use_label_field; -%]
! [%- END -%]
! [%- SET is_picked = ( value == picked ) ? ' SELECTED' : '' -%]
! <option value="[% value %]"[% is_picked %]>[% label %]</option>
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:55:08
|
Update of /cvsroot/openinteract/OpenInteract/pkg/base_security/struct In directory usw-pr-cvs1:/tmp/cvs-serv23781/struct Modified Files: security.sql Log Message: update structure of security table to have a longer scope_id field Index: security.sql =================================================================== RCS file: /cvsroot/openinteract/OpenInteract/pkg/base_security/struct/security.sql,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** security.sql 2001/06/13 04:18:46 1.7 --- security.sql 2001/10/11 13:55:05 1.8 *************** *** 4,8 **** object_id varchar(150) default '0', scope char(1) not null, ! scope_id varchar(20) default 'world', security_level char(1) not null, primary key ( sid ), --- 4,8 ---- object_id varchar(150) default '0', scope char(1) not null, ! scope_id varchar(150) default 'world', security_level char(1) not null, primary key ( sid ), |
|
From: Chris W. <la...@us...> - 2001-10-11 13:55:08
|
Update of /cvsroot/openinteract/OpenInteract/pkg/base_security In directory usw-pr-cvs1:/tmp/cvs-serv23781 Modified Files: Changes package.conf Log Message: update structure of security table to have a longer scope_id field Index: Changes =================================================================== RCS file: /cvsroot/openinteract/OpenInteract/pkg/base_security/Changes,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** Changes 2001/09/28 18:59:48 1.28 --- Changes 2001/10/11 13:55:05 1.29 *************** *** 1,4 **** --- 1,11 ---- Revision history for OpenInteract package base_security. + 1.51 Thu Oct 11 10:08:02 EDT 2001 + + Updated struct/security.sql to have a longer scope_id field; + most people won't need to worry about this, but people who use + LDAP can have long group/usernames as ID values. Existing users + can remain with their existing structure. + 1.50 Fri Sep 28 15:11:37 EDT 2001 Index: package.conf =================================================================== RCS file: /cvsroot/openinteract/OpenInteract/pkg/base_security/package.conf,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** package.conf 2001/09/28 18:59:48 1.28 --- package.conf 2001/10/11 13:55:05 1.29 *************** *** 1,4 **** name base_security ! version 1.50 author Chris Winters (ch...@cw...) url http://www.openinteract.org/ --- 1,4 ---- name base_security ! version 1.51 author Chris Winters (ch...@cw...) url http://www.openinteract.org/ |
|
From: Chris W. <la...@us...> - 2001-10-11 13:38:02
|
Update of /cvsroot/openinteract/OpenInteract/OpenInteract/Template In directory usw-pr-cvs1:/tmp/cvs-serv14880 Modified Files: Process.pm Log Message: updated docs Index: Process.pm =================================================================== RCS file: /cvsroot/openinteract/OpenInteract/OpenInteract/Template/Process.pm,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Process.pm 2001/10/11 03:13:45 1.14 --- Process.pm 2001/10/11 13:28:55 1.15 *************** *** 237,240 **** --- 237,242 ---- filesystem, or wherever) and generating the finished content for you. + Shorthand used below: TT == Template Toolkit. + =head1 INITIALIZATION *************** *** 291,297 **** For instance, say you have a template of all the BLOCKs you use to ! define common graphical elements. You can save this template as ! C<$WEBSITE_DIR/template/myblocks.tmpl> directory. Then to make it ! available to all templates processed by your site, you can do: # In conf/server.perl --- 293,300 ---- For instance, say you have a template of all the BLOCKs you use to ! define common graphical elements. (You can more easily do this with ! template widgets, but this is just an example.) You can save this ! template as C<$WEBSITE_DIR/template/myblocks.tmpl> directory. Then to ! make it available to all templates processed by your site, you can do: # In conf/server.perl |
|
From: Chris W. <la...@us...> - 2001-10-11 13:37:51
|
Update of /cvsroot/openinteract/OpenInteract/template
In directory usw-pr-cvs1:/tmp/cvs-serv18033
Modified Files:
row_color
Log Message:
IE has issues with the extra whitespace
Index: row_color
===================================================================
RCS file: /cvsroot/openinteract/OpenInteract/template/row_color,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** row_color 2001/10/08 20:20:00 1.1
--- row_color 2001/10/11 13:37:46 1.2
***************
*** 5,9 ****
can be useful).
########################################-%]
-
[%- IF color %][% color -%]
[%- ELSE -%]
--- 5,8 ----
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:36:23
|
Update of /cvsroot/openinteract/OpenInteract/doc
In directory usw-pr-cvs1:/tmp/cvs-serv17606
Modified Files:
template_widgets.html
Log Message:
update widget docs
Index: template_widgets.html
===================================================================
RCS file: /cvsroot/openinteract/OpenInteract/doc/template_widgets.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** template_widgets.html 2001/10/09 02:21:13 1.1
--- template_widgets.html 2001/10/11 13:36:18 1.2
***************
*** 18,21 ****
--- 18,29 ----
the right.</p>
+ <p>One of the main benefits of using these over HTML is that
+ these are centralized -- a change in one place enacts changes
+ throughout your site. All column headers can look a certain way
+ and be changed easily, all textboxes can be consistent and you
+ can create widgets specific to your site and needs -- such as
+ for inputting dates or money, or displaying addresses-- for a
+ consistent user interface.</p>
+
<p>Here's an example:</p>
***************
*** 134,137 ****
--- 142,150 ----
</table>
+ <p>Using this, the page designer doesn't care how many countries
+ the company services, whether a new one has been added to the
+ list, etc. Just make the call and the graphic element will be
+ created the same way every time.</p>
+
<p>Using these template widgets you can build a library of
display elements very quickly.</p>
***************
*** 264,268 ****
<!-- Created: Mon Oct 8 12:39:23 EDT 2001 -->
<!-- hhmts start -->
! Last modified: Mon Oct 8 22:17:11 EDT 2001
<!-- hhmts end -->
</body>
--- 277,281 ----
<!-- Created: Mon Oct 8 12:39:23 EDT 2001 -->
<!-- hhmts start -->
! Last modified: Thu Oct 11 09:49:54 EDT 2001
<!-- hhmts end -->
</body>
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:18:42
|
Update of /cvsroot/openinteract/SPOPS/SPOPS
In directory usw-pr-cvs1:/tmp/cvs-serv12239
Modified Files:
HashFile.pm
Log Message:
rename the extension used by the backup file to '.backup' rather than
'.old' to better convey what it actually is
Index: HashFile.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/HashFile.pm,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** HashFile.pm 2001/10/11 13:09:26 1.10
--- HashFile.pm 2001/10/11 13:18:40 1.11
***************
*** 57,62 ****
die "Cannot save data: the filename has been erased. Did you assign an empty hash to the object?\n";
}
if ( -f $obj->{filename} ) {
! rename( $obj->{filename}, "$obj->{filename}.old" )
|| die "Cannot rename old file to make room for new one. Error: $!";
}
--- 57,65 ----
die "Cannot save data: the filename has been erased. Did you assign an empty hash to the object?\n";
}
+ if ( -f "$obj->{filename}.backup" ) {
+ unlink( "$obj->{filename.backup" ); # just to be sure...
+ }
if ( -f $obj->{filename} ) {
! rename( $obj->{filename}, "$obj->{filename}.backup" )
|| die "Cannot rename old file to make room for new one. Error: $!";
}
***************
*** 68,72 ****
eval { open( INFO, "> $obj->{filename}" ) || die $! };
if ( $@ ) {
! rename( "$obj->{filename}.old", $obj->{filename} )
|| die "Cannot open file for writing (reason: $@ ) and ",
"cannot move backup file to original place. Reason: $!";
--- 71,75 ----
eval { open( INFO, "> $obj->{filename}" ) || die $! };
if ( $@ ) {
! rename( "$obj->{filename}.backup", $obj->{filename} )
|| die "Cannot open file for writing (reason: $@ ) and ",
"cannot move backup file to original place. Reason: $!";
***************
*** 75,80 ****
print INFO $string;
close( INFO );
! if ( -f "$obj->{filename}.old" ) {
! unlink( "$obj->{filename}.old" )
|| warn "Cannot remove the old data file. It still lingers in $obj->{filename}.old....\n";
}
--- 78,83 ----
print INFO $string;
close( INFO );
! if ( -f "$obj->{filename}.backup" ) {
! unlink( "$obj->{filename}.backup" )
|| warn "Cannot remove the old data file. It still lingers in $obj->{filename}.old....\n";
}
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:09:29
|
Update of /cvsroot/openinteract/SPOPS/SPOPS/Tie
In directory usw-pr-cvs1:/tmp/cvs-serv8815/SPOPS/Tie
Modified Files:
StrictField.pm
Log Message:
lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...)
Index: StrictField.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Tie/StrictField.pm,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** StrictField.pm 2001/09/20 14:51:18 1.11
--- StrictField.pm 2001/10/11 13:09:26 1.12
***************
*** 29,33 ****
foreach my $key ( @{ $p->{field} } ) {
$FIELDS{ $base_class }->{ lc $key } = 1;
! }
}
return 1;
--- 29,33 ----
foreach my $key ( @{ $p->{field} } ) {
$FIELDS{ $base_class }->{ lc $key } = 1;
! }
}
return 1;
***************
*** 66,70 ****
return $self->SUPER::EXISTS( $key ) unless ( $self->{ IDX_CHECK_FIELDS() } );
DEBUG() && _w( 3, " tie: Checking for existence of ($key)\n" );
! if ( $FIELDS{ $self->{class} }->{ lc $key } ) {
return exists $self->{ IDX_DATA() }->{ lc $key };
}
--- 66,70 ----
return $self->SUPER::EXISTS( $key ) unless ( $self->{ IDX_CHECK_FIELDS() } );
DEBUG() && _w( 3, " tie: Checking for existence of ($key)\n" );
! if ( $FIELDS{ $self->{class} }->{ lc $key } ) {
return exists $self->{ IDX_DATA() }->{ lc $key };
}
***************
*** 112,126 ****
=head1 DESCRIPTION
! This class subclasses L<SPOPS::Tie>, adding field-checking
functionality. When you tie the hash, you also pass it a hashref of
extra information, one key of which should be 'field'. The 'field'
parameter specifies what keys may be used to access data in the
hash. This is to ensure that when you set or retrieve a property it is
! properly spelled.
If you do not specify the 'field' parameter properly, you will get
! normal L<SPOPS::Tie> functionality, which might throw a monkey wrench
! into your application since you and any users will expect the system
! to not silently accept misspelled object keys.
For instance:
--- 112,126 ----
=head1 DESCRIPTION
! This class subclasses L<SPOPS::Tie|SPOPS::Tie>, adding field-checking
functionality. When you tie the hash, you also pass it a hashref of
extra information, one key of which should be 'field'. The 'field'
parameter specifies what keys may be used to access data in the
hash. This is to ensure that when you set or retrieve a property it is
! properly spelled.
If you do not specify the 'field' parameter properly, you will get
! normal L<SPOPS::Tie|SPOPS::Tie> functionality, which might throw a
! monkey wrench into your application since you and any users will
! expect the system to not silently accept misspelled object keys.
For instance:
***************
*** 140,144 ****
=head1 SEE ALSO
! L<SPOPS::Tie>, L<perltie>
=head1 COPYRIGHT
--- 140,146 ----
=head1 SEE ALSO
! L<SPOPS::Tie|SPOPS::Tie>
!
! L<perltie|perltie>
=head1 COPYRIGHT
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:09:29
|
Update of /cvsroot/openinteract/SPOPS/SPOPS/DBI
In directory usw-pr-cvs1:/tmp/cvs-serv8815/SPOPS/DBI
Modified Files:
MySQL.pm Pg.pm Sybase.pm
Log Message:
lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...)
Index: MySQL.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/DBI/MySQL.pm,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** MySQL.pm 2001/08/22 10:51:45 1.9
--- MySQL.pm 2001/10/11 13:09:26 1.10
***************
*** 19,23 ****
# SPOPS::Key::DBI::HandleField.
! sub post_fetch_id {
my ( $item, @args ) = @_;
return undef unless ( $item->CONFIG->{increment_field} );
--- 19,23 ----
# SPOPS::Key::DBI::HandleField.
! sub post_fetch_id {
my ( $item, @args ) = @_;
return undef unless ( $item->CONFIG->{increment_field} );
***************
*** 71,75 ****
=head1 SEE ALSO
! L<DBD::mysql>, L<DBI>
=head1 COPYRIGHT
--- 71,79 ----
=head1 SEE ALSO
! L<SPOPS::Key::HandleField|SPOPS::Key::HandleField>
!
! L<DBD::mysql|DBD::mysql>
!
! L<DBI|DBI>
=head1 COPYRIGHT
Index: Pg.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/DBI/Pg.pm,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** Pg.pm 2001/08/22 10:51:45 1.10
--- Pg.pm 2001/10/11 13:09:26 1.11
***************
*** 149,153 ****
=head1 SEE ALSO
! L<SPOPS::Key::DBI::Sequence>, L<DBD::Pg>, L<DBI>
=head1 COPYRIGHT
--- 149,157 ----
=head1 SEE ALSO
! L<SPOPS::Key::DBI::Sequence|SPOPS::Key::DBI::Sequence>
!
! L<DBD::Pg|DBD::Pg>
!
! L<DBI|DBI>
=head1 COPYRIGHT
Index: Sybase.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/DBI/Sybase.pm,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** Sybase.pm 2001/08/22 10:51:45 1.8
--- Sybase.pm 2001/10/11 13:09:26 1.9
***************
*** 89,94 ****
=head1 SEE ALSO
! L<SPOPS::Key::DBI::Identity>, L<DBD::Sybase>, L<DBI>
=head1 COPYRIGHT
--- 89,98 ----
=head1 SEE ALSO
! L<SPOPS::Key::DBI::Identity|SPOPS::Key::DBI::Identity>
!
! L<DBD::Sybase|DBD::Sybase>
+ L<DBI|DBI>
+
=head1 COPYRIGHT
***************
*** 102,106 ****
Chris Winters <ch...@cw...>
! See the L<SPOPS> module for the full author list.
=cut
--- 106,110 ----
Chris Winters <ch...@cw...>
! See the L<SPOPS|SPOPS> module for the full author list.
=cut
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:09:29
|
Update of /cvsroot/openinteract/SPOPS/SPOPS/Key/DBI In directory usw-pr-cvs1:/tmp/cvs-serv8815/SPOPS/Key/DBI Modified Files: HandleField.pm Identity.pm Pool.pm Sequence.pm Log Message: lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...) Index: HandleField.pm =================================================================== RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Key/DBI/HandleField.pm,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** HandleField.pm 2001/09/26 01:04:42 1.11 --- HandleField.pm 2001/10/11 13:09:26 1.12 *************** *** 119,123 **** =head1 SEE ALSO ! L<DBD::mysql>, L<DBI> =head1 COPYRIGHT --- 119,125 ---- =head1 SEE ALSO ! L<DBD::mysql|DBD::mysql> ! ! L<DBI|DBI> =head1 COPYRIGHT Index: Identity.pm =================================================================== RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Key/DBI/Identity.pm,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Identity.pm 2001/09/26 01:04:55 1.11 --- Identity.pm 2001/10/11 13:09:26 1.12 *************** *** 91,95 **** =head1 SEE ALSO ! L<DBD::Sybase>, L<DBI> =head1 COPYRIGHT --- 91,97 ---- =head1 SEE ALSO ! L<DBD::Sybase|DBD::Sybase> ! ! L<DBI|DBI> =head1 COPYRIGHT *************** *** 104,108 **** Chris Winters <ch...@cw...> ! See the L<SPOPS> module for the full author list. =cut --- 106,110 ---- Chris Winters <ch...@cw...> ! See the L<SPOPS|SPOPS> module for the full author list. =cut Index: Pool.pm =================================================================== RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Key/DBI/Pool.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** Pool.pm 2001/09/26 01:04:55 1.10 --- Pool.pm 2001/10/11 13:09:26 1.11 *************** *** 106,113 **** This module retrieves a value from a pool of key values matched up to tables. It is not as fast as IDENTITY fields ! (L<SPOPS::Key::DBI::Identity>, auto_incrementing values or sequences, ! but can be portable among databases and, most importantly, works in a ! replicated environment. It also has the benefit of being fairly simple ! to understand. Currently, the key fetching procedure is implemented via a --- 106,113 ---- This module retrieves a value from a pool of key values matched up to tables. It is not as fast as IDENTITY fields ! (L<SPOPS::Key::DBI::Identity|SPOPS::Key::DBI::Identity>, ! auto_incrementing values or sequences, but can be portable among ! databases and, most importantly, works in a replicated environment. It ! also has the benefit of being fairly simple to understand. Currently, the key fetching procedure is implemented via a Index: Sequence.pm =================================================================== RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Key/DBI/Sequence.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** Sequence.pm 2001/09/26 01:04:55 1.10 --- Sequence.pm 2001/10/11 13:09:26 1.11 *************** *** 112,116 **** If you need to change this for your database, it should be in a form ! accessible by L<sprintf> so we can plugin the sequence name. For instance: --- 112,116 ---- If you need to change this for your database, it should be in a form ! accessible by C<sprintf> so we can plugin the sequence name. For instance: *************** *** 149,153 **** =head1 SEE ALSO ! L<DBI>, PostgreSQL and Oracle databases, both of which have sequences. =head1 COPYRIGHT --- 149,153 ---- =head1 SEE ALSO ! L<DBI|DBI>, PostgreSQL and Oracle databases, both of which have sequences. =head1 COPYRIGHT |
Update of /cvsroot/openinteract/SPOPS/SPOPS
In directory usw-pr-cvs1:/tmp/cvs-serv8815/SPOPS
Modified Files:
DBI.pm GDBM.pm HashFile.pm Initialize.pm Iterator.pm
SQLInterface.pm Tie.pm Utility.pm
Log Message:
lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...)
Index: DBI.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/DBI.pm,v
retrieving revision 1.49
retrieving revision 1.50
diff -C2 -d -r1.49 -r1.50
*** DBI.pm 2001/10/07 14:39:57 1.49
--- DBI.pm 2001/10/11 13:09:26 1.50
***************
*** 856,860 ****
As you can see, all the methods are optional. Along with
! L<SPOPS::ClassFactory>, you can create an entirely virtual class
consisting only of configuration information. So you can actually
create the implementation for a new object in two steps:
--- 856,860 ----
As you can see, all the methods are optional. Along with
! L<SPOPS::ClassFactory|SPOPS::ClassFactory>, you can create an entirely virtual class
consisting only of configuration information. So you can actually
create the implementation for a new object in two steps:
***************
*** 1155,1159 ****
Uses the same parameters as C<fetch_group()> but instead of returning
an arrayref with all the objects, it returns an
! L<SPOPS::Iterator::DBI> object. You can use this object to step
through the objects one at a time, which can be an enormous resource
savings if you are retrieving large groups of objects.
--- 1155,1159 ----
Uses the same parameters as C<fetch_group()> but instead of returning
an arrayref with all the objects, it returns an
! L<SPOPS::Iterator::DBI|SPOPS::Iterator::DBI> object. You can use this object to step
through the objects one at a time, which can be an enormous resource
savings if you are retrieving large groups of objects.
***************
*** 1230,1234 ****
to tell SPOPS to treat the request as a creation rather than an update.
! One other thing to note if you are using L<SPOPS::Secure> for
security: SPOPS assumes that your application determines whether a
user can create an object. That is, all requests to create an object
--- 1230,1234 ----
to tell SPOPS to treat the request as a creation rather than an update.
! One other thing to note if you are using L<SPOPS::Secure|SPOPS::Secure> for
security: SPOPS assumes that your application determines whether a
user can create an object. That is, all requests to create an object
***************
*** 1288,1292 ****
This class supports lazy loading, available in SPOPS 0.40 and
later. All you need to do is define one or more 'column_group' entries
! in the configuration of your object and L<SPOPS> will do the rest.
If you are interested: the method C<perform_lazy_load()> does the
--- 1288,1292 ----
This class supports lazy loading, available in SPOPS 0.40 and
later. All you need to do is define one or more 'column_group' entries
! in the configuration of your object and L<SPOPS|SPOPS> will do the rest.
If you are interested: the method C<perform_lazy_load()> does the
***************
*** 1302,1306 ****
Like all SPOPS classes, any errors encountered will be tossed up to
the application using a die() and a simple string as a message. We
! also set more detailed information in a number of L<SPOPS::Error>
package variables; see that module for more details.
--- 1302,1306 ----
Like all SPOPS classes, any errors encountered will be tossed up to
the application using a die() and a simple string as a message. We
! also set more detailed information in a number of L<SPOPS::Error|SPOPS::Error>
package variables; see that module for more details.
***************
*** 1330,1334 ****
Chris Winters <ch...@cw...>
! See the L<SPOPS> module for the full author list.
=cut
--- 1330,1334 ----
Chris Winters <ch...@cw...>
! See the L<SPOPS|SPOPS> module for the full author list.
=cut
Index: GDBM.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/GDBM.pm,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** GDBM.pm 2001/08/22 10:51:45 1.11
--- GDBM.pm 2001/10/11 13:09:26 1.12
***************
*** 44,48 ****
my ( $self, $p ) = @_;
return unless ( ref $p and scalar keys %{ $p } );
!
# Set the GDBM filename if it was passed
--- 44,48 ----
my ( $self, $p ) = @_;
return unless ( ref $p and scalar keys %{ $p } );
!
# Set the GDBM filename if it was passed
***************
*** 75,79 ****
my ( $item, $p ) = @_;
return $p->{db} if ( ref $p->{db} );
!
my $gdbm_filename = $p->{filename};
unless ( $gdbm_filename ) {
--- 75,79 ----
my ( $item, $p ) = @_;
return $p->{db} if ( ref $p->{db} );
!
my $gdbm_filename = $p->{filename};
unless ( $gdbm_filename ) {
***************
*** 138,143 ****
my $data = undef;
{
! no strict 'vars';
! $data = eval $item_info;
}
die "Cannot rebuild object! Error: $@" if ( $@ );
--- 138,143 ----
my $data = undef;
{
! no strict 'vars';
! $data = eval $item_info;
}
die "Cannot rebuild object! Error: $@" if ( $@ );
***************
*** 175,179 ****
foreach my $key ( @object_keys ) {
my $data = eval { $class->_return_structure_for_key( $key, { db => $db } ) };
! next unless ( $data );
push @objects, $class->fetch( undef, { data => $data } );
}
--- 175,179 ----
foreach my $key ( @object_keys ) {
my $data = eval { $class->_return_structure_for_key( $key, { db => $db } ) };
! next unless ( $data );
push @objects, $class->fetch( undef, { data => $data } );
}
***************
*** 400,408 ****
GDBM software:
! http://www.fsf.org/gnulist/production/gdbm.html
! GDBM on Perl/Win32:
! http://www.roth.net/perl/GDBM/
=head1 COPYRIGHT
--- 400,408 ----
GDBM software:
! http://www.fsf.org/gnulist/production/gdbm.html
! GDBM on Perl/Win32:
! http://www.roth.net/perl/GDBM/
=head1 COPYRIGHT
***************
*** 417,421 ****
Chris Winters <ch...@cw...>
! See the L<SPOPS> module for the full author/helper list.
=cut
--- 417,421 ----
Chris Winters <ch...@cw...>
! See the L<SPOPS|SPOPS> module for the full author/helper list.
=cut
Index: HashFile.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/HashFile.pm,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** HashFile.pm 2001/08/22 10:51:45 1.9
--- HashFile.pm 2001/10/11 13:09:26 1.10
***************
*** 58,62 ****
}
if ( -f $obj->{filename} ) {
! rename( $obj->{filename}, "$obj->{filename}.old" )
|| die "Cannot rename old file to make room for new one. Error: $!";
}
--- 58,62 ----
}
if ( -f $obj->{filename} ) {
! rename( $obj->{filename}, "$obj->{filename}.old" )
|| die "Cannot rename old file to make room for new one. Error: $!";
}
***************
*** 65,72 ****
$p->{dumper_level} ||= 2;
local $Data::Dumper::Indent = $p->{dumper_level};
! my $string = Data::Dumper->Dump( [ \%data ], [ 'data' ] );
eval { open( INFO, "> $obj->{filename}" ) || die $! };
if ( $@ ) {
! rename( "$obj->{filename}.old", $obj->{filename} )
|| die "Cannot open file for writing (reason: $@ ) and ",
"cannot move backup file to original place. Reason: $!";
--- 65,72 ----
$p->{dumper_level} ||= 2;
local $Data::Dumper::Indent = $p->{dumper_level};
! my $string = Data::Dumper->Dump( [ \%data ], [ 'data' ] );
eval { open( INFO, "> $obj->{filename}" ) || die $! };
if ( $@ ) {
! rename( "$obj->{filename}.old", $obj->{filename} )
|| die "Cannot open file for writing (reason: $@ ) and ",
"cannot move backup file to original place. Reason: $!";
***************
*** 76,80 ****
close( INFO );
if ( -f "$obj->{filename}.old" ) {
! unlink( "$obj->{filename}.old" )
|| warn "Cannot remove the old data file. It still lingers in $obj->{filename}.old....\n";
}
--- 76,80 ----
close( INFO );
if ( -f "$obj->{filename}.old" ) {
! unlink( "$obj->{filename}.old" )
|| warn "Cannot remove the old data file. It still lingers in $obj->{filename}.old....\n";
}
***************
*** 106,110 ****
my ( $self, $p ) = @_;
$p->{filename} ||= tied %{ $self }->{filename};
! my $new = $self->new( { filename => $p->{filename}, perm => $p->{perm} } );
while ( my ( $k, $v ) = each %{ $self } ) {
$new->{ $k } = $p->{ $k } || $v;
--- 106,110 ----
my ( $self, $p ) = @_;
$p->{filename} ||= tied %{ $self }->{filename};
! my $new = $self->new( { filename => $p->{filename}, perm => $p->{perm} } );
while ( my ( $k, $v ) = each %{ $self } ) {
$new->{ $k } = $p->{ $k } || $v;
***************
*** 148,153 ****
}
}
! if ( $perm eq 'write-new' ) { $perm = 'write' }
!
my $data = undef;
if ( $file_exists ) {
--- 148,153 ----
}
}
! $perm = 'write' if ( $perm eq 'write-new' );
!
my $data = undef;
if ( $file_exists ) {
***************
*** 160,164 ****
# messages that might be sent to STDERR; we want to capture the
# message and send it along in a 'die' instead
!
{
local $SIG{__WARN__} = sub { return undef };
--- 160,164 ----
# messages that might be sent to STDERR; we want to capture the
# message and send it along in a 'die' instead
!
{
local $SIG{__WARN__} = sub { return undef };
***************
*** 178,206 ****
! sub FETCH {
my ( $self, $key ) = @_;
return undef unless $key;
! return $self->{data}->{ $key };
}
! sub STORE {
! my ( $self, $key, $value ) = @_;
! return undef unless $key;
! return $self->{data}->{ $key } = $value;
}
sub EXISTS {
! my ( $self, $key ) = @_;
! return undef unless $key;
! return exists $self->{data}->{ $key };
}
! sub DELETE {
! my ( $self, $key ) = @_;
! return undef unless $key;
! return delete $self->{data}->{ $key };
}
--- 178,206 ----
! sub FETCH {
my ( $self, $key ) = @_;
return undef unless $key;
! return $self->{data}->{ $key };
}
! sub STORE {
! my ( $self, $key, $value ) = @_;
! return undef unless $key;
! return $self->{data}->{ $key } = $value;
}
sub EXISTS {
! my ( $self, $key ) = @_;
! return undef unless $key;
! return exists $self->{data}->{ $key };
}
! sub DELETE {
! my ( $self, $key ) = @_;
! return undef unless $key;
! return delete $self->{data}->{ $key };
}
***************
*** 214,218 ****
die "Cannot remove $self->{filename}; permission set to read-only.\n";
}
! unlink( $self->{filename} )
|| die "Cannot remove file $self->{filename}. Reason: $!";
$self->{data} = undef;
--- 214,218 ----
die "Cannot remove $self->{filename}; permission set to read-only.\n";
}
! unlink( $self->{filename} )
|| die "Cannot remove file $self->{filename}. Reason: $!";
$self->{data} = undef;
***************
*** 309,313 ****
the object.
! B<clone( { filename =E<gt> $, [ perm =E<gt> $ ] } )>
Create a new object from the old, but you can change the filename and
--- 309,313 ----
the object.
! B<clone( { filename =E<gt> $, [ perm =E<gt> $ ] } )>
Create a new object from the old, but you can change the filename and
***************
*** 337,341 ****
merry way.
! However, since we recently changed L<SPOPS::Tie> to make
field-checking optional we might be able to use it.
--- 337,341 ----
merry way.
! However, since we recently changed L<SPOPS::Tie|SPOPS::Tie> to make
field-checking optional we might be able to use it.
***************
*** 344,348 ****
=head1 SEE ALSO
! L<SPOPS>, L<Data::Dumper>
=head1 COPYRIGHT
--- 344,350 ----
=head1 SEE ALSO
! L<SPOPS|SPOPS>
!
! L<Data::Dumper|Data::Dumper>
=head1 COPYRIGHT
Index: Initialize.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Initialize.pm,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** Initialize.pm 2001/08/22 11:10:04 1.11
--- Initialize.pm 2001/10/11 13:09:26 1.12
***************
*** 209,213 ****
=item 3.
! Build the SPOPS class, using L<SPOPS::ClassFactory>.
=item 4.
--- 209,213 ----
=item 3.
! Build the SPOPS class, using L<SPOPS::ClassFactory|SPOPS::ClassFactory>.
=item 4.
***************
*** 303,307 ****
=head1 SEE ALSO
! L<SPOPS::ClassFactory>
=head1 COPYRIGHT
--- 303,307 ----
=head1 SEE ALSO
! L<SPOPS::ClassFactory|SPOPS::ClassFactory>
=head1 COPYRIGHT
Index: Iterator.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Iterator.pm,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** Iterator.pm 2001/09/20 20:14:53 1.10
--- Iterator.pm 2001/10/11 13:09:26 1.11
***************
*** 490,505 ****
Subclasses generally need to maintain the position themselves, which
! can be irritating.
B<Relationship calls return iterators>
Relationship calls (for relationships created by
! L<SPOPS::ClassFactory> and/or one of its utilized behaviors) should be
! modified to optionally return an C<SPOPS::Iterator> object. So you
! could do:
my $iter = $user->group({ iterator => 1 });
while ( my $group = $iter->get_next ) {
! print "User is in group: $group->{name}\n";
}
--- 490,505 ----
Subclasses generally need to maintain the position themselves, which
! can be irritating.
B<Relationship calls return iterators>
Relationship calls (for relationships created by
! L<SPOPS::ClassFactory|SPOPS::ClassFactory> and/or one of its utilized
! behaviors) should be modified to optionally return an
! C<SPOPS::Iterator> object. So you could do:
my $iter = $user->group({ iterator => 1 });
while ( my $group = $iter->get_next ) {
! print "User is in group: $group->{name}\n";
}
***************
*** 511,517 ****
=head1 SEE ALSO
! L<SPOPS>
! L<Template::Iterator>
Talks and papers by Mark-Jason Dominus on infinite lists and
--- 511,517 ----
=head1 SEE ALSO
! L<SPOPS|SPOPS>
! L<Template::Iterator|Template::Iterator>
Talks and papers by Mark-Jason Dominus on infinite lists and
Index: SQLInterface.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/SQLInterface.pm,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** SQLInterface.pm 2001/10/04 13:13:52 1.23
--- SQLInterface.pm 2001/10/11 13:09:26 1.24
***************
*** 760,764 ****
in. Return value is true is insert was successful -- the exact value
is whatever is returned from the C<execute()> statement handle
! call from your database. (See L<DBI> and your driver docs.)
Parameters:
--- 760,764 ----
in. Return value is true is insert was successful -- the exact value
is whatever is returned from the C<execute()> statement handle
! call from your database. (See L<DBI|DBI> and your driver docs.)
Parameters:
***************
*** 832,841 ****
is whatever is returned from the C<execute()> statement handle call
from your database, which many times is the number of rows affected by
! the update. (See L<DBI> and your driver docs -- in particular, note
! that the return value from an UPDATE can vary depending on the
database being used as well as the number of records B<actually>
updated versus those that matched the criteria but were not updated
because they already matched the value(s). In particular, see the
! discussion in L<DBD::mysql> under 'mysql_client_found_rows'.)
Parameters:
--- 832,842 ----
is whatever is returned from the C<execute()> statement handle call
from your database, which many times is the number of rows affected by
! the update. (See L<DBI|DBI> and your driver docs -- in particular,
! note that the return value from an UPDATE can vary depending on the
database being used as well as the number of records B<actually>
updated versus those that matched the criteria but were not updated
because they already matched the value(s). In particular, see the
! discussion in L<DBD::mysql|DBD::mysql> under
! 'mysql_client_found_rows'.)
Parameters:
***************
*** 894,898 ****
value is true is delete was successful -- the exact value is whatever
is returned from the C<execute()> statement handle call from your
! database. (See L<DBI>)
Parameters:
--- 895,899 ----
value is true is delete was successful -- the exact value is whatever
is returned from the C<execute()> statement handle call from your
! database. (See L<DBI|DBI>)
Parameters:
***************
*** 962,967 ****
package lexical that all routines here can access.
! If a DBD driver does not support the {TYPE} attribute of the statement
! handle, you have to specify some simple types in your class
configuration or provide them somehow. This is still slightly tied to
SPOPS implementations in OpenInteract, but only slightly.
--- 963,968 ----
package lexical that all routines here can access.
! If a DBD driver does not support the C<{TYPE}> attribute of the
! statement handle, you have to specify some simple types in your class
configuration or provide them somehow. This is still slightly tied to
SPOPS implementations in OpenInteract, but only slightly.
***************
*** 1030,1035 ****
Like other classes in SPOPS, all errors encountered will result in the
! error information saved in L<SPOPS::Error> and a die() being
! thrown. (More later.)
=head1 TO DO
--- 1031,1036 ----
Like other classes in SPOPS, all errors encountered will result in the
! error information saved in L<SPOPS::Error|SPOPS::Error> and a die()
! being thrown. (More later.)
=head1 TO DO
***************
*** 1052,1056 ****
=head1 SEE ALSO
! L<DBI>
=head1 COPYRIGHT
--- 1053,1057 ----
=head1 SEE ALSO
! L<DBI|DBI>
=head1 COPYRIGHT
***************
*** 1065,1069 ****
Chris Winters <ch...@cw...>
! See the L<SPOPS> module for the full author list.
=cut
--- 1066,1070 ----
Chris Winters <ch...@cw...>
! See the L<SPOPS|SPOPS> module for the full author list.
=cut
Index: Tie.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Tie.pm,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** Tie.pm 2001/08/22 10:51:45 1.16
--- Tie.pm 2001/10/11 13:09:26 1.17
***************
*** 333,337 ****
Note that this state is automatically tracked based on whether you set
any property of the object, so you should never need to do this. See
! L<SPOPS> for more information about the I<changed> methods.
=head2 Tracking Temporary Variables
--- 333,337 ----
Note that this state is automatically tracked based on whether you set
any property of the object, so you should never need to do this. See
! L<SPOPS|SPOPS> for more information about the I<changed> methods.
=head2 Tracking Temporary Variables
***************
*** 383,389 ****
information for display rather than internal use.
! For example, the L<SPOPS::DBI> module could allow you to create
! validating subroutines to ensure that your data conform to some sort
! of specification:
push @{ $obj->{_internal_validate} }, \&ensure_consistent_date;
--- 383,389 ----
information for display rather than internal use.
! For example, the L<SPOPS::DBI|SPOPS::DBI> module could allow you to
! create validating subroutines to ensure that your data conform to some
! sort of specification:
push @{ $obj->{_internal_validate} }, \&ensure_consistent_date;
***************
*** 410,415 ****
classification => 'CLSF' } };
! (See the L<SPOPS> documentation for how to declare this in your SPOPS
! configuration.)
So your web designers can use the objects:
--- 410,415 ----
classification => 'CLSF' } };
! (See the L<SPOPS|SPOPS> documentation for how to declare this in your
! SPOPS configuration.)
So your web designers can use the objects:
***************
*** 419,423 ****
But the data are actually stored in the object (and retrieved by an
! L<each> query on the object -- be careful) using the old, ugly names
'AUTH', 'TTL', 'PNUM' and 'CLSF'.
--- 419,423 ----
But the data are actually stored in the object (and retrieved by an
! C<each> query on the object -- be careful) using the old, ugly names
'AUTH', 'TTL', 'PNUM' and 'CLSF'.
***************
*** 559,564 ****
=head1 METHODS
! See L<Tie::Hash> or L<perltie> for details of what the different
! methods do.
=head1 TO DO
--- 559,564 ----
=head1 METHODS
! See L<Tie::Hash|Tie::Hash> or L<perltie> for details of what the
! different methods do.
=head1 TO DO
***************
*** 574,578 ****
=head1 SEE ALSO
! L<perltie>
=head1 COPYRIGHT
--- 574,578 ----
=head1 SEE ALSO
! L<perltie|perltie>
=head1 COPYRIGHT
Index: Utility.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Utility.pm,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** Utility.pm 2001/09/06 18:12:23 1.10
--- Utility.pm 2001/10/11 13:09:26 1.11
***************
*** 70,74 ****
sub now_between_dates {
my ( $class, $p ) = @_;
! return undef unless ( $p->{begin} or $p->{end} );
my @now = Date::Calc::Today();
my ( $begin_days, $end_days ) = undef;
--- 70,74 ----
sub now_between_dates {
my ( $class, $p ) = @_;
! return undef unless ( $p->{begin} or $p->{end} );
my @now = Date::Calc::Today();
my ( $begin_days, $end_days ) = undef;
***************
*** 199,205 ****
Return the current time, formatted: yyyy-mm-dd hh:mm:ss. Since we use
! the L<Date::Format> module (which in turn uses standard strftime
! formatting strings), you can pass in a format for the date/time to fit
! your needs.
Parameters:
--- 199,205 ----
Return the current time, formatted: yyyy-mm-dd hh:mm:ss. Since we use
! the L<Date::Format|Date::Format> module (which in turn uses standard
! strftime formatting strings), you can pass in a format for the
! date/time to fit your needs.
Parameters:
***************
*** 233,237 ****
Examples:
!
# Today is '2000-10-31' in all examples
--- 233,237 ----
Examples:
!
# Today is '2000-10-31' in all examples
***************
*** 271,275 ****
Chris Winters <ch...@cw...>
! See the L<SPOPS> module for the full author list.
=cut
--- 271,275 ----
Chris Winters <ch...@cw...>
! See the L<SPOPS|SPOPS> module for the full author list.
=cut
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:09:29
|
Update of /cvsroot/openinteract/SPOPS/SPOPS/Iterator
In directory usw-pr-cvs1:/tmp/cvs-serv8815/SPOPS/Iterator
Modified Files:
DBI.pm LDAP.pm WrapList.pm
Log Message:
lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...)
Index: DBI.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Iterator/DBI.pm,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** DBI.pm 2001/09/26 01:17:35 1.6
--- DBI.pm 2001/10/11 13:09:26 1.7
***************
*** 41,45 ****
DEBUG() && _w( 1, "Trying to retrieve idx ($self->{_DBI_RAW_COUNT}) with ",
"ID ($id) from class ($self->{_CLASS}" );
! $obj = eval { $object_class->fetch( $id,
{ skip_security => $self->{_SKIP_SECURITY} } ) };
--- 41,45 ----
DEBUG() && _w( 1, "Trying to retrieve idx ($self->{_DBI_RAW_COUNT}) with ",
"ID ($id) from class ($self->{_CLASS}" );
! $obj = eval { $object_class->fetch( $id,
{ skip_security => $self->{_SKIP_SECURITY} } ) };
***************
*** 181,185 ****
=head1 SEE ALSO
! L<SPOPS::Iterator>, L<SPOPS::DBI>
=head1 COPYRIGHT
--- 181,187 ----
=head1 SEE ALSO
! L<SPOPS::Iterator|SPOPS::Iterator>
!
! L<SPOPS::DBI|SPOPS::DBI>
=head1 COPYRIGHT
Index: LDAP.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Iterator/LDAP.pm,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** LDAP.pm 2001/09/26 01:17:35 1.5
--- LDAP.pm 2001/10/11 13:09:26 1.6
***************
*** 172,177 ****
B<initialize()>
! Store the L<Net::LDAP::Message> object so we can peel off one record
! at a time, along with the various other pieces of information.
B<fetch_object()>
--- 172,178 ----
B<initialize()>
! Store the L<Net::LDAP::Message|Net::LDAP::Message> object so we can
! peel off one record at a time, along with the various other pieces of
! information.
B<fetch_object()>
***************
*** 186,194 ****
=head1 SEE ALSO
! L<SPOPS::Iterator>
! L<SPOPS::LDAP>
! L<Net::LDAP>
=head1 COPYRIGHT
--- 187,195 ----
=head1 SEE ALSO
! L<SPOPS::Iterator|SPOPS::Iterator>
! L<SPOPS::LDAP|SPOPS::LDAP>
! L<Net::LDAP|Net::LDAP>
=head1 COPYRIGHT
Index: WrapList.pm
===================================================================
RCS file: /cvsroot/openinteract/SPOPS/SPOPS/Iterator/WrapList.pm,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** WrapList.pm 2001/09/26 20:56:27 1.3
--- WrapList.pm 2001/10/11 13:09:26 1.4
***************
*** 79,87 ****
=head1 DESCRIPTION
! This is an implementation of the C<SPOPS::Iterator> interface so that
! we can use a common interface no matter whether an SPOPS
! implementation supports iterators or not. You can also ensure that
! display or other classes can be coded to only one interface since it
! is so simple to wrap a list in an iterator.
=head1 METHODS
--- 79,87 ----
=head1 DESCRIPTION
! This is an implementation of the L<SPOPS::Iterator|SPOPS::Iterator>
! interface so that we can use a common interface no matter whether an
! SPOPS implementation supports iterators or not. You can also ensure
! that display or other classes can be coded to only one interface since
! it is so simple to wrap a list in an iterator.
=head1 METHODS
***************
*** 95,99 ****
=head1 SEE ALSO
! L<SPOPS::Iterator>, L<SPOPS::DBI>
=head1 COPYRIGHT
--- 95,101 ----
=head1 SEE ALSO
! L<SPOPS::Iterator|SPOPS::Iterator>
!
! L<SPOPS::DBI|SPOPS::DBI>
=head1 COPYRIGHT
|
|
From: Chris W. <la...@us...> - 2001-10-11 13:09:29
|
Update of /cvsroot/openinteract/SPOPS In directory usw-pr-cvs1:/tmp/cvs-serv8815 Modified Files: SPOPS.pm Log Message: lots of cosmetic changes (extra spaces, moving L<blah> to L<blah|blah> format, ...) Index: SPOPS.pm =================================================================== RCS file: /cvsroot/openinteract/SPOPS/SPOPS.pm,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** SPOPS.pm 2001/10/02 22:01:30 1.48 --- SPOPS.pm 2001/10/11 13:09:26 1.49 *************** *** 734,740 **** The individual objects or the classes should not care how the objects ! are being stored, they should just know that when they call I<fetch()> with a unique ID that the object magically appears. Similarly, all the ! object should know is that it calls I<save()> on itself and can reappear at any later date with the proper invocation. --- 734,740 ---- The individual objects or the classes should not care how the objects ! are being stored, they should just know that when they call C<fetch()> with a unique ID that the object magically appears. Similarly, all the ! object should know is that it calls C<save()> on itself and can reappear at any later date with the proper invocation. *************** *** 778,782 **** This method creates a new SPOPS object. If you pass it key/value pairs the object will initialize itself with the data (see ! I<initialize()> for notes on this). Note that you can use the key 'id' to substitute for the actual --- 778,782 ---- This method creates a new SPOPS object. If you pass it key/value pairs the object will initialize itself with the data (see ! C<initialize()> for notes on this). Note that you can use the key 'id' to substitute for the actual *************** *** 1256,1260 **** And be sure to include this class in your 'code_class' configuration ! key. (See L<SPOPS::Configure|SPOPS::Configure> for more info.) B<as_string> --- 1256,1262 ---- And be sure to include this class in your 'code_class' configuration ! key. (See L<SPOPS::ClassFactory|SPOPS::ClassFactory> and ! L<SPOPS::Manual::CodeGeneration|SPOPS::Manual::CodeGeneration> for ! more info.) B<as_string> *************** *** 1325,1329 **** =head2 Configuration ! Most of this information can be accessed through the I<CONFIG> hashref, but we also need to create some hooks for subclasses to override if they wish. For instance, language-specific objects may --- 1327,1331 ---- =head2 Configuration ! Most of this information can be accessed through the C<CONFIG> hashref, but we also need to create some hooks for subclasses to override if they wish. For instance, language-specific objects may *************** *** 1404,1417 **** =head1 NOTES ! There is an issue using these modules with I<Apache::StatINC> along ! with the startup methodology that calls the I<class_initialize> method ! of each class when a httpd child is first initialized. If you modify a ! module without stopping the webserver, the configuration variable in ! the class will not be initialized and you will inevitably get errors. We might be able to get around this by having most of the configuration information as static class lexicals. But anything that depends on any information from the CONFIG variable in request (which ! is generally passed into the I<class_initialize> call for each SPOPS implementation) will get hosed. --- 1406,1420 ---- =head1 NOTES ! There is an issue using these modules with ! L<Apache::StatINC|Apache::StatINC> along with the startup methodology ! that calls the C<class_initialize> method of each class when a httpd ! child is first initialized. If you modify a module without stopping ! the webserver, the configuration variable in the class will not be ! initialized and you will inevitably get errors. We might be able to get around this by having most of the configuration information as static class lexicals. But anything that depends on any information from the CONFIG variable in request (which ! is generally passed into the C<class_initialize> call for each SPOPS implementation) will get hosed. |
|
From: Chris W. <la...@us...> - 2001-10-11 11:41:17
|
Update of /cvsroot/openinteract/OpenInteract
In directory usw-pr-cvs1:/tmp/cvs-serv13653
Modified Files:
Changes
Log Message:
yet another change for OI::Package
Index: Changes
===================================================================
RCS file: /cvsroot/openinteract/OpenInteract/Changes,v
retrieving revision 1.66
retrieving revision 1.67
diff -C2 -d -r1.66 -r1.67
*** Changes 2001/10/11 03:57:22 1.66
--- Changes 2001/10/11 11:41:14 1.67
***************
*** 168,171 ****
--- 168,173 ----
higher on the TODO list...)
+ - Files copied during package-to-website should not be read-only
+
* OpenInteract/SQLInstall.pm:
|