You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(35) |
Nov
(38) |
Dec
(112) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(20) |
Feb
(24) |
Mar
(47) |
Apr
(18) |
May
(28) |
Jun
(17) |
Jul
(15) |
Aug
(40) |
Sep
(14) |
Oct
(5) |
Nov
(26) |
Dec
(31) |
| 2003 |
Jan
(8) |
Feb
(14) |
Mar
(38) |
Apr
(34) |
May
(33) |
Jun
(32) |
Jul
(24) |
Aug
(9) |
Sep
|
Oct
(20) |
Nov
(43) |
Dec
(22) |
| 2004 |
Jan
(23) |
Feb
(25) |
Mar
(15) |
Apr
(3) |
May
(31) |
Jun
(13) |
Jul
(3) |
Aug
(3) |
Sep
(13) |
Oct
(15) |
Nov
(3) |
Dec
(5) |
| 2005 |
Jan
|
Feb
|
Mar
(16) |
Apr
(24) |
May
|
Jun
(2) |
Jul
|
Aug
(5) |
Sep
(4) |
Oct
|
Nov
(3) |
Dec
(2) |
| 2006 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Chris W. <ch...@cw...> - 2001-11-05 05:25:56
|
* Stefano di Sandro (st...@an...) [011104 11:21]:
>
> Hello everybody,
> in server.perl file I read following words:
>
> # Define login information. In the future you'll be able to define
> # the object(s) used for logging in and possibly more.
>
> do they mean that I'll be able to define a custom users table,
> so that also new account creations will effect different fields
> than actual ones?
To be honest, I'm not sure what I meant by that :-)
> Performing addictional control on extern data is now suitable
> with 'custom_login_handler', but what about new account set up?
Interesting idea....
> Another case study...
>
> I'd like to put *two* login forms, one for persistent registered
> users (those who have an area to target the services I offer), and
> another for those people who can access a special on-the-fly service
> which require authentication _every_time_ he/she wants to use that
> because he/she is not (and he/she can't be) a registered user.
Makes sense.
> The former is what OI offers nowadays and (if I'm not wrong) it
> should be improved providing a fully customizable data source and
> login/create as the words say in server.perl comment.
Hm. Well, you should be able to hack this together yourself. It seems
like you should be able to do something like:
- Create a new user object. This will have additional properties like
expiration time and be kept in an entirely separate table. I'd
recommend you either keep the property names the same (login_name,
user_id) or use the 'field_map' ability of SPOPS to make the objects
*look* the same
- Subclass OpenInteract::Auth and override the 'user()' method. In
this you should check not only the normal login and password fields
but also these 'temporary' login and password fields. The normal
login/password can create a normal user, but the temporary fields
will check the special user table.
- In the overridden 'OpenInteract::Auth->user()' method, set
$R->{auth}{user} to the special user object. Then throughout the
request OpenInteract will user it just as a normal user object for
security and other purposes.
- Finally, in your website you'd need to modify the 'system_aliases'
so that 'auth' points to your class versus OpenInteract::Auth.
Hope all that makes sense.
This is an interesting idea. I'll probably modify OpenInteract::Auth
to facilitate more fine-grained method overriding.
Also, just to put it out there: I'm also working with another web
application server author (see http://www.openthought.net/) to make
common services like authentication into a separate service which
allows plugins and can be used in different app servers. We'll see how
it goes :-)
Chris
--
Chris Winters (ch...@cw...)
Building enterprise-capable snack solutions since 1988.
|
|
From: Chris W. <ch...@cw...> - 2001-11-05 05:13:01
|
* Terrence Brannon (bl...@sv...) [011104 16:07]: > In his quest for a spot in the Guiness Book of World Records for most > annoying posts to the same mailing list in one day, Terrence Brannon > returneth with: > > "in most applications it will be desirable to have strict fields enabled > right? > > I think it should be the default." I disagree. I think the default should be as permissive as possible so SPOPS doesn't stand in the way of quick-and-dirty uses. (I know people are shaking their heads that SPOPS can be used for anything quick and dirty, but believe me it can.) Since people who are interested in strict checking can turn it on extremely easily, it doesn't seem like much of a barrier to usage. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Chris W. <ch...@cw...> - 2001-11-05 05:11:06
|
* Terrence Brannon (bl...@sv...) [011104 15:30]: > SPOPS::Manual::Object does not state that multivalued fields are > emulated for databases... does it emulate them? Nope. Multivalued fields are relatively new and are only implemented in the LDAP datastore right now. > If not, what are we supposed to do when using CGI.pm and we get back > a param() which returns us an array ref? Good question. How do you deal with it now? > How can we store this transparently in a SPOPS object which goes to > a database storage technology? I haven't had to deal with it yet so it's not in there. It seems there are several different ways to handle this. For instance, if the list of items doesn't have any dependencies outside the object and/or table, you could create a pre-save action which serializes the values using Data::Dumper (or even just using 'join') and create a post-fetch action which unserializes them. Neat, simple and transparent. But usually the task at hand is more complicated. Future relationship modifications should make it possible to deal with this transparently when the objects are in different tables. So you could access a list of dependent objects as a property of the object rather than calling a method to fetch them. If you're interested in this, check a post from Ray Zimmerman in the openinteract-dev mailing list from June/July of this year. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Chris W. <ch...@cw...> - 2001-11-05 05:03:49
|
* Terrence Brannon (bl...@sv...) [011104 15:21]:
> 1: $spops = {
> 2: html_page => {
> 3: class => 'My::HTMLPage',
> 4: isa => [ qw/ SPOPS::DBI::Pg SPOPS::DBI / ],
> 5: field => [ qw/ page_id location title author content / ],
> 6: column_group => { listing => [ qw/ location title author / ] },
> 7: ...
> 8: },
> 9: };
>
> has storage-technology-dependant stuff in the app layer.
Which part are you referring to? The 'column_group' configuration
item, or the 'content' property?
> This is unacceptable. The storage technology is handled by the
> storage layer and this layer should be able to use the storage layer
> with no knowledge of that layer.
I'd say 'unacceptable' is a bit harsh. IMO, SPOPS shouldn't mandate
such concerns. If you want to separate these layers further, you're
welcome to do it and SPOPS won't stand in your way.
Chris
--
Chris Winters (ch...@cw...)
Building enterprise-capable snack solutions since 1988.
|
|
From: Chris W. <ch...@cw...> - 2001-11-05 05:00:49
|
* Terrence Brannon (bl...@sv...) [011104 15:11]: > So now I have made my way over to SPOPS::Manual::Object and just as I > expected, the elusive business object new() method pops up.. heheh. > > So, I am reading these docs and I come to the section on automatically > created accessors and I think: > > 1 - are these accessors subject to field filtering as the tied hashref > fields are? Yes. > 2 - why are they set-only? get-set is better isn't it? I found it too confusing with trying to set the field to a null, plus see the next item. > 3 - why is he making more than one way to do this? it seems to be > un-necessarily. almost as if he wants to show a living-breathing > implementation of every advanced technique from Conways > "Object-Oriented Perl" for some reason. :-) Umm... no. Actually, the accessor methods are secondary to getting and setting the object properties as a hashref. To me, this is more perlish and more easy to understand. Since AUTOLOAD made it so easy, I threw them in there as sugar. > I hope I don't seem overly critical. I am just giving feedback on what > was running through my mind when I read these docs. No problem. Feedback is good. Particularly since the manual isn't finished. > Also, I think the wording of the object change methods could be > better > > $obj->has_changed should be $obj->register_change > $obj->changed isn't bad but I would prefer $obj->has_changed for this That should be: $obj->is_changed (return true if changed, false otherwise) $obj->has_change (set the current state to 'changed') If the docs reflect otherwise, then they need to be modified. Unless I hear from other folks agreeing with you, I'll probably keep them as they are. If only because users will generally never use these. They're more for internal (and driver) use. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Chris W. <ch...@cw...> - 2001-11-05 04:54:13
|
* Terrence Brannon (bl...@sv...) [011104 14:51]: > I am reading the SPOPS docs with great interest as SPOPS seems to be > the closest thing to the business objects that were used in the > implementation of the eToys.com site. > > I liked the diagram showing show the different API actions of fetch, > remove, save move the object from runtime to persistent state. > > Although an update() operation is absent from this picture, it is not > absent from SPOPS because you can simply update a fetch'ed object and > the TIEHASH will take care of the rest. Not exactly: save() implies a 'create' operation with an unsaved object and an 'update' operation with a previously saved object. > What I did not see in these docs, but what I am sure is described > elsewhere, is how the new() operation for creating new row objects is > handled... The new() method creates a new instance of the object in memory, but it is not persisted until you call save() on it. > I think that would make a nice introduction to the Intro. What do you > guys think? Sure -- if this was confusing to you, then it's probably confusing to others. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Terrence B. <bl...@sv...> - 2001-11-04 20:59:40
|
In his quest for a spot in the Guiness Book of World Records for most annoying posts to the same mailing list in one day, Terrence Brannon returneth with: "in most applications it will be desirable to have strict fields enabled right? I think it should be the default." |
|
From: Terrence B. <bl...@sv...> - 2001-11-04 20:22:51
|
SPOPS::Manual::Object does not state that multivalued fields are emulated for databases... does it emulate them? If not, what are we supposed to do when using CGI.pm and we get back a param() which returns us an array ref? How can we store this transparently in a SPOPS object which goes to a database storage technology? |
|
From: Terrence B. <bl...@sv...> - 2001-11-04 20:13:54
|
Hello Everybody, it's me the Business Object Layer Policeman out with a
special bulletin. This code in SPOPS::Manual::Intro
1: $spops = {
2: html_page => {
3: class => 'My::HTMLPage',
4: isa => [ qw/ SPOPS::DBI::Pg SPOPS::DBI / ],
5: field => [ qw/ page_id location title author
content / ],
6: column_group => { listing => [ qw/ location title
author / ] },
7: ...
8: },
9: };
has storage-technology-dependant stuff in the app layer. This is
unacceptable. The storage technology is handled by the storage layer and
this layer should be able to use the storage layer with no knowledge of
that layer.
|
|
From: Terrence B. <bl...@sv...> - 2001-11-04 20:03:18
|
So now I have made my way over to SPOPS::Manual::Object and just as I expected, the elusive business object new() method pops up.. heheh. So, I am reading these docs and I come to the section on automatically created accessors and I think: 1 - are these accessors subject to field filtering as the tied hashref fields are? 2 - why are they set-only? get-set is better isn't it? 3 - why is he making more than one way to do this? it seems to be un-necessarily. almost as if he wants to show a living-breathing implementation of every advanced technique from Conways "Object-Oriented Perl" for some reason. :-) I hope I don't seem overly critical. I am just giving feedback on what was running through my mind when I read these docs. Also, I think the wording of the object change methods could be better $obj->has_changed should be $obj->register_change $obj->changed isn't bad but I would prefer $obj->has_changed for this |
|
From: Terrence B. <bl...@sv...> - 2001-11-04 19:43:08
|
I am reading the SPOPS docs with great interest as SPOPS seems to be the closest thing to the business objects that were used in the implementation of the eToys.com site. I liked the diagram showing show the different API actions of fetch, remove, save move the object from runtime to persistent state. Although an update() operation is absent from this picture, it is not absent from SPOPS because you can simply update a fetch'ed object and the TIEHASH will take care of the rest. What I did not see in these docs, but what I am sure is described elsewhere, is how the new() operation for creating new row objects is handled... I think that would make a nice introduction to the Intro. What do you guys think? |
|
From: Stefano di S. <st...@an...> - 2001-11-04 16:13:28
|
Hello everybody, in server.perl file I read following words: # Define login information. In the future you'll be able to define # the object(s) used for logging in and possibly more. do they mean that I'll be able to define a custom users table, so that also new account creations will effect different fields than actual ones? Performing addictional control on extern data is now suitable with 'custom_login_handler', but what about new account set up? Another case study... I'd like to put *two* login forms, one for persistent registered users (those who have an area to target the services I offer), and another for those people who can access a special on-the-fly service which require authentication _every_time_ he/she wants to use that because he/she is not (and he/she can't be) a registered user. The former is what OI offers nowadays and (if I'm not wrong) it should be improved providing a fully customizable data source and login/create as the words say in server.perl comment. About the latter what I suppose I can do now is build a package that offers a quick session, indipendent from users table, but set up with brand new authentication procedure. This session data, along with other the user must provide, will be kept in a package own table and it will be deleted once the task has been accomplished (or for timeout). Security for this object will be set to world read from the homepage. What about ? Stefano |
|
From: Chris W. <ch...@cw...> - 2001-11-04 15:05:32
|
* Terrence Brannon (bl...@sv...) [011103 16:09]: > is not listed in Makefile.PL: > > # Tried to require 'SPOPS::Tie'. > # Error: Can't locate Class/Date.pm in @INC (@INC contains: > blib/arch blib/lib /Users/metaperl/install/lib/site_perl/5.7.2/darwin > /Users/metaperl/install/li Whoops. You can safely comment out 'use Class::Date' in SPOPS::Utility -- I started moving the date functions over to Class::Date (from Date::Parse and Date::Calc) but didn't finish before releasing the last version. BTW (not that this applies to you, but while we're on the subject): Class::Date 1.0.7 doesn't seem to compile on 5.005_03, but 1.0.6 does. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Terrence B. <bl...@sv...> - 2001-11-03 21:01:25
|
is not listed in Makefile.PL: # Tried to require 'SPOPS::Tie'. # Error: Can't locate Class/Date.pm in @INC (@INC contains: blib/arch blib/lib /Users/metaperl/install/lib/site_perl/5.7.2/darwin /Users/metaperl/install/li |
|
From: Chris W. <ch...@cw...> - 2001-11-02 17:47:37
|
* Andreas Nolte (And...@Be...) [011102 11:10]: > .. that`s the strange part: I do not get that many error messages, it is > just slow! > > The only thing I get is: > > Issuing rollback() for database handle being DESTROY'd without explicit > disconnect() at /msn/oit/oit/Stash.pm line 33. > > several 100 times. The template cache seams to work OK, so far, since *.ttc > files are generated there. > > The strangest part is, that it seems to appear only in some sessions and if > multiple users are working. I am not sure yet, if this has to do with OI 1.3 > at all - that`s why I`d like to know, if anyone has seen s.th like this. > > My suspicion is though, that it has to do either with database connections > not being released ( 11 httpds are using 117 mysqlds right now ) or s.th. > within the session handling. I think I might know what the problem is. A couple questions: 1) What database/DBD are you using? 2) Are you using transactions? (Setting AutoCommit to false) 3) Are you using Apache::DBI? Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: <And...@Be...> - 2001-11-02 16:03:13
|
.. that`s the strange part: I do not get that many error messages, it = is just slow! The only thing I get is: Issuing rollback() for database handle being DESTROY'd without explicit disconnect() at /msn/oit/oit/Stash.pm line 33. several 100 times. The template cache seams to work OK, so far, since = *.ttc files are generated there. The strangest part is, that it seems to appear only in some sessions = and if multiple users are working. I am not sure yet, if this has to do with = OI 1.3 at all - that`s why I`d like to know, if anyone has seen s.th like = this. My suspicion is though, that it has to do either with database = connections not being released ( 11 httpds are using 117 mysqlds right now ) or = s.th. within the session handling. any hints anyone? -----Urspr=FCngliche Nachricht----- Von: Chris Winters [mailto:ch...@cw...] Gesendet am: Freitag, 2. November 2001 16:28 An: And...@Be... Cc: ope...@li... Betreff: Re: [Openinteract-help] Update problem 1.21 -> 1.30 * Andreas Nolte (And...@Be...) [011102 07:33]: > we just managed to get our intranet site up and running using OI > 1.21 and now would like to try the new features of OI 1.30. But: our > first update attempt failed, since we had performance loss and > unpredictable behavior. I suspect, that we had some left over > session entries in our sql db, but still: how are your experiences > with OI 1.30 in general and updates in perticular? If you have a user asking for a session not in the DB, it should just=20 put an error in the log but still work ok. One thing: be sure and create the directory $WEBSITE_DIR/cache/tt that is writeable by your Apache user, since OI should cache templates as of 1.30 -- this should be a performance *gain* :-) What sort of things are you seeing in your error log? Chris --=20 Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Chris W. <ch...@cw...> - 2001-11-02 15:11:08
|
* Andreas Nolte (And...@Be...) [011102 07:33]: > we just managed to get our intranet site up and running using OI > 1.21 and now would like to try the new features of OI 1.30. But: our > first update attempt failed, since we had performance loss and > unpredictable behavior. I suspect, that we had some left over > session entries in our sql db, but still: how are your experiences > with OI 1.30 in general and updates in perticular? If you have a user asking for a session not in the DB, it should just put an error in the log but still work ok. One thing: be sure and create the directory $WEBSITE_DIR/cache/tt that is writeable by your Apache user, since OI should cache templates as of 1.30 -- this should be a performance *gain* :-) What sort of things are you seeing in your error log? Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: <And...@Be...> - 2001-11-02 12:25:02
|
Hey! we just managed to get our intranet site up and running using OI 1.21 and now would like to try the new features of OI 1.30. But: our first update attempt failed, since we had performance loss and unpredictable behavior. I suspect, that we had some left over session entries in our sql db, but still: how are your experiences with OI 1.30 in general and updates in perticular? thanks, Andreas |
|
From: Chris W. <ch...@cw...> - 2001-10-28 01:29:16
|
* Mike Eggleston (mi...@mi...) [011027 21:28]:
> I finally got fruit-0.09 to load into my installation, but then trying
> to access the page to see how it all works I received this message:
>
> Can't use string ("order") as a HASH ref while "strict refs" in use
> at /usr/lib/perl5/site_perl/5.6.1/SPOPS/DBI.pm line 296.
>
> What do I do now?
Line 12 of your handler
($WEBSITE_DIR/pkg/fruit-0.09/YourSite/Handler/Fruit.pm) should look
like this:
my $fruits = eval { $R->fruit->fetch_group({ 'order' => 'name' }) };
and NOT this:
my $fruits = eval { $R->fruit->fetch_group( 'order' => 'name' ) };
I have the former in the code, but maybe there's a mixup somewhere and
you have the latter.
In any case, the error results from a 'fetch_group()' call somewhere
that is passing a hash of parameters rather than a hashref.
Hope this helps,
Chris
--
Chris Winters (ch...@cw...)
Building enterprise-capable snack solutions since 1988.
|
|
From: Mike E. <mi...@mi...> - 2001-10-28 01:19:09
|
I finally got fruit-0.09 to load into my installation, but then trying
to access the page to see how it all works I received this message:
Can't use string ("order") as a HASH ref while "strict refs" in use at /usr/lib/perl5/site_perl/5.6.1/SPOPS/DBI.pm line 296.
What do I do now?
Mike
|
|
From: Chris W. <ch...@cw...> - 2001-10-27 15:27:43
|
* Jochen Lillich (jl...@te...) [011027 11:16]: > Peter Beardsley schrieb am Fri, 26 Oct 2001 16:23:01 -0400: > > > I've been playing around with the news package, it's pretty cool. > > FYI: I'm working on a slashdot-like news package for web portals, > complete with user comments etc. I'll post a message when I'm ready to > release it. Oh, this would be *excellent*! I've had ideas about this for quite a while but have had neither the time nor the project to implement them. I'm looking forward to see what you've got. Chris -- Chris Winters (ch...@cw...) Building enterprise-capable snack solutions since 1988. |
|
From: Jochen L. <jl...@te...> - 2001-10-27 15:07:08
|
Peter Beardsley schrieb am Fri, 26 Oct 2001 16:23:01 -0400: > I've been playing around with the news package, it's pretty cool. FYI: I'm working on a slashdot-like news package for web portals, complete with user comments etc. I'll post a message when I'm ready to release it. -- ---------------------------------------------------------------- *Jochen Lillich*, Dipl.-Inform. (FH) Consultant/Trainer @ /TeamLinux GbR/ Tel. +49 7255 76784-12 http://www.teamlinux.de ---------------------------------------------------------------- |
|
From: Chris W. <ch...@cw...> - 2001-10-26 21:06:05
|
* Peter Beardsley (pbe...@ap...) [011026 16:26]:
> Chris,
> I've been playing around with the news package, it's pretty cool. I
> just have a few questions:
Just so you know -- this will probably change quite a bit in the next
version of OI. It will use OpenInteract::CommonHandler and the
template widgets -- just like the 'classified' package does right now.
> OK, I see that the news package takes over the path /News/ and does
> it's thing from there. But if I wanted to grab news items from the
> news package and incoroporate them into other parts of my site,what
> would be the best way to accomplish that?
You'd create a component.
Here's an example -- it's simplistic and doesn't match up with what's
in the news object right now, but it should give you a good idea of
how things work.
Say you wanted to create a component to get the most recent stories
about a particular topic. The user of the component must specify a
topic, and can optionally specify the number of stories to display.
You'd define your component in the Action Table by adding something
like the following in a 'conf/action.perl' file:
----------------------------------------
$action = {
...,
'most_recent_news' => {
'class' => OpenInteract::Handler::MyNews',
'method' => 'latest_by_topic',
'security' => 'no',
},
};
----------------------------------------
Add an implementation for the action:
----------------------------------------
package OpenInteract::Handler::MyNews;
...
sub latest_by_topic {
my ( $class, $p ) = @_;
unless ( $p->{topic} ) {
return "<p>No topic given, so no news generated.</p>";
}
$p->{limit} ||= 10;
my $R = OpenInteract::Request->instance;
my %search_params = (
limit => $p->{limit},
where => 'topic = ?',
value => [ $p->{topic} ],
order => 'posted_date DESC',
);
my $news_iterator =
eval { $R->news->fetch_iterator( \%search_params ) };
if ( $@ ) {
return "Error retrieving news items.";
}
return $R->template->handler( {},
{ iterator => $news_iterator },
{ name => 'news::news_list' } );
}
----------------------------------------
And a template (pkg/news/template/news_list.tmpl):
----------------------------------------
[% WHILE ( news = iterator.get_next ) -%]
<p>
[% news.title %]<br>
by [% news.author %] on [% news.posted_date %]<br>
[% news.content %]
</p>
[% END %]
----------------------------------------
All done! You'd call it from the template like this:
----------------------------------------
[% OI.comp( 'most_recent_news',
topic = 'cryptography', limit = 5 ) -%]
----------------------------------------
And in place of the 'OI.comp...' call the five most recent news
stories about 'cryptography would be inserted. You could obviously
modify the template to put the stories into a table, or only display
headlines with a link to the full story, or whatever.
One note: even though we're defining a handler to work with news items
it *does not* need to be in the news package. You can create your own
package with all these items and access the news objects just
fine. This way you can update it independently of new OI releases and
not have to worry about merging new changes to yours.
> When I try to use the news package's templates in my own pages, it
> breaks my server in a really wierd way(in short OI's virtual host
> dies but the rest of apache keeps on living, but that's neither here
> nor there). Am I not supposed to be using the news package's
> templates/boxes?
That's very strange -- when you say 'my own pages' what do you mean?
And how exactly are you trying to use them?
Chris
--
Chris Winters (ch...@cw...)
Building enterprise-capable snack solutions since 1988.
|
|
From: Peter B. <pbe...@ap...> - 2001-10-26 20:17:59
|
Chris, I've been playing around with the news package, it's pretty cool. I = just have a few questions: OK, I see that the news package takes over the path /News/ and does it's = thing from there. But if I wanted to grab news items from the news = package and incoroporate them into other parts of my site,what would be = the best way to accomplish that? When I try to use the news package's templates in my own pages, it = breaks my server in a really wierd way(in short OI's virtual host dies = but the rest of apache keeps on living, but that's neither here nor = there). Am I not supposed to be using the news package's = templates/boxes? |
|
From: <cla...@ne...> - 2001-10-26 15:45:29
|
I am catching hell removing this email address from the mailing list. __________________________________________________________________ Your favorite stores, helpful shopping tools and great gift ideas. Experience the convenience of buying online with Shop@Netscape! http://shopnow.netscape.com/ Get your own FREE, personal Netscape Mail account today at http://webmail.netscape.com/ |