From peter@grenna.net Sun Oct 1 00:23:12 2000
From: peter@grenna.net (Peter Bengtsson)
Date: Sun, 1 Oct 2000 00:23:12 +0100
Subject: [Zope] Hexcolors and DTML
Message-ID: <001b01c02b35$67513450$01d4a8c0@peppe>
This might be a math-python question but...
All I want to do is to print out the hexvalue of all black/white colors for a "fading HTML table".
#ffffff, #fefefe, #fdfdfd, ... #020202, #010101, #000000
I can do a loop from 1 to 255, but I don't know where to go from there.
BTW, are there non-websafe greycolors? Can the loop be for only websafe ones?
From zope@philosoft.at Sun Oct 1 02:52:40 2000
From: zope@philosoft.at (Philipp Auersperg)
Date: Sun, 01 Oct 2000 03:52:40 +0200
Subject: [Zope] XMLRPC:XML Compressors - anybody experienced it?
Message-ID: <200010010352400046.182B82FD@192.7.2.223>
--=====_97036516041=_
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Since XML blows lots of overhead over the line sending large amounts of
data via XML becomes a performance question.
There exist XML-compressors, for example XMill that address this problem.
What I need is integrating such an XML compressor into the Zope XMLRPC=
mechanism,
Before I do something that is already done by somebody else:
Did anybody play with XML compressors for Zope or at least have a hint how=
to do that?
thanks
--=====_97036516041=_
Content-Type: text/html; charset="us-ascii"
Since XML blows lots of overhead over the line sending large amounts
of
data via XML becomes a performance question.
There exist XML-compressors, for example XMill that address this
problem.
What I need is integrating such an XML compressor into the Zope XMLRPC
mechanism,
Before I do something that is already done by somebody else:
Did anybody play with XML compressors for Zope or at least have a hint how
to do that?
thanks
--=====_97036516041=_--
From chrism@digicool.com Sun Oct 1 03:47:17 2000
From: chrism@digicool.com (Chris McDonough)
Date: Sat, 30 Sep 2000 22:47:17 -0400
Subject: [Zope] XMLRPC:XML Compressors - anybody experienced it?
References: <200010010352400046.182B82FD@192.7.2.223>
Message-ID: <39D6A5B5.D77B08CE@digicool.com>
Phillip,
If your data transfers are bounded between a number of systems that you
control, it's possible to solve this problem the sledgehammer way by
having them communicate via a channel such as a compressed ssh tunnel
(if your processors aren't a bottleneck).
--
Chris McDonough
Digital Creations, Publishers of Zope
http://www.zope.org
From twcook@iswt.com Sun Oct 1 03:59:40 2000
From: twcook@iswt.com (Tim Cook)
Date: Sat, 30 Sep 2000 21:59:40 -0500
Subject: [Zope] Hexcolors and DTML
References: <001b01c02b35$67513450$01d4a8c0@peppe>
Message-ID: <39D6A89C.EA2B0341@iswt.com>
Peter Bengtsson wrote:
>
> This might be a math-python question but...
> All I want to do is to print out the hexvalue of all black/white colors for a "fading HTML table".
>
> #ffffff, #fefefe, #fdfdfd, ... #020202, #010101, #000000
>
> I can do a loop from 1 to 255, but I don't know where to go from there.
>
> BTW, are there non-websafe greycolors? Can the loop be for only websafe ones?
Not an expert on this at all. But, I believe that all the websafe
colors are defined in pairs of the following hex digits. 00, 33,
66, 99, cc, & ff. So only colors that are composed of those
pairs are websafe.
If that's true then yes there are shades of gray that are not web
safe. Checkout this link for more info.
http://www.reallybig.com/visibone/lab/index.shtml
Therefore there are only six shades of websafe gray. 000000,
333333, 666666, 999999, cccccc, & ffffff.
Put those in a list?
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
From wilson@visi.com Sun Oct 1 05:32:48 2000
From: wilson@visi.com (Timothy Wilson)
Date: Sat, 30 Sep 2000 23:32:48 -0500 (CDT)
Subject: [Zope] handling date properties in
Message-ID:
Hi everyone,
I've created a simple ZClass to allow our Human Resources dept. to post job
openings on our Web site. There's a DTML method that iterates through a
folder containing all of the 'Job Board Entry' instances and displays them
in an HTML table. No problem there.
The ZClass has a number of properties including two dates, 'date_posted' for
the date that the job is officially available and 'offer_expires' for the
date the job opening officially closes. I want to display only those jobs
for which the current date is on or after the 'date_posted' and on or
before 'offer_expires'. I've tried a bunch of things, but haven't hit upon
the winning answer. Any takers?
-Tim
--
Tim Wilson | Visit Sibley online: | Check out:
Henry Sibley HS | http://www.isd197.k12.mn.us/ | http://www.zope.org/
W. St. Paul, MN | | http://slashdot.org/
wilson@visi.com | | http://linux.com/
From nolan_d@bigfoot.com Sun Oct 1 07:26:15 2000
From: nolan_d@bigfoot.com (Nolan Darilek)
Date: Sun, 01 Oct 2000 01:26:15 -0500
Subject: [Zope] Z class complexities
Message-ID: <20001001012615P.nolan@tiny>
I'm having a kinda complex problem, and hopefully my explanation can
do it justice. :)
I'm using zope to construct an XML document from the contents of a
folder. Basically, the folder's index.xml iterates through the
folder's contents, rendering each object to produce the final
document. The objects are separate z classes which combine various
properties into a small snippet of the larger XML document.
The z class has a render() method which combines the properties into
the XML snippet. I have a Render view configured to run this method,
and it works. (Though for some reason it adds a ..., which
I'd really like to get rid of. How can I?)
I've written the index_html to collect the individual objects and
concatenate their contents into an XML document. The code for the
method is below:
This almost gives me what I want (I say "almost" because everything
works, short of the render() call.) Viewing this results in:
+----------------------------------------------------------------------------+
||Zope Error |
|| |
||Zope has encountered an error while publishing this resource. |
|| |
||Error Type: KeyError |
||Error Value: title |
||---------------------------------------------------------------------------|
|| |
||Troubleshooting Suggestions |
|| |
|| o This resource may be trying to reference a nonexistent object or |
|| variable title. |
|| o The URL may be incorrect. |
|| o The parameters passed to this resource may be incorrect. |
|| o A resource that this resource relies on may be encountering an error. |
|| |
||For more detailed information about the error, please refer to the HTML |
||source for this page. |
|| |
||If the error persists please contact the site maintainer. Thank you for |
||your patience. |
+----------------------------------------------------------------------------+
Traceback (innermost last):
File /usr/local/zope/e1/lib/python/ZPublisher/Publish.py, line 222, in publish_module
File /usr/local/zope/e1/lib/python/ZPublisher/Publish.py, line 187, in publish
File /usr/local/zope/e1/lib/python/Zope/__init__.py, line 221, in zpublisher_exception_hook
(Object: Traversable)
File /usr/local/zope/e1/lib/python/ZPublisher/Publish.py, line 171, in publish
File /usr/local/zope/e1/lib/python/ZPublisher/mapply.py, line 160, in mapply
(Object: index.xml)
File /usr/local/zope/e1/lib/python/ZPublisher/Publish.py, line 112, in call_object
(Object: index.xml)
File /usr/local/zope/e1/lib/python/OFS/DTMLMethod.py, line 172, in __call__
(Object: index.xml)
File /usr/local/zope/e1/lib/python/DocumentTemplate/DT_String.py, line 528, in __call__
(Object: index.xml)
File /usr/local/zope/e1/lib/python/DocumentTemplate/DT_In.py, line 691, in renderwob
(Object: PARENTS[0].objectValues('ESPPackage'))
File /usr/local/zope/e1/lib/python/DocumentTemplate/DT_Util.py, line 337, in eval
(Object: _[_['id']].render())
(Info: _)
File <string>, line 0, in ?
File /usr/local/zope/e1/lib/python/OFS/DTMLMethod.py, line 168, in __call__
(Object: render)
File /usr/local/zope/e1/lib/python/DocumentTemplate/DT_String.py, line 528, in __call__
(Object: render)
KeyError: (see above)
-->
I have a title variable in the z class which this index.xml method is
referencing. And, as previously stated, the render() method runs
without errors when invoked via the view. Yet, trying to display this
document from within another doesn't work. Can anyone please advise?
Thanks a bunch in advance.
From stefan@epy.co.at Sun Oct 1 09:38:17 2000
From: stefan@epy.co.at (Stefan H. Holek)
Date: Sun, 1 Oct 2000 10:38:17 +0200 (CEST)
Subject: [Zope] DTMLTemplate on Zope 2.2.1
Message-ID:
I a trying to make the DTMLTemplate Product work on Zope 2.2.1
No luck so far ;(
I can add a DTMLTemplate instance but when I try to edit it, I get:
Zope Error
Zope has encountered an error while publishing this resource.
Error Type: TypeError
Error Value: first argument must be sequence of strings
Traceback (innermost last):
File /usr/local/Zope-2.2.1-src/lib/python/ZPublisher/Publish.py, line
222, in publish_module
File /usr/local/Zope-2.2.1-src/lib/python/ZPublisher/Publish.py, line
187, in publish
File /usr/local/Zope-2.2.1-src/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
(Object: MyBlocks)
File /usr/local/Zope-2.2.1-src/lib/python/ZPublisher/Publish.py, line
165, in publish
File /usr/local/Zope-2.2.1-src/lib/python/Zope/__init__.py, line 271, in
recordMetaData
TypeError: (see above)
I believe it worked with Zope 2.1.6. Any hints appreciated.
Stefan
--
Stefan H. Holek, stefan@epy.co.at
From rsepulveda@linuxmty.org Sun Oct 1 09:39:07 2000
From: rsepulveda@linuxmty.org (Rafael Sepúlveda)
Date: 01 Oct 2000 03:39:07 -0500
Subject: [Zope] Use variable value by other file
In-Reply-To: Dieter Maurer's message of "Sat, 30 Sep 2000 22:10:17 +0200 (CEST)"
References: <14806.18483.33225.450699@lindm.dm>
Message-ID: <87og15x8es.fsf@linuxmty.org>
Dieter Maurer writes:
> It is not necessary for "standard_html_footer" to be
> in the same folder than your file.
Yes, I realize that it was a mistake in the variable name: - instead
of a _.
--
Rafael Sepúlveda
http://www.linuxmty.org/people/rsepulveda
1024D/1981FDE7 F13B C41C 739B 7233 F738 D68E 2947 D868 1981 FDE7
From rsepulveda@linuxmty.org Sun Oct 1 11:06:41 2000
From: rsepulveda@linuxmty.org (Rafael Sepúlveda)
Date: 01 Oct 2000 05:06:41 -0500
Subject: [Zope] One page for different selections
Message-ID: <87k8bsyixa.fsf@linuxmty.org>
Is there a way to make a variable change its value depending which
'href' the user clicks in order to change the contents of the next
page viewed?
For example, I want to have a page with six links, and depending which
of them the user clicks, a variable will change its value so the next
page will display that data refered on the link clicked.
Is there a way to do this without having six files, one for each
other; just having one file with that variable?
--
Rafael Sepúlveda
http://www.linuxmty.org/people/rsepulveda
1024D/1981FDE7 F13B C41C 739B 7233 F738 D68E 2947 D868 1981 FDE7
From sebbacon@email.com Sun Oct 1 13:42:25 2000
From: sebbacon@email.com (seb)
Date: Sun, 01 Oct 2000 13:42:25 +0100
Subject: [Zope] One page for different selections
References: <87k8bsyixa.fsf@linuxmty.org>
Message-ID: <39D73131.60633ECD@email.com>
I'm not sure exactly what you mean when you say
> Is there a way to do this without having six files, one for each
> other; just having one file with that variable?
but one answer to what I think you're asking is
FooBar
and then in the next_page document:
this will render the foo object if someone clicks on "Foo", etc.
HTH, seb.
"Rafael Sepúlveda" wrote:
>
> Is there a way to make a variable change its value depending which
> 'href' the user clicks in order to change the contents of the next
> page viewed?
>
> For example, I want to have a page with six links, and depending which
> of them the user clicks, a variable will change its value so the next
> page will display that data refered on the link clicked.
>
From sebbacon@email.com Sun Oct 1 13:48:50 2000
From: sebbacon@email.com (seb)
Date: Sun, 01 Oct 2000 13:48:50 +0100
Subject: [Zope] handling date properties in
References:
Message-ID: <39D732B2.FD73DA33@email.com>
Hi,
> ... I want to display only those jobs
> for which the current date is on or after the 'date_posted' and on or
> before 'offer_expires'. I've tried a bunch of things, but haven't hit upon
> the winning answer. Any takers?
Try
Job:
Seb.
From mail@okstudio.com.au Sun Oct 1 16:58:18 2000
From: mail@okstudio.com.au (George Osvald)
Date: Mon, 2 Oct 2000 01:58:18 +1000
Subject: [Zope] working crontab restart script on FreeBsd
Message-ID: <000001c02bc0$6a977580$48f438cb@gosvald>
I was trying to do this for a little while so in case anyone's interested,
here it is. Most of the code was kindly sent to me by other people so do not
blame me for the mistakes. This script(auto) checks ZOPE every 15'th minute
and if it does not run, it will restart it. It has been working without a
problem on FreeBSD 4.0 after I patched ZOPE's pidfile for LF's. (without
that little operation it returns an error message and restarts ZOPE every
time without checking it)
I am running this from crontab:
SHELL=/bin/sh
0,15,30,45 * * * * /home/user/auto
And this script(auto) is sitting in my user directory:
#!/bin/sh
ZOPEDIR="/home/user/zope"
INFOMAIL="mail@okstudio.com.au"
STARTFILE="$ZOPEDIR/start"
STOPFILE="$ZOPEDIR/stop"
PIDFILE="$ZOPEDIR/var/Z2.pid"
PID1ACTIVE=0
PID2ACTIVE=0
if [ -x $STARTFILE ]; then
if [ -r $PIDFILE ]; then
PID1=`cut -d" " -f1 $PIDFILE`
PID2=`cut -d" " -f2 $PIDFILE`
if
kill -0 $PID1 2>/dev/null
then
PID1ACTIVE=1
fi
if
kill -0 $PID2 2>/dev/null
then
PID2ACTIVE=1
fi
fi
if [ $PID1ACTIVE -eq 0 -o $PID2ACTIVE -eq 0 ]; then
$STOPFILE >/dev/null 2>&1
sleep 10
$STARTFILE
date | mail -s"Zope restarted" $INFOMAIL >/dev/null 2>&1
fi
fi
Regards,
George
From roeder@berg.net Sun Oct 1 16:41:26 2000
From: roeder@berg.net (Maik Roeder)
Date: Sun, 01 Oct 2000 17:41:26 +0200
Subject: [Zope] handling date properties in
References: <39D732B2.FD73DA33@email.com>
Message-ID: <39D75B26.2646394B@berg.net>
Hi !
seb wrote:
>
> Hi,
>
> > ... I want to display only those jobs
> > for which the current date is on or after the 'date_posted' and on or
> > before 'offer_expires'. I've tried a bunch of things, but haven't hit upon
> > the winning answer. Any takers?
>
> Try
>
>
>
>
> Job:
>
>
>
I have added it to he ZSnippets:
http://zdp.zope.org/projects/zsnippet/snippets/time/expiration
Regards,
Maik Röder
--
Uzopia - Digging la vida Zopa - http://uzopia.editthispage.com
From roeder@berg.net Sun Oct 1 17:02:18 2000
From: roeder@berg.net (Maik Roeder)
Date: Sun, 01 Oct 2000 18:02:18 +0200
Subject: [Zope] Z class complexities
References: <20001001012615P.nolan@tiny>
Message-ID: <39D7600A.565060D4@berg.net>
Hi Nolan !
Nolan Darilek wrote:
>
> I'm having a kinda complex problem, and hopefully my explanation can
> do it justice. :)
>
> I'm using zope to construct an XML document from the contents of a
> folder. Basically, the folder's index.xml iterates through the
> folder's contents, rendering each object to produce the final
> document. The objects are separate z classes which combine various
> properties into a small snippet of the larger XML document.
>
> The z class has a render() method which combines the properties into
> the XML snippet. I have a Render view configured to run this method,
> and it works. (Though for some reason it adds a ..., which
> I'd really like to get rid of. How can I?)
Attach the following code:
> I've written the index_html to collect the individual objects and
> concatenate their contents into an XML document.
>
>
>
>
>
>
>
>
Something like this should work if you have a DTML Method to_xml:
Place the to_xml in the ESPPackage ZClass
Regards,
Maik Röder
--
Uzopia - Digging la vida Zopa - http://uzopia.editthispage.com
From andym@ActiveState.com Sun Oct 1 20:54:18 2000
From: andym@ActiveState.com (Andy McKay)
Date: Sun, 1 Oct 2000 12:54:18 -0700
Subject: [Zope] SQL errors
References: <14805.3989.417931.96225@lindm.dm>
Message-ID: <005c01c02be1$62bb9370$ae03a8c0@fork>
Of course, thank you. That works just fine.
----- Original Message -----
From: "Dieter Maurer"
To: "Andy McKay"
Cc:
Sent: Friday, September 29, 2000 2:55 PM
Subject: Re: [Zope] SQL errors
> Andy McKay writes:
> > Using ZODBC Database Adapter to connect to an MSSQL and I can call the
sql
> > method in dtml eg:
> >
> >
> >
> >
> > Error!
> >
> >
> > But does anyone know a way of trapping the specific error eg: database
down,
> > key violation etc...? Or do I have to hack ZODBC to return different
errors?
> You know the "error_value" variable defined inside the "dtml-except"?
>
> Maybe, it can give you additional information about the kind
> of error.
> If it is the wrong one, reraise the exception.
>
>
> Dieter
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From jensebaer@hotmail.com Sun Oct 1 22:09:36 2000
From: jensebaer@hotmail.com (jensebaer)
Date: Sun, 1 Oct 2000 23:09:36 +0200
Subject: [Zope] LocalFS manage_addFolder solution?
Message-ID:
This is a multi-part message in MIME format.
------=_NextPart_000_0005_01C02BFC.AAFAF3E0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi all,
while searching for a solution to add a folder to LocalFS, I found this =
message:
_________________________________________________________________________=
_____
> Folder creation isn't really supported in LocalFS at the moment. Very =
> low level support is there (module function _save_Folder) but it's not =
> intended to be called externally and there doesn't seem to be any path =
> to call it. There is certainly not a local definition of
> manage_addFolder in LocalDirectory. This is on my list of stuff to do =
> for our site, but I don't know if it's on Jonothan's list for the real
> product.
It is. It's hard. I'm going to need some help with this one, I'm afraid.
--jfarr
_________________________________________________________________________=
_____
My question:
Is there now a solution to perfom manage_addFolder to LocalFS?
Thank You=20
Jens
------=_NextPart_000_0005_01C02BFC.AAFAF3E0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi all,
while searching for a solution to add a =
folder to=20
LocalFS, I found this message:
> Folder creation isn't really =
supported in=20
LocalFS at the moment. Very > low level support is there =
(module=20
function _save_Folder) but it's not > intended to be called =
externally=20
and there doesn't seem to be any path > to call it. There =
is=20
certainly not a local definition of > manage_addFolder in=20
LocalDirectory. This is on my list of stuff to do > for our =
site,=20
but I don't know if it's on Jonothan's list for the real >=20
product.
It is. It's hard. I'm going to need some help with this =
one, I'm=20
afraid.
Is there now a solution to perfom =
manage_addFolder=20
to LocalFS?
Thank You
Jens
------=_NextPart_000_0005_01C02BFC.AAFAF3E0--
From scott@launchpoint.net Sun Oct 1 22:13:59 2000
From: scott@launchpoint.net (Scott Burton)
Date: Sun, 01 Oct 2000 14:13:59 -0700
Subject: [Zope] sendmail tag strangeness
Message-ID:
> This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
--MS_Mac_OE_3053254440_367021_MIME_Part
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
I have searched around about sendmail tag problems on the list and have
found similar answers to my question. However none of them work.
I have used this syntax
To: <>
From:
Subject:
body....
I pay close attention to not having any whitespace before the To: and From:
headers.
I receive this error from multiple SMTP hosts: 503 must have sender and
recipient first
I can send an email with this syntax:
body...
The problem is, I have to put in the recipient by hand. This method is
supposed to email a recipient after filling out a form so the recipient has
to be a variable. When I try using or &dtml-recipient;
or _[recipient] I still have errors or the SMTP log shows that the variable
does not get evaluated and shows up as a string of <&dtml-recipient;> as
being the recipient in the SMTP header.
Is this a bug? Is there something else I could try?
TIA
Scott B.
--MS_Mac_OE_3053254440_367021_MIME_Part
Content-type: text/html; charset="US-ASCII"
Content-transfer-encoding: quoted-printable
sendmail tag strangeness
I have searched around about sendmail tag problems on the list and have fou=
nd similar answers to my question. However none of them work.
I have used this syntax
<dtml-sendmail mailhost=3D"MailHost">
To: <<dtml-var recipient>>
From: <me@mydomain.com>
Subject: <Whatever>
body....
</dtml-sendmail>
I pay close attention to not having any whitespace before the To: and From:=
headers.
I receive this error from multiple SMTP hosts: 503 must have sender and recipient first
The problem is, I have to put in the recipient by hand. This method is supp=
osed to email a recipient after filling out a form so the recipient has to b=
e a variable. When I try using <dtml-var recipient> or &dtml-recip=
ient; or _[recipient] I still have errors or the SMTP log shows that the var=
iable does not get evaluated and shows up as a string of <&dtml-recip=
ient;> as being the recipient in the SMTP header.
Is this a bug? Is there something else I could try?
TIA
Scott B.
--MS_Mac_OE_3053254440_367021_MIME_Part--
From roeder@berg.net Sun Oct 1 23:02:01 2000
From: roeder@berg.net (Maik Roeder)
Date: Mon, 02 Oct 2000 00:02:01 +0200
Subject: [Zope] sendmail tag strangeness
References:
Message-ID: <39D7B459.2C3D96BD@berg.net>
Hi Scott !
Scott Burton wrote:
> The problem is, I have to put in the recipient by hand. This method is
> supposed to email a recipient after filling out a form so the recipient
> has to be a variable. When I try using or &dtml-recipient;
> or _[recipient] I still have errors or the SMTP log shows that the variable
> does not get evaluated and shows up as a string of <&dtml-recipient;>
> as being the recipient in the SMTP header.
>
> Is this a bug? Is there something else I could try?
I have tested the following code on the ZDP site, and it works:
To: <>
From: The CommentClass constructor
Subject: A new Comment has been added to ZDP !
Dear Tom !
Under the following URL, a Comment has been added:
URL: /
Name:
Nickname:
Content:
Have a nice day,
The CommentClass constructor
(http://zdp.zope.org/Control_Panel/Products/DocumentFolderProduct/CommentClass_add/manage_main)
Zope version: Zope 2.1.3 (source release, python 1.5.2, linux2)
Python version: 1.5.2 (#1, Sep 17 1999, 20:15:36) [GCC egcs-2.91.66 19990314/Linux (egcs-
System Platform: linux-i386
Process ID: 1478 (1024)
Running for: 34 days 4 hours 6 min 32 sec
Maybe you can test the above code and see if it works. It may be possible to track
down the bug by comparing the code from 2.1.3 with the code from your Zope version.
Regards,
Maik Röder
--
Uzopia - Digging la vida Zopa - http://uzopia.editthispage.com
From curtis@cardgate.net Mon Oct 2 00:27:56 2000
From: curtis@cardgate.net (Curtis Maloney)
Date: Mon, 2 Oct 2000 10:27:56 +1100
Subject: [Zope] Hexcolors and DTML
In-Reply-To: <001b01c02b35$67513450$01d4a8c0@peppe>
References: <001b01c02b35$67513450$01d4a8c0@peppe>
Message-ID: <00100210275606.02655@localhost.localdomain>
On Sun, 01 Oct 2000, Peter Bengtsson wrote:
> This might be a math-python question but...
> All I want to do is to print out the hexvalue of all black/white colors for
> a "fading HTML table".
>
> #ffffff, #fefefe, #fdfdfd, ... #020202, #010101, #000000
>
> I can do a loop from 1 to 255, but I don't know where to go from there.
>
">BLAH
> BTW, are there non-websafe greycolors? Can the loop be for only websafe
> ones?
>
According to a recent study, there are approximately 13 'web safe' colours,
out of the full 16,777,216. Can you be bothered restricting yourself to
support the 'lowest common denominator' ?
If you really want to know what they are, do a quick search back on
www.slashdot.org for the link.
Have a better one,
Curtis Maloney
From jatwood@bwanazulia.com Mon Oct 2 00:52:14 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Sun, 1 Oct 2000 19:52:14 -0400
Subject: [Zope] ANN: ZUBB/ZDiscussions 0.6.0 Released
In-Reply-To: <005c01c02be1$62bb9370$ae03a8c0@fork>
References: <14805.3989.417931.96225@lindm.dm>
<005c01c02be1$62bb9370$ae03a8c0@fork>
Message-ID:
http://www.zope.com/Members/BwanaZulia/ZUBB
With the help of Jeffrey and Angel here is 0.6.0
Changes in Version 0.6.0
Fixed the problem (again) with 2.2.2 (submitted by Angel Garcia)
Added message count to the main view (submitted by Jeffrey Harris)
Added last post to main view (submitted by Jeffrey Harris)
Modified thread view so it will show entire thread (Submitted by
Jeffrey Harris)
Modified both README and header of ZDiscussions.py
Upgraded status to STABLE from DEVELOPMENT as it has now been in
production on five of my sites with no problems.
Example Sites: http://www.zope.org/Members/BwanaZulia/ZUBB/EXAMPLES
Report bugs and such to: http://www.bwanazulia.com/discussions/test/
If you have a ZUBB/ZDiscussion installation and would like to be
added to the list please let me know.
Thanks,
J
From jens@grewen.de Mon Oct 2 02:48:16 2000
From: jens@grewen.de (Grewen.de)
Date: Mon, 2 Oct 2000 03:48:16 +0200
Subject: [Zope] How to use manage_addLocalFS
Message-ID: <000801c02c12$d597c220$0300a8c0@windows>
This is a multi-part message in MIME format.
------=_NextPart_000_0005_01C02C23.988B08E0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi all,
I want to create an LocalFS object.
I use but that doesn=B4t work.
Simular to
Any ideas?
May I have to use a externel methode like in the mail I posted before?
------=_NextPart_000_0005_01C02C23.988B08E0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi all,
I want to create an LocalFS =
object.
I use <dtml-call =
"manage_addLocalFS('LocalFS',=20
'Tis is the title', '/home/zope/productimages')"> but that doesn=B4t=20
work.
Simular to <dtml-call=20
"manage_addFolder('Folder', 'Tis is the title')">
Any ideas?
May I have to use a externel methode =
like in the=20
mail I posted before?
------=_NextPart_000_0005_01C02C23.988B08E0--
From wilson@visi.com Mon Oct 2 04:19:19 2000
From: wilson@visi.com (Timothy Wilson)
Date: Sun, 1 Oct 2000 22:19:19 -0500 (CDT)
Subject: [Zope] Allright, who broke acquisition?
Message-ID:
Hi everyone,
I'm running Zope 2.2.2 on Linux. All of the sudden I've got some DTML
methods that are no longer being acquired in subfolders. I changed the HTML
a bit and the whole thing stopped working! I've got some little navigation
menus that I'd like to reuse in subfolders by simply referring to them via
and having them acquired from the parent folder. Anybody know
when this is happening? Here's a sample of the code and the traceback:
Any ideas?
-Tim
--
Tim Wilson | Visit Sibley online: | Check out:
Henry Sibley HS | http://www.isd197.k12.mn.us/ | http://www.zope.org/
W. St. Paul, MN | | http://slashdot.org/
wilson@visi.com | | http://linux.com/
From curtis@cardgate.net Mon Oct 2 05:50:02 2000
From: curtis@cardgate.net (Curtis Maloney)
Date: Mon, 2 Oct 2000 15:50:02 +1100
Subject: [Zope] Limited file size editing...
Message-ID: <00100215500209.02655@localhost.localdomain>
Just curious...
I've seen several times on this list people pointing out that the limit on
the size of files you can edit in Zope via the web interface is a result of
your browser. The sizes I recall were somewhere in the vacinity of 64K.
I currently have a 470K file open for editing in Netscape 4.75 (under
Linux). What are the limits on various browsers?
Ignore me if you think this is too far off topic....
Curtis.
From lda@rice.edu Mon Oct 2 06:38:25 2000
From: lda@rice.edu (Larry Albert)
Date: Mon, 02 Oct 2000 00:38:25 -0500
Subject: [Zope] ZopeTime().Date() confusion
Message-ID: <0G1S00DR7FMEX0@mta4.rcsntx.swbell.net>
This is driving me batty.
I am trying to do something very simple. I want a method to perform an
update no more than once a day. I know there are other approaches to this
issue -- such as using bobobase_modification_time, not to mention Xron --
but I would like to use a date property for reasons I won't go into here.
I am using Zope 2.2.1. Every time the method updates, I update the date
property called last_updated with this:
This gives me a date that appears to be accurate, such as 2000/10/01. Then,
every time the page gets called, I want to check to see if it is time to
call the method, so I use:
don't update method
update method
store new last_updated
This worked fine until, at the appointed hour, last_updated began to sense
that even though it appeared to be "2000/10/01" (and even when I typed it
in that way by hand), the time in Greenwich was actually more important to
its sense of identity than was its appearance to me. So even when
ZopeTime().Date() gave me 2000/10/01,
last_updated.isCurrentDay()
would evaluate to false(!). So the method would update every time the page
was called. As a kluge, I changed my update command to
, which works, but causes the update to occur, I presume, at midnight GMT,
rather than midnight here, which would be nicer (actually, I'd love to be
able to control the precise hour updates should occur, but I can't figure
out how to do that). This is also complicated -- but not relevantly, I
hope? -- by the fact that the Zope installation seems to think the time
zone is GMT+2 rather than GMT-5 (I'm in Texas).
I understand that the previously counterintuitive use of strftime was
changed for 2.2.1 -- but I am not using strftime, I am using Date() and
isCurrentDay(). I've tried all sorts of combinations of switching time
zones but succeeded only in confusing myself.
So three questions:
1. Is there a better way to do this (still using a property called
last_updated)?
2. Does the use of Date() and isCurrentDay(), etc. still switch everything
to GMT, even though strftime was changed? If so, what is the list of
methods that compare GMT, and which that compare the local installation time?
3. This appears to be a perfect example of something that should be very
simple becoming needlessly complicated. Couldn't some more user-friendly
("beginner") time or date objects be implemented in DTML?
Thanks for any help!
Larry Albert
lda@rice.edu
From rbickers@logicetc.com Mon Oct 2 07:05:00 2000
From: rbickers@logicetc.com (Ron Bickers)
Date: Mon, 2 Oct 2000 02:05:00 -0400
Subject: [Zope] How to use management tabs not for management
Message-ID:
I want to create create HTML pages with my own Zopish looking tabs that have
nothing to do with Zope management. Is there a simple way to use
manage_tabs for this, or do I need to make my own version of it? Everything
I've tried gets me caught up in the Zope management system.
_______________________
Ron Bickers
Logic Etc, Inc.
rbickers@logicetc.com
From Danny@Adair.net Mon Oct 2 14:57:53 2000
From: Danny@Adair.net (Danny William Adair)
Date: Mon, 2 Oct 2000 15:57:53 +0200
Subject: [Zope] Access problems
Message-ID:
What has happened?
Whatever resource I'm trying to access (including the management IF), I get
this
(running a 2.2.1 Zope on Unix)
---------------
Attribute Error
---------------
Traceback (innermost last):
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 222, in publish_module
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 187, in publish
File /home/sites/site3/users/.../2-2-1/lib/python/Zope/__init__.py, line
221, in zpublisher_exception_hook
(Object: ApplicationDefaultPermissions)
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 162, in publish
File
/home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py, line
438, in traverse
File
/home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py, line
514, in old_validation
(Object: broken)
AttributeError: (see above)
TIA,
Prost,
Danny
From jatwood@bwanazulia.com Mon Oct 2 15:00:03 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Mon, 02 Oct 2000 10:00:03 -0400
Subject: [Zope] Zope bug collector on zope.org available?
Message-ID:
http://classic.zope.org:8080/Collector/
Does anyone know what product this is and if it is available for download? I
am looking for something that is similar to BugZilla.
Ethan? Paul? Anyone?
Thanks,
J
From skip@mojam.com (Skip Montanaro) Mon Oct 2 15:52:32 2000
From: skip@mojam.com (Skip Montanaro) (Skip Montanaro)
Date: Mon, 2 Oct 2000 09:52:32 -0500 (CDT)
Subject: [Zope] XMLRPC:XML Compressors - anybody experienced it?
In-Reply-To: <532696846@toto.iv>
Message-ID: <14808.41264.48003.973440@beluga.mojam.com>
Philipp> Did anybody play with XML compressors for Zope or at least have
Philipp> a hint how to do that?
I use a slightly modified version of Fredrik Lundh's xmlrpclib.py module
that will often use zlib compression to compress responses. Running over a
wide area network such as the Internet I've seen speedups of as much as
5-to-1. Instructions and my current version of xmlrpclib.py are available
from my Python Bits page:
http://www.musi-cal.com/~skip/python/
I believe it is a drop-in replacement for Zope's version, though note that
my code has other mods as well (in particular, it specifies the encoding as
Latin-1 for all requests and responses). You should compare it with the
versions distributed with Zope or by PythonWare to decide what changes you
want to incorporate in your own system.
--
Skip Montanaro (skip@mojam.com)
http://www.mojam.com/
http://www.musi-cal.com/
From brian@digicool.com Mon Oct 2 16:23:06 2000
From: brian@digicool.com (Brian Lloyd)
Date: Mon, 2 Oct 2000 11:23:06 -0400
Subject: [Zope] FYI: Python product tutorial updated
In-Reply-To: <4036A094D96A9549A6D6CCD979F1F3630C2477@engin-mail2.ad.engin.umich.edu>
Message-ID:
> This tutorial looks great...it explained a lot of things to me
> that I wasn't
> able to put together before.
>
> But...on looking at it, a nagging thought keep recurring...this
> is a really
> quite long and complicated process for a Poll product. As much as I like
> Zope and thing it is a great platform on which to develop web
> applications,
> I often wonder about the complexity and obscurity of some of the
> procedures
> that need to executed while making what are, on the face of it,
> often quite
> simple web objects or applications. Consequently I have honestly
> had quite a
> hard time convincing PHP-savvy colleagues that the path to Zope Zen is
> something worth starting on. Does anyone else experience these nagging
> doubtful thoughts occasionally ?
I think yours is a valid criticism. Zope provides the
infrastructure to do a lot of powerful and complex things,
with the downside that (currently) as a developer a lot of
the details are "in your face". One major goal I have for
Zope going forward is to strive for "optional complexity" -
not only for day-to-day use of Zope but also for component
developers.
I'd be very interested to hear any ideas you folks have
on ways to help "make simple things simple" for development
and to allow people to deal with complexity only as they
begin to need it...
Brian Lloyd brian@digicool.com
Software Engineer 540.371.6909
Digital Creations http://www.digicool.com
From dan@sol.control.com Mon Oct 2 17:08:15 2000
From: dan@sol.control.com (Dan L. Pierson)
Date: 02 Oct 2000 11:08:15 -0500
Subject: [Zope] LocalFS manage_addFolder solution?
In-Reply-To: "jensebaer"'s message of "Sun, 1 Oct 2000 23:09:36 +0200"
References:
Message-ID:
"jensebaer" writes:
> ______________________________________________________________________________
>
> > Folder creation isn't really supported in LocalFS at the moment. Very
> > low level support is there (module function _save_Folder) but it's not
> > intended to be called externally and there doesn't seem to be any path
> > to call it. There is certainly not a local definition of
> > manage_addFolder in LocalDirectory. This is on my list of stuff to do
> > for our site, but I don't know if it's on Jonothan's list for the real
> > product.
> It is. It's hard. I'm going to need some help with this one, I'm afraid.
> --jfarr
> ______________________________________________________________________________
>
> My question:
>
> Is there now a solution to perfom manage_addFolder to LocalFS?
The general case _is_ hard, but special cases can be much easier. In
an earlier message Jonothan recommended using external methods to add
folders. We plan to take this approach for our use. For one thing it
makes enforcing our site policies much easier than a general approach.
From rbickers@logicetc.com Mon Oct 2 16:26:09 2000
From: rbickers@logicetc.com (Ron Bickers)
Date: Mon, 2 Oct 2000 11:26:09 -0400
Subject: [Zope] How to use management tabs not for management
In-Reply-To: <007601c02c63$1866ab20$01d4a8c0@peppe>
Message-ID:
I didn't mean to imply that I didn't want to use any DTML. If there's a way
to set manage_options and call manage_tabs though DTML or a Python method,
that would be ideal. I would like to avoid having to create my own modified
manage_tabs for this purpose, but if that's what it takes, so be it.
_______________________
Ron Bickers
Logic Etc, Inc.
rbickers@logicetc.com
> -----Original Message-----
> From: Peter Bengtsson [mailto:peter@grenna.net]
> Sent: Monday, October 02, 2000 7:23 AM
> To: Ron Bickers
> Cc: zope@zope.org
> Subject: Re: [Zope] How to use management tabs not for management
>
>
> Viewing the HTML source of your Zope management and highlightning
> the tabs HTML? There is no DTML there.
> However, there are some images. src="/p_/ltab" and src="/p_/rtab"
> Could that be it?
>
> >
> > I want to create create HTML pages with my own Zopish looking
> tabs that have
> > nothing to do with Zope management. Is there a simple way to use
> > manage_tabs for this, or do I need to make my own version of
> it? Everything
> > I've tried gets me caught up in the Zope management system.
From roche@ybm.co.za Mon Oct 2 17:35:15 2000
From: roche@ybm.co.za (Roch'e Compaan)
Date: Mon, 2 Oct 2000 18:35:15 +0200
Subject: [Zope] Mailhost TypeError
Message-ID: <000f01c02c8e$be68c7d0$0102a8c0@roche.up-front.co.za>
I'm recreated a mailhost in Zope 2.2.0. Whenever I want to send mail with
sendmail tag I get a TypeError. This worked in Zope 2.1.x. This is the
traceback:
Traceback (innermost last):
File /usr/local/zope/2-2-0/lib/python/ZPublisher/Publish.py, line 222, in
publish_module
File /usr/local/zope/2-2-0/lib/python/ZPublisher/Publish.py, line 187, in
publish
File /usr/local/zope/2-2-0/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
(Object: RoleManager)
File /usr/local/zope/2-2-0/lib/python/ZPublisher/Publish.py, line 171, in
publish
File /usr/local/zope/2-2-0/lib/python/ZPublisher/mapply.py, line 160, in
mapply
(Object: manage_editProperties)
File /usr/local/zope/2-2-0/lib/python/ZPublisher/Publish.py, line 112, in
call_object
(Object: manage_editProperties)
File /usr/local/zope/2-2-0/lib/python/Products/Etailer/OrderManager.py,
line 136, in manage_editProperties
(Object: RoleManager)
File /usr/local/zope/2-2-0/lib/python/App/special_dtml.py, line 120, in
__call__
(Object: testemail)
File /usr/local/zope/2-2-0/lib/python/DocumentTemplate/DT_String.py, line
528, in __call__
(Object: testemail)
File /usr/local/zope/2-2-0/lib/python/Products/MailHost/SendMailTag.py,
line 188, in render
(Object: MailHost)
File /usr/local/zope/2-2-0/lib/python/Products/MailHost/MailHost.py, line
220, in send
(Object: MailHost)
File /var/tmp/python/python-root/usr/lib/python1.5/smtplib.py, line 465,
in sendmail
File /var/tmp/python/python-root/usr/lib/python1.5/smtplib.py, line 349,
in mail
File /var/tmp/python/python-root/usr/lib/python1.5/smtplib.py, line 118,
in quoteaddr
File /var/tmp/python/python-root/usr/lib/python1.5/rfc822.py, line 451, in
parseaddr
File /var/tmp/python/python-root/usr/lib/python1.5/rfc822.py, line 496, in
getaddrlist
File /var/tmp/python/python-root/usr/lib/python1.5/rfc822.py, line 504, in
getaddress
File /var/tmp/python/python-root/usr/lib/python1.5/rfc822.py, line 484, in
gotonext
TypeError: len() of unsized object
-->
The source for my DTML method:
To: <>
From: <>
Subject: Test email from
Hi,
This is a test email from your online shop.
If you have received this email, then you will also receive an email for
each of the orders that are placed at your online store.
From rroeber@unlserve.unl.edu Mon Oct 2 17:47:51 2000
From: rroeber@unlserve.unl.edu (Ronald L. Roeber)
Date: Mon, 2 Oct 2000 11:47:51 -0500
Subject: [Zope] Zope Dies with FastCGI
In-Reply-To: <00092909360005.17524@tokey.kedai.com.my>
Message-ID: <000301c02c90$80dc2e00$9968fea9@rroeber.unl.edu>
> >
> > Two types of messages:
> >
> > First in its death throws:
> > [Wed Sep 27 16:54:08 2000] [error] [client 192.168.2.52] FastCGI: comm
> > with server "apache_server_path/htdocs/zope" aborted: idle timeout (30
> > sec)
> >
> > And later when its all over:
> > [Thu Sep 28 08:07:11 2000] [error] [client 192.168.2.52] (111)Connection
> > refused
> >
> > : FastCGI: failed to connect to server "apache_server_path/htdocs/zope":
> >
> > connect() failed
> >
> > It will run fine for quite some time but then it dies.
> > There are no other refereces to zope in the error logs.
> > I am looking into possible network issues.
> > I will likely try daemontools this weekend.
> >
> i've seen this problem only when there's a lot of connection;s
> usually more
> than 100 connections at any one time. to test this out, maybe
> you can use
> apache ab and step up until something breaks.
I can't seem to break it...
ab -n 1500 -c 300
I get the same errors as in my original posting but Zope doesn't die. I left
it alone after these tests and it died about 25 minutes later with noone
using it. (its behind a firewall)
This weekend I installed daemontools and can keep it running or at least
restart it.
The problem is most definitely not with load. I probably has to do with the
way I have (mis)configured it. But for the life of me I can't see what it
would be.
Another odd thing with this set up is that some page requests from Netscape
4.x clients are very slow for what they are doing. IE and the new Mozilla
engine are lightening fast...same page. Doesn't matter what platform of
Netscape(*nix, Windows,Mac). The EventFolder product is the most obvious
case. It locks Netscape for minutes while IE and Moz browsers
load the page just fine.
I will try some other things. Thanks for the ideas.
>
> also, try setting fastcgiexternalserver with -appConnTimeout 0
>
Did this, doesn't seem to make a difference...
> tell us how it goes.
> > Thanks for your help.
> >
> > Ron...
> >
> > > > _______________________________________________
> >
> > _______________________________________________
> > Zope maillist - Zope@zope.org
> > http://lists.zope.org/mailman/listinfo/zope
> > ** No cross posts or HTML encoding! **
> > (Related lists -
> > http://lists.zope.org/mailman/listinfo/zope-announce
> > http://lists.zope.org/mailman/listinfo/zope-dev )
>
> --
>
> http://www.kedai.com.my/kk
> http://www.kedai.com.my/eZine
>
> if you SMELLLLLLL ... what the Rock is cookin
>
From Jerry.Spicklemire@IFLYATA.COM Mon Oct 2 18:02:26 2000
From: Jerry.Spicklemire@IFLYATA.COM (Spicklemire, Jerry)
Date: Mon, 2 Oct 2000 12:02:26 -0500
Subject: [Zope] FYI: Python product tutorial updated
Message-ID: <977A39E65CFCD3119ABF00D0B741D84973386A@innt-73.ata.com>
Hi Brian,
Regarding:
> I'd be very interested to hear any ideas you folks have
> on ways to help "make simple things simple" for development
> and to allow people to deal with complexity only as they
> begin to need it...
One of the features the stands when a newbies starts poking
around at Zope.org is the wealth of contributed modules.
Most of these were created as an aid to development, sort
of a "make the process of creating a complex thing into a
simpler process" approach.
However, it's kind of like all the goodies available for
Linux, or Perl, or Python itself, and any number of other
Open Source projects that have generated lot's of add-ons.
The problem is that finding time to try them all to see
which turn out to be useful is another kind of complexity
in itself.
It seems like the Zope community should be able to benefit
by leveraging all the great stuff that's there. On the other
hand, the sheer volume turns out to be a barrier.
I keep coming back to the notion of building a subset of the
most useful, solid, and well documented modules into a "core"
Zope distribution, so that they are available as "add"
options without lot's unzipping, restarting, etc.
Beyond that, a painless way to upgrade versions of all things
Zope would definitely encourage folks to keep up with
security fixes, and other improvements. Think about Debian's
and FreeBSD's update tools.
In order to get to the "consulting ware" vision of a more
productiive Zope, "out of the box", this is the kind of
thinking that needs to be adopted. We know there are
wonderful and astounding things that are possible if you
aren't afraid to get your hands dirty reading source code,
but most folks expect anything they need to do to be sitting
there waiting behind a menu option!
This sounds to me like a higher level of object creation,
Martijn Faassen's Formulator comes to mind, that can be
selected and integrated into an existing site that has
graphic standards already defined, which is itself another
high level object that could help. A Graphic Standards
"Template" that can be applied in the form of a "wrapper",
and can be adjusted trough a forms based interface with
options for colors, type style, background images, etc.
Thanks,
Jerry S.
From thaths@netscape.com Mon Oct 2 18:21:00 2000
From: thaths@netscape.com (Sudhakar Chandra)
Date: Mon, 02 Oct 2000 10:21:00 -0700
Subject: [Zope] [Q] Generating a dynamic navigation bar...
References: <39D4D460.C287D0DC@netscape.com> <39D5EA93.A6891A8B@berg.net>
Message-ID: <39D8C3FC.BFE7AE74@netscape.com>
Maik Roeder proclaimed:
> Sudhakar Chandra wrote:
> > Questions:
> > 1. The problem with this DTML method is that all the DTML Documents and
> > Folders are represented as a link in the nav bar. I want to build
> > intelligence into this DTML method to make the tab / cell for the current
> > document just textual (as opposed to a link). If I am calling this method
> > from foo_html, I do not the "tab" for foo_html to be a link. How do I do
> > this? I'm guessing some kind of #if.
>
> First you can store the your url:
>
>
>
> Then, when you call your method, you can test whether your
> url is the current url
>
>
>
> The must be another way of doing this, but I can't remember. Does
> someone else see how this could be done differently ?
Thanks. It took a bit of hackage on my part because I was calling the
subcategories DTML Method like so:
As you can see, I'm in a different name space inside the DTML method. I
put in the REQUEST.set in the main DTML Document instead of the DTML method
and it worked like a charm. Only pain now is that all my DTML Documents
now need to have the REQEST.set directive in them. Not a big deal.
> > 2. Currently, the TD cells of the table vary in length based on the
> > contents of the cell. I want all the TDs to be of equal length. I want to
> > first count the number of DTML Documents and Folders and make each TD to be
> > width 100/n % (where n is the number of Documents and Folders). Any ideas
> > on how I can do math inside DTML methods?
> You can set a REQUEST variable with the result of your computation:
>
This worked like a charm. Thanks!
S.
--
Lisa: It's full, Dad, that means you have to take out the trash.
Bart: Yup, that's the rule. "He who tops it off, drops it off."
Homer: Nuh-uh. "It isn't filled until it's spilled."
Sudhakar C13n http://www.aunet.org/thaths/ Lead Indentured Slave
From ckant@fazenda.gov.br Mon Oct 2 18:49:41 2000
From: ckant@fazenda.gov.br (=?iso-8859-1?Q?C=E9sar?= A. K. Grossmann)
Date: Mon, 02 Oct 2000 14:49:41 -0300
Subject: [Zope] Passing parameters to methods - how to?
References: <39D64D7F.8FA11F0C@rotnet.com.br> <39D65A14.27107C0B@berg.net>
Message-ID: <39D8CAB5.DC46529B@fazenda.gov.br>
Maik Roeder wrote:
>
> > Clicking in the "submit" button, it gives me an error, telling that
> > 'username' is not defined. So I included an hidden field with
> > name="username" and value="", but I'm thinking this
> > is not the better way to do that...
>
> To my knowledge, it's the only way to do it, and if it works, why bother ?
And from the first link, there are a way to include such a hidden field
when calling a link? That is the real question: how to substitute the
'someuser' using
hidden fields? ManageUserProperties is an DTML method, and are
differents calls, with differents usernames in the same page (if I put a
hidden field it's value will be the same to all the calls to the DTML
Method in question).
I'm thinking that maintaining some "session attributes" in a cookie is
another idea, and sustitute the direct call to the method to a call to a
JavaScript, but I don't want to use the most complicated method...
[]s
--
+---------------------------------+---------------------------------+
| César A. K. Grossmann | Capacitação Solidária |
| ckant@fazenda.gov.br | http://www.uol.com.br/umminuto/ |
| http://members.xoom.com/ckant/ | Clique e doe - é de graça |
+---------------------------------+---------------------------------+
http://www.halcyon.com/sciclub/cgi-pvt/instr/instr.html
If you know the answer to a question, don't ask.
-- Petersen Nesbit
From shane@digicool.com Mon Oct 2 18:58:41 2000
From: shane@digicool.com (Shane Hathaway)
Date: Mon, 02 Oct 2000 13:58:41 -0400
Subject: [Zope] Hotfix_2000-10-02
Message-ID: <39D8CCD1.A0F6087A@digicool.com>
http://www.zope.org/Products/Zope/Hotfix_2000-10-02/Hotfix_2000-10-02.tar.gz
This hotfix addresses an important security issue that affects
Zope versions 2.2.0, 2.2.1, and 2.2.2.
It is sometimes possible to access, through a URL only, objects
protected by a role which the user has in some context, but not
in the context of the accessed object.
Currently, the validate() method of all known user folder
implementations validates against the users' roles in the context
of PARENTS[0]. PARENTS[0] refers to the acquisition context of the
object being published. All security checks, however, should check
an object's containment, not its acquisition context.
validate(), therefore, needs to verify the user's roles in the
context of the object being published. This hotfix forces that to
occur by temporarily leaving the object at PARENTS[0] then
removing it after validation has been performed.
Unfortunately, this is not an ideal correction. In the near future
all user folder validate() implementations need to perform security
checks using the new Zope security policy subsystem. Until that is
completed, this
hotfix should close the security problem.
While we know of no instances of this issue being used to exploit a
site, we recommend that any Zope 2.2.x site that is accessible by
untrusted clients have this hotfix product installed to mitigate the
issue.
The hotfix will work for all versions of Zope 2.2.0 and higher. A
future version of Zope will contain the fix for this
issue, and you will be able to uninstall the hot fix after upgrading.
From sebbacon@email.com Mon Oct 2 19:17:17 2000
From: sebbacon@email.com (seb)
Date: Mon, 02 Oct 2000 19:17:17 +0100
Subject: [Zope] FYI: Python product tutorial updated
References:
Message-ID: <39D8D12D.2E5DDA80@email.com>
> I'd be very interested to hear any ideas you folks have
> on ways to help "make simple things simple" for development
> and to allow people to deal with complexity only as they
> begin to need it...
I entirely agree with Jerry's points about the standard zope
distribution. There are various architecture / grammar / security
issues that need to be adressed in Zope. However, I believe a much
higher priority should be given to a rationalised set of
documentation, plus a core set of products and templates, to be included
with the standard Zope distribution. It
should be easier to upgrade or add modules; I read a suggestion
somewhere that a product standard should be produced, to which all
products must conform (package layout, etc).
Here's my thoughts in more detail, FWIW:
Who are the target users of zope? My personal take is:
1) application developers (in the unzoped world, java, php, perl
hackers)
2) interface developers (html coders, designers)
3) content managers
I've been using zope for about a month now, (and *thinking* about using
it for more than a year!) and my thoughts on
simplicity for these users are:
1) application developers
Application developers should *expect* a steep initial learning curve.
Even python took me a little while to get my head round, but it was
worth it. PHP is only easy because it follows a paradigm that people
have learned elsewhere. There's no point trying to shield application
developers from the complexity of zope. But we need to hold their hand
until they can do it by themselves.
The _ONLY_ hurdle to my zope enlightenment is (surprise) the
documentation. In particular, what consistently holds me back is the
lack of api documentation. I'd like to see something like javadoc-style
API descriptions. I know, it's open source, I could do it myself. I
know, I'm covering old ground. But I can't state enough how immensely
frustrating it is to spend 5 hours trying to work out how to do
something that you *know* you could do in 5 minutes in PHP. I don't
know much about the ZDP and I'm sure they're putting in a lot of effort,
but my feeling is that it is _very_much_ in the best interests of DC to
promote a decent set of references.
Even something as simple as repackaging the ZQR and including it in the
standard distribution would be a start. When I get some time I'd love
to help with this.
2) dtml is too much like a programming language and I'm finding it a big
effort to abstract the logic away from DTML sufficiently. Interface
developers want "" rather than "...", etc, in their HTML. The mechanisms for doing
this are already present in zope but the onus is too much on the
application designer to come up with ways of doing this. I always end
up doing application logic in DTML documents because it's easier (and
_quicker_) than spending a while coming up with an abstract design and
then coding it all in python and loading it as External methods and then
having to debug it all. Efforts like ZPatterns and the PTK are the way
forward here: toolkits and design patterns that make common tasks
easier. A project to come up with patterns and toolkits for common
template-building tasks would be valuable. It should also be easier for
application developers to create custom DTML tags. There should be a
simple way to package tags and install tags, and then a library could be
started on zope.org. For example, a question recently posed on the
mailing list was how to include the contents of another web page in your
own document. The obvious answer is an External method - however,
wouldn't it be neater to encapsulate this functionality in a tag? (i'm
sure this debate has been worked through before...)
> ... A Graphic Standards
> "Template" that can be applied in the form of a "wrapper",
> and can be adjusted trough a forms based interface with
> options for colors, type style, background images, etc.
>
3) I understand skinnable CMS interfaces are on their way. At the
moment I have to re-code the whole management interface from the bottom
up for each client, which is a real drag. I'm really looking forward to
this feature.
Seb
From jfarr@real.com Mon Oct 2 19:23:11 2000
From: jfarr@real.com (Jonothan Farr)
Date: Mon, 2 Oct 2000 11:23:11 -0700
Subject: [Zope] How to use manage_addLocalFS
References: <000801c02c12$d597c220$0300a8c0@windows>
Message-ID: <037801c02c9d$d2716bb0$416917ac@poly>
That should work. Can you post the traceback?
--jfarr
----- Original Message -----
From: "Grewen.de"
To:
Sent: Sunday, October 01, 2000 6:48 PM
Subject: [Zope] How to use manage_addLocalFS
Hi all,
I want to create an LocalFS object.
I use but that doesn´t work.
Simular to
Any ideas?
May I have to use a externel methode like in the mail I posted before?
From luis.mateos@MatraNortel.com Mon Oct 2 19:56:43 2000
From: luis.mateos@MatraNortel.com (Mateos, Luis)
Date: Mon, 2 Oct 2000 20:56:43 +0200
Subject: [Zope] Reusing images from properties menu
Message-ID: <200010021905.VAA07115@jupiter.matranortel.com>
Hello all!
I'm trying to reuse property values to add images dynamically. In other words, when selecting values from a multiple selection in the properties menu, like English, French, Spanish..., will add the respective image flag into a search results page for example. At times, it could be more than one image... I tried to use "dtml-var image" as a value and it didn't work, then i tried using the "img src" tag and it work using a string but it didn't when using a multiple selection. Could somebody feed me on how to reuse images from the properties menu? Or whether there are some other better options to get the same job done?!
Thanks in advance,
Luis
From darcyc@engin.umich.edu Mon Oct 2 20:51:51 2000
From: darcyc@engin.umich.edu (Darcy Clark)
Date: Mon, 2 Oct 2000 15:51:51 -0400
Subject: [Zope] FYI: Python product tutorial updated
Message-ID: <4036A094D96A9549A6D6CCD979F1F3630C24CE@engin-mail2.ad.engin.umich.edu>
Brian,
thanks for the reply ... I am currently more hopeful and feeling a little
better about the amount of time and effort that I have put into Zope;
knowing that the Zope book is coming also helps a lot. As someone else on
the list replied, the obscurity problem will be partially solved with the
book and others that will hopefully follow. I am in particular looking
forward to some case studies that show how to use *and* why you should use
some of the more complex Zope functionality.
After being immersed in Zope for so long (about a year), I decided it was
time to take a survey of the other tools out there - after doing a quick
survey, I came away still unimpressed with most of them. I still think Zope
requires more conceptual understanding (Zen?) that the other tools, but I'm
still convinced that these concepts, many of which I am still yet to fully
understand, offer far deeper and more elegant solutions to web development
problems than the majority of the other tools.
It's going to be tricky to achieve "optional complexity" - but that is
exactly the nature of Zope. There are several levels or layers of Zen -
after reaching each layer new potential ways to solve problems become
possible. For instance, I know enough DTML and SQL to implement most of the
functionality that I need and I have been writing my own ZClasses also. But
I don't yet fully grasp the full possibilities of the Catalog, and
Python/External Methods and I have had no luck getting any of the
alternative User/Membership systems to work for me. These latter
concepts/tools constitute my next level of complexity.
Anyway, that's just my 2 cents ....
Darcy
> -----Original Message-----
> From: Brian Lloyd [mailto:brian@digicool.com]
> Sent: Monday, October 02, 2000 11:23 AM
> To: Darcy Clark; zope@zope.org
> Subject: RE: [Zope] FYI: Python product tutorial updated
>
>
> > This tutorial looks great...it explained a lot of things to me
> > that I wasn't
> > able to put together before.
> >
> > But...on looking at it, a nagging thought keep recurring...this
> > is a really
> > quite long and complicated process for a Poll product. As
> much as I like
> > Zope and thing it is a great platform on which to develop web
> > applications,
> > I often wonder about the complexity and obscurity of some of the
> > procedures
> > that need to executed while making what are, on the face of it,
> > often quite
> > simple web objects or applications. Consequently I have honestly
> > had quite a
> > hard time convincing PHP-savvy colleagues that the path to
> Zope Zen is
> > something worth starting on. Does anyone else experience
> these nagging
> > doubtful thoughts occasionally ?
>
> I think yours is a valid criticism. Zope provides the
> infrastructure to do a lot of powerful and complex things,
> with the downside that (currently) as a developer a lot of
> the details are "in your face". One major goal I have for
> Zope going forward is to strive for "optional complexity" -
> not only for day-to-day use of Zope but also for component
> developers.
>
> I'd be very interested to hear any ideas you folks have
> on ways to help "make simple things simple" for development
> and to allow people to deal with complexity only as they
> begin to need it...
>
>
> Brian Lloyd brian@digicool.com
> Software Engineer 540.371.6909
> Digital Creations http://www.digicool.com
>
>
>
From dieter@handshake.de Mon Oct 2 21:39:04 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Mon, 2 Oct 2000 22:39:04 +0200 (CEST)
Subject: [Zope] ZopeTime().Date() confusion
In-Reply-To: <70420886@toto.iv>
Message-ID: <14808.61734.808117.717671@lindm.dm>
Larry Albert writes:
> ....
> I am using Zope 2.2.1. Every time the method updates, I update the date
> property called last_updated ....
> .... checking last update at least 1 day ago ....
"ZopeTime()" returns a "DateTime.DateTime" object.
Such objects can be substracted giving the difference
in days.
This means, you can use:
to set "last_updated" and
= 1">
to check that the last update is at least 1 day ago.
Dieter
From dieter@handshake.de Mon Oct 2 21:32:52 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Mon, 2 Oct 2000 22:32:52 +0200 (CEST)
Subject: [Zope] sendmail tag strangeness
In-Reply-To: <68800227@toto.iv>
Message-ID: <14808.61477.749840.288959@lindm.dm>
Scott Burton writes:
> I have searched around about sendmail tag problems on the list and have
> found similar answers to my question. However none of them work.
> ...
>
> I pay close attention to not having any whitespace before the To: and From:
> headers.
>
> I receive this error from multiple SMTP hosts: 503 must have sender and
> recipient first
Is it possible that you installed ZDebug.
As several people on the list pointed out, ZDebug is incompatible
with "sendmail" (at least some ZDebug versions).
Dieter
PS: I do not like Mime mails in this list, because the stupid
mailman installation discards Mime headers in the digest.
As a consequence, my mail reader is unable to decode
such messages :-(
From steve@spvi.com Mon Oct 2 22:21:54 2000
From: steve@spvi.com (Steve Spicklemire)
Date: Mon, 2 Oct 2000 16:21:54 -0500 (EST)
Subject: [Zope] Zope bug collector on zope.org available?
In-Reply-To:
References:
Message-ID: <200010022121.QAA54340@mercury.spvi.com>
Hi J.,
Is this what you're looking for?
http://www.zope.org//Members/klm/TrackerWiki/TrackerCVSInstructions
-steve
>>>>> "J" == J Atwood writes:
J> http://classic.zope.org:8080/Collector/
J> Does anyone know what product this is and if it is available
J> for download? I am looking for something that is similar to
J> BugZilla.
J> Ethan? Paul? Anyone?
J> Thanks, J
J> _______________________________________________ Zope maillist -
J> Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No
J> cross posts or HTML encoding! ** (Related lists -
J> http://lists.zope.org/mailman/listinfo/zope-announce
J> http://lists.zope.org/mailman/listinfo/zope-dev )
From mindlace@digicool.com Mon Oct 2 22:34:38 2000
From: mindlace@digicool.com (ethan mindlace fremen)
Date: Mon, 02 Oct 2000 17:34:38 -0400
Subject: [Zope] zope.org issues
Message-ID: <39D8FF6E.3C5E00CC@digicool.com>
Zopatistas,
zope.org is currently having some difficulties that can kill the
server. We're working on them.
Thanks,
~ethan
From jatwood@bwanazulia.com Mon Oct 2 23:11:57 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Mon, 02 Oct 2000 18:11:57 -0400
Subject: [Zope] Zope bug collector on zope.org available?
In-Reply-To: <200010022121.QAA54340@mercury.spvi.com>
Message-ID:
Hey Steve,
Exactly. It is really full-featured. I am impressed.
Thanks,
J
> From: Steve Spicklemire
> Reply-To: steve@spvi.com
> Date: Mon, 2 Oct 2000 16:21:54 -0500 (EST)
> To: jatwood@bwanazulia.com
> Cc: zope@zope.org
> Subject: Re: [Zope] Zope bug collector on zope.org available?
>
>
> Hi J.,
>
> Is this what you're looking for?
>
> http://www.zope.org//Members/klm/TrackerWiki/TrackerCVSInstructions
>
> -steve
>>>>>> "J" == J Atwood writes:
>
> J> http://classic.zope.org:8080/Collector/
>
> J> Does anyone know what product this is and if it is available
> J> for download? I am looking for something that is similar to
> J> BugZilla.
>
> J> Ethan? Paul? Anyone?
>
> J> Thanks, J
>
>
> J> _______________________________________________ Zope maillist -
> J> Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No
> J> cross posts or HTML encoding! ** (Related lists -
> J> http://lists.zope.org/mailman/listinfo/zope-announce
> J> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
From curtis@cardgate.net Mon Oct 2 23:27:12 2000
From: curtis@cardgate.net (Curtis Maloney)
Date: Tue, 3 Oct 2000 09:27:12 +1100
Subject: [Zope] 'websafe' colours
In-Reply-To: <39D850CB.B88DBB0A@nipltd.com>
References: <001b01c02b35$67513450$01d4a8c0@peppe> <00100210275606.02655@localhost.localdomain> <39D850CB.B88DBB0A@nipltd.com>
Message-ID: <0010030927120A.02655@localhost.localdomain>
On Mon, 02 Oct 2000, Chris Withers wrote:
> Curtis Maloney wrote:
> > According to a recent study, there are approximately 13 'web safe'
> > colours, out of the full 16,777,216. Can you be bothered restricting
> > yourself to support the 'lowest common denominator' ?
>
> What makes the other 15,777,203 'unsafe'?
>
As I understand it, it's due to system palettes. On low colour machines (256
or even 16colour) some colours are reserved for the system GUI so that you
can match the 'theme', leaving you with fewer than the full capacity of the
display you are using.
Admittedly, since most people these days are running 15bit or higher colour
depths, and non-paletted video modes, for the majority of users this isn't a
problem. (Thus my 'lowest common denominator' comment.)
The only other possible reason I can recall is that some of the 'named'
colours are not supported by all browsers, or are not interpreted the same.
> cheers,
>
> Chris
Have a better one,
Curtis
From dario@ita.chalmers.se Mon Oct 2 23:55:45 2000
From: dario@ita.chalmers.se (Dario Lopez-Kästen)
Date: Tue, 3 Oct 2000 00:55:45 +0200
Subject: [Zope] Fw: [cms-list] eMedicine, Inc. Receives Patent for Internet Publishing Software
Message-ID: <004601c02cc4$1dad1b30$2135b5d4@ita.chalmers.se>
as seen on cms list. Would this affect Zope in any way?
/dario
----- Original Message -----
>From: "Evan Williams"
>
> Interesting:
> -----------------------------
> Information Today: http://www.infotoday.com/it/oct00/news14.htm
> "eMedicine, Inc. (http://www.emedicine.com), the medical-education network
> and developer of the first online peer-reviewed medical reference series,
> has announced that the U.S. Patent and Trademark Office has granted a
patent
> to the company's proprietary Group Publishing System (GPS) software. The
GPS
> enables collaborative, enterprisewide publishing and allows authors and
> editors to create large, multi-author projects-online content, journals,
> books, and manuals-entirely on the Internet.
> "Jeff Berezin, chief technical officer and architect of the GPS system,
> said: 'The software is unique-it is the only enterprise software that
allows
> all production to take place on the Internet. The system allows authoring
> and editing within the GPS environment or through word-processing programs
> like Word.' Software engineer Joanne Berezin, who co-developed the system,
> said, 'Our system is a complete authoring, editing, and version-control
> system with complete management-tracking tools and a built-in
communications
> network.'"
> -----------------------------
>
> --------------------------
> Subscribe: http://www.camworld.com/cms/
> More Info: http://cms.filsa.net/
> Post: cms-list@camworld.com
>
From tseaver@digicool.com Tue Oct 3 01:53:40 2000
From: tseaver@digicool.com (Tres Seaver)
Date: Mon, 02 Oct 2000 20:53:40 -0400
Subject: [Zope] Zope bug collector on zope.org available?
References: <200010021900.MAA25416@zope.codeit.com>
Message-ID: <39D92E14.28F5EF4C@digicool.com>
"J. Atwood" asked:
>
> http://classic.zope.org:8080/Collector/
>
> Does anyone know what product this is and if it is available for download? I
> am looking for something that is similar to BugZilla.
>
> Ethan? Paul? Anyone?
The Collector is an *ancient* piece of software -- you probably want
Ken Mannheimer's Tracker::
http://www.zope.org/Members/klm/TrackerWiki
Tres.
--
===============================================================
Tres Seaver tseaver@digicool.com
Digital Creations "Zope Dealers" http://www.zope.org
From twcook@iswt.com Tue Oct 3 04:14:41 2000
From: twcook@iswt.com (Tim Cook)
Date: Mon, 02 Oct 2000 22:14:41 -0500
Subject: [Zope] Fw: [cms-list] eMedicine, Inc. Receives Patent for Internet
Publishing Software
References: <004601c02cc4$1dad1b30$2135b5d4@ita.chalmers.se>
Message-ID: <39D94F21.E0E4D38A@iswt.com>
"Dario Lopez-Kästen" wrote:
>
> as seen on cms list. Would this affect Zope in any way?
Standard IANAL disclaimer. But, I read the patent. It looks like
Zope is okay. You just can't build an application on it (or
anything else where multiple people edit the same document
online). Watch ZWiki!!!!
:-)
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
From lalo@hackandroll.org Tue Oct 3 05:03:48 2000
From: lalo@hackandroll.org (Lalo Martins)
Date: Tue, 3 Oct 2000 02:03:48 -0200
Subject: [Zope] Fw: [cms-list] eMedicine, Inc. Receives Patent for Internet Publishing Software
In-Reply-To: <39D94F21.E0E4D38A@iswt.com>; from twcook@iswt.com on Mon, Oct 02, 2000 at 10:14:41PM -0500
References: <004601c02cc4$1dad1b30$2135b5d4@ita.chalmers.se> <39D94F21.E0E4D38A@iswt.com>
Message-ID: <20001003020348.B27959@hackandroll.org>
On Mon, Oct 02, 2000 at 10:14:41PM -0500, Tim Cook wrote:
> "Dario Lopez-Kästen" wrote:
> >
> > as seen on cms list. Would this affect Zope in any way?
>
> Standard IANAL disclaimer. But, I read the patent. It looks like
> Zope is okay. You just can't build an application on it (or
> anything else where multiple people edit the same document
> online). Watch ZWiki!!!!
So wouldn't the original WikiWikiWeb be prior art?
[]s,
|alo
+----
--
Hack and Roll ( http://www.hackandroll.org )
News for, uh, whatever it is that we are.
http://zope.gf.com.br/lalo mailto:lalo@hackandroll.org
pgp key: http://zope.gf.com.br/lalo/pessoal/pgp
Brazil of Darkness (RPG) --- http://zope.gf.com.br/BroDar
From twcook@iswt.com Tue Oct 3 06:07:25 2000
From: twcook@iswt.com (Tim Cook)
Date: Tue, 03 Oct 2000 00:07:25 -0500
Subject: [Zope] Fw: [cms-list] eMedicine, Inc. Receives Patent for Internet
Publishing Software
References: <004601c02cc4$1dad1b30$2135b5d4@ita.chalmers.se> <39D94F21.E0E4D38A@iswt.com> <20001003020348.B27959@hackandroll.org>
Message-ID: <39D9698D.81ED236E@iswt.com>
Lalo Martins wrote:
> > anything else where multiple people edit the same document
> > online). Watch ZWiki!!!!
>
> So wouldn't the original WikiWikiWeb be prior art?
I would think there is a lot of prior art. What I wrote above
should have been enclosed in tags. :)
After citing several other patents there big key is supposed to
be not ahving to download a version of the document and work on
it locally and then upload it again. Also I noticed that their
software only works (according to them) with Mac & MS OS's. I
guess DC should file for a patent based on total cross-platform
use!
Our patent office doesn't have a clue and doesn't seem to
research very much either. It's becoming worse than useless. One
of the developers that frequents the openhealth mailing lists
recently indicated that he had been contacted because he
supposedly infringed on someones patent. No details yet but he
indicated that it was some basic implementation that many
developers have done before.
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
From twcook@iswt.com Tue Oct 3 06:14:58 2000
From: twcook@iswt.com (Tim Cook)
Date: Tue, 03 Oct 2000 00:14:58 -0500
Subject: [Zope] ZClasses & UserFolders
Message-ID: <39D96B52.EFFB9450@iswt.com>
Is there a reason I can't add a UserFolder (and subsequently
users) to an instance of a ZClass that is sub-classed from
Folder?
I do not get any errors. But the acl_users folder is not in the
instance and the user gets added in the next acl_users up the
aquisition chain.
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
From sebbacon@email.com Tue Oct 3 10:07:29 2000
From: sebbacon@email.com (seb)
Date: Tue, 03 Oct 2000 10:07:29 +0100
Subject: [Zope] Passing parameters to methods - how to?
References: <39D64D7F.8FA11F0C@rotnet.com.br> <39D65A14.27107C0B@berg.net> <39D8CAB5.DC46529B@fazenda.gov.br>
Message-ID: <39D9A1D1.2B4C4D7B@email.com>
"César A. K. Grossmann" wrote:
>
> Maik Roeder wrote:
> >
> > > Clicking in the "submit" button, it gives me an error, telling that
> > > 'username' is not defined. So I included an hidden field with
> > > name="username" and value="", but I'm thinking this
> > > is not the better way to do that...
> That is the real question: how to substitute the
> 'someuser' using
> hidden fields? M
> I'm thinking that maintaining some "session attributes" in a cookie is
> another idea, and sustitute the direct call to the method to a call to a
> JavaScript, but I don't want to use the most complicated method...
There are only two ways of doing this:
1) hidden form inputs
2) cookies
3) session variables (kind of like number 2)
Using the former solution, you can make your link be the submit button
for the form, either by using Javascript (yuk: someuser) or by
making it a graphical button rather than a text link ( as far as I remember, but I might be
wrong).
Why use javascript to access cookies? You can set and get them purely
using zope. http://www.zope.org/Members/BwanaZulia/cookies. Also, why
not install a session product (HappySession, FSSession, SQLSession...),
it'll probably make your life easier in the long run...
seb
From chrisw@nipltd.com Tue Oct 3 10:15:04 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Tue, 03 Oct 2000 10:15:04 +0100
Subject: [Zope] Off Topic: Patent Offices
References: <004601c02cc4$1dad1b30$2135b5d4@ita.chalmers.se> <39D94F21.E0E4D38A@iswt.com> <20001003020348.B27959@hackandroll.org> <39D9698D.81ED236E@iswt.com>
Message-ID: <39D9A398.27DF2975@nipltd.com>
Tim Cook wrote:
>
> Our patent office doesn't have a clue and doesn't seem to
> research very much either.
Name me one that does ;-)
Chris
From tom.deprez@uz.kuleuven.ac.be Tue Oct 3 10:54:54 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Tue, 03 Oct 2000 11:54:54 +0200
Subject: [Zope] Guidelines for showing most exciting things of Zope?
Message-ID: <3.0.6.32.20001003115454.0092cda0@poirot>
Hi,
When I tell people about Zope and give a demo, at the end, I always realise
that I could have told this and that and that I forgot this and that. Now,
has somebody already prepared some things which could be used as a
practical guideline when presenting Zope to outsiders? If not, what do you
think would need to be told to convince people that it's worth looking at
it by themselfs?
Do people think such a practical guideline would be usefull?
Tom.
From Danny@Adair.net Tue Oct 3 11:24:46 2000
From: Danny@Adair.net (Danny William Adair)
Date: Tue, 3 Oct 2000 12:24:46 +0200
Subject: [Zope] Access problems
Message-ID:
Hi all!
I have a serious and extremely urgent problem concerning my zope
installation (2.2.1 on Unix): Whatever resource I'm trying to access, I get
the following
---------------
Attribute Error
---------------
Traceback (innermost last):
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 222, in publish_module
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 187, in publish
File /home/sites/site3/users/.../2-2-1/lib/python/Zope/__init__.py, line
221, in zpublisher_exception_hook
(Object: ApplicationDefaultPermissions)
File /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/Publish.py,
line 162, in publish
File
/home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py, line
438, in traverse
File
/home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py, line
514, in old_validation
(Object: broken)
AttributeError: (see above)
Furthermore, I have to authenticate on _every_ occasion, even with objects I
know are totally available to Anonymous.
After (http) authentication I get the above mentioned attribute error.
I'm clueless. What is this about?
Thanking you so much in advance,
Prost,
Danny
P.S.: Of course I can't recall doing anything rude to my installation,
actually I can't recall doing _anything_. (What they all say)
From Aitor.Grajal@teleline.es Tue Oct 3 11:39:05 2000
From: Aitor.Grajal@teleline.es (Aitor Grajal)
Date: Tue, 03 Oct 2000 12:39:05 +0200
Subject: [Zope] SiteRoot, can i do?????
Message-ID: <200010031239050003.0099451F@mailhost.teleline.es>
--=====_97056954541=_
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Hello, I'm trying do that SiteRoot can this :
If somebody put 'http://xyz.mydomain.com/Zope" -> The SiteRoot put in all=
links 'http://xyz.mydomain.com/Zope"
but if if somebody put 'https://xyz.mydomain.com/Zope" -> The SiteRoot put=
in all links 'https://xyz.mydomain.com/Zope" .
The second is the new, so can access for http o https at the same contens,=
and this is very nice.
My idea is change the source code of Site Root.
It=B4s possible ??
Somebody can help my?
Thanks
--=====_97056954541=_
Content-Type: text/html; charset="us-ascii"
Hello, I'm trying do that SiteRoot can this :
If somebody put 'http://xyz.mydomain.com/Zope" -> The SiteRoot put in
all links 'http://xyz.mydomain.com/Zope"
but if if somebody put 'https://xyz.mydomain.com/Zope" -> The
SiteRoot put in all links 'https://xyz.mydomain.com/Zope" .
The second is the new, so can access for http o https at the same contens,
and this is very nice.
My idea is change the source code of Site Root.
It´s possible ??
Somebody can help my?
Thanks
--=====_97056954541=_--
From juliodinis@hotmail.com Tue Oct 3 13:49:42 2000
From: juliodinis@hotmail.com (Júlio Dinis Silva)
Date: Tue, 03 Oct 2000 12:49:42 WEST
Subject: [Zope] script execution timeout?
Message-ID:
Hi all,
Is there a place to define a script execution timeout?
I've been using urllib and there is no way to kill a urllib.open
if its taking too long. Does zope has that implemented?
Best Regards,
Júlio Dinis Silva
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Share information about yourself, create your own public profile at
http://profiles.msn.com.
From magnus@websys.no Tue Oct 3 14:11:14 2000
From: magnus@websys.no (Magnus Alvestad)
Date: 03 Oct 2000 15:11:14 +0200
Subject: [Zope] 'websafe' colours
In-Reply-To: Curtis Maloney's message of "Tue, 3 Oct 2000 09:27:12 +1100"
References: <001b01c02b35$67513450$01d4a8c0@peppe> <00100210275606.02655@localhost.localdomain> <39D850CB.B88DBB0A@nipltd.com> <0010030927120A.02655@localhost.localdomain>
Message-ID:
[Curtis Maloney]
| As I understand it, it's due to system palettes. On low colour
| machines (256 or even 16colour) some colours are reserved for the
| system GUI so that you can match the 'theme', leaving you with fewer
| than the full capacity of the display you are using.
Actually the problem with many colours is that there is slight
difference between how they are shown in for example BGCOLOR and in a
gif. There was an article about this in the online version of Wired.
-Magnus
From sebbacon@email.com Tue Oct 3 13:19:16 2000
From: sebbacon@email.com (seb)
Date: Tue, 03 Oct 2000 13:19:16 +0100
Subject: [Zope] 'self' in external methods
References: <20000926001811.A651@rosa.sferacarta.com>
Message-ID: <39D9CEC4.32C712DC@email.com>
Hello,
Whenever I do a
> def play(self,sound):
> return sound
and a
>
I get a
> Error Type: TypeError
> Error Value: not enough arguments; expected 2, got 1
Now, I thought 'self' was passed _implicitly_, as explained in
http://www.zope.org/Documentation/How-To/ExternalMethods, but I'm
actually having to do a
>
to pass the context to 'self' in the External method. Explanations
gratefully received.
Thanks, seb.
From Petr.Hrasky@bnp-dresdner-bank.cz Tue Oct 3 13:19:00 2000
From: Petr.Hrasky@bnp-dresdner-bank.cz (Hrasky Petr)
Date: Tue, 3 Oct 2000 14:19:00 +0200
Subject: [Zope] database connection problem (halting Zope)
Message-ID:
Hello everybody,
I started to play with Zope in order to use it as intranet platform. For
this I need database access. I tried odbc and MySQL and got it working
fine. However we have some existing warehouse queries which take minutes
to complete. When I set up ZODBC connection and ZSQL method to access
such query, it halts all other Zope activities until it finishes. I
tried this both with NT Zope and Linux Zope, ODBC and MySQL DAs. As long
as the query runs, no other requests are serviced.
I understand that long query blocks database connection, but I thought
Zope is threaded, so it should run other requests not using this
database connection just fine, no? Could it be that the python binary
used is not compiled for threading? I spent yesterday afternoon and this
morning looking for solution to this problem on the net, but with no
luck yet.
Can anybody enlighten me why is that? And what can I do to fix this.
Otherwise I like Zope a lot. Easy, featured, just great.
Thanks in advance and
Best regards,
Petr Hrasky
--------------------------------------------
IT Department
BNP-Dresdner Bank (CR), a.s.
+420-2-57006474
From chrisw@nipltd.com Tue Oct 3 13:33:49 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Tue, 03 Oct 2000 13:33:49 +0100
Subject: [Zope] 'Offline' mailhost
References: <39D40049.28D21513@adroit.net> <39D40CCA.5398331@digicool.com>
Message-ID: <39D9D22D.BB48DFA6@nipltd.com>
Shane Hathaway wrote:
> I'm not sure how well MailHost scales, but you can certainly store
> thousands of names in a ZODB-managed list. Tests done for the
> BTreeFolder product prove it.
Sadly, I think MailHost doesn't scale too well :-(
What it'd need to do if you're sending the mail to a few thousand people
is to be non-blocking.
IIRC, currently, a method/page with a tag pair in it will only return when the
mail has been sent to all the recipients. So, if the mails going to lots
of people, the page takes ages to return.
This is the problem I had where our mail server was taking lots of time
to send messages (it was doing lots of stuff to make sure the address
was valid) so submitting posts on Squishdot.org was taking ages too.
What, IMHO, is really needed is a mailhost/sendmail tag type thing that
gets a message and a list of addresses to send it to. If it could do
that in a seperate thread/process/whatever so that whatever calls it
doesn't block, that'd be great. Of course, it'd need to have a 'hook
back' method provided so any errors that occured could be dealt with.
I wonder how mailman does this stuff and if the code could be borrowed
for Zope?
cheers,
Chris
From akm@mail.theinternet.com.au Tue Oct 3 13:35:05 2000
From: akm@mail.theinternet.com.au (Andrew Kenneth Milton)
Date: Tue, 3 Oct 2000 22:35:05 +1000
Subject: [Zope] 'self' in external methods
In-Reply-To: <39D9CEC4.32C712DC@email.com>; from seb on Tue, Oct 03, 2000 at 01:19:16PM +0100
References: <20000926001811.A651@rosa.sferacarta.com> <39D9CEC4.32C712DC@email.com>
Message-ID: <20001003223505.D97561@zeus.theinternet.com.au>
+-------[ seb ]----------------------
| Hello,
|
| Whenever I do a
| > def play(self,sound):
| > return sound
You don't define self as a parameter to an external method, so:
def play(sound):
will work fine in an external method.
--
Totally Holistic Enterprises Internet| P:+61 7 3870 0066 | Andrew Milton
The Internet (Aust) Pty Ltd | F:+61 7 3870 4477 |
ACN: 082 081 472 ABN: 83 082 081 472 | M:+61 416 022 411 | Carpe Daemon
PO Box 837 Indooroopilly QLD 4068 |akm@theinternet.com.au|
From sebbacon@email.com Tue Oct 3 13:44:13 2000
From: sebbacon@email.com (seb)
Date: Tue, 03 Oct 2000 13:44:13 +0100
Subject: [Zope] script execution timeout?
References:
Message-ID: <39D9D49D.2B6AA8F9@email.com>
> Is there a place to define a script execution timeout?
not in the urllib module.
Try setting an alarm using the signal module, wrapping the GET request
in a try clause, and then setting the alarm to 0 in the finally clause.
seb
From akm@mail.theinternet.com.au Tue Oct 3 13:32:44 2000
From: akm@mail.theinternet.com.au (Andrew Kenneth Milton)
Date: Tue, 3 Oct 2000 22:32:44 +1000
Subject: [Zope] database connection problem (halting Zope)
In-Reply-To: ; from Hrasky Petr on Tue, Oct 03, 2000 at 02:19:00PM +0200
References:
Message-ID: <20001003223243.C97561@zeus.theinternet.com.au>
+-------[ Hrasky Petr ]----------------------
| Hello everybody,
Hi..
| I understand that long query blocks database connection, but I thought
| Zope is threaded, so it should run other requests not using this
| database connection just fine, no?
You are correct, that should be the case.
| Could it be that the python binary used is not compiled for threading?
Perhaps, but, I think Zope will fail to start if your python does not
support threading.
| I spent yesterday afternoon and this
| morning looking for solution to this problem on the net, but with no
| luck yet.
|
| Can anybody enlighten me why is that? And what can I do to fix this.
It might be that the ODBC driver for MySQL is serialising all accesses
to MySQL (i.e. the MySQL ODBC driver is not threaded). This is a bit
of a guess though.
--
Totally Holistic Enterprises Internet| P:+61 7 3870 0066 | Andrew Milton
The Internet (Aust) Pty Ltd | F:+61 7 3870 4477 |
ACN: 082 081 472 ABN: 83 082 081 472 | M:+61 416 022 411 | Carpe Daemon
PO Box 837 Indooroopilly QLD 4068 |akm@theinternet.com.au|
From chrisw@nipltd.com Tue Oct 3 13:52:03 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Tue, 03 Oct 2000 13:52:03 +0100
Subject: [Zope] 'self' in external methods
References: <20000926001811.A651@rosa.sferacarta.com> <39D9CEC4.32C712DC@email.com> <20001003223505.D97561@zeus.theinternet.com.au>
Message-ID: <39D9D673.532FD8AC@nipltd.com>
Andrew Kenneth Milton wrote:
>
> +-------[ seb ]----------------------
> | Hello,
> |
> | Whenever I do a
> | > def play(self,sound):
> | > return sound
>
> You don't define self as a parameter to an external method, so:
>
> def play(sound):
>
> will work fine in an external method.
It's not as simple as that. The mechnism involved here is complex and
arguably broken.
This is becoming a FAQ, see the mailing list archives for previous
versions of this discussion which will provide all the detail.
cheers,
Chris
From twcook@iswt.com Tue Oct 3 14:13:13 2000
From: twcook@iswt.com (Tim Cook)
Date: Tue, 03 Oct 2000 08:13:13 -0500
Subject: [Zope] database connection problem (halting Zope)
References:
Message-ID: <39D9DB69.4EBC6E70@iswt.com>
> Could it be that the python binary
> used is not compiled for threading? I spent yesterday afternoon and this
Count on it. That's why the install instructions explain that
python isn't compiled with threads by default.
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
From owrede@khm.de Tue Oct 3 14:39:22 2000
From: owrede@khm.de (Oliver Wrede)
Date: Tue, 3 Oct 2000 15:39:22 +0200
Subject: [Zope] SiteAccess2 problem
Message-ID:
--============_-1241542131==_ma============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"
I am trying to use SiteAccess2 with a site which has imported
SiteAccess1 objects.
Whenever I try to open "Set access rule" I get this error (so I can't
set a new one or delete an existing one):
Zope Error
Zope has encountered an error while publishing this resource.
Error Type: AttributeError
Error Value: 'string' object has no attribute 'name'
------------------------------------------------------------------------
Troubleshooting Suggestions
* The URL may be incorrect.
* The parameters passed to this resource may be incorrect.
* A resource that this resource relies on may be encountering an error.
For more detailed information about the error, please refer to the
HTML source for this page.
If the error persists please contact the site maintainer. Thank you
for your patience.
Traceback (innermost last):
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line 222, in
publish_module
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line 187, in publish
File /www/zope/2.2.2/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line 171, in publish
File /www/zope/2.2.2/lib/python/ZPublisher/mapply.py, line 160, in mapply
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line 112, in
call_object
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/App/special_dtml.py, line 120, in __call__
(Object: www/AccessRuleAdd)
(Info:
/www/zope/2.2.2/lib/python/Products/SiteAccess/www/AccessRuleAdd.dtml)
File /www/zope/2.2.2/lib/python/DocumentTemplate/DT_String.py, line
528, in __call__
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/DocumentTemplate/DT_Util.py, line
337, in eval
(Object: manage_getAccessRule(this()))
(Info: manage_getAccessRule)
File , line 0, in ?
File /www/zope/2.2.2/lib/python/Products/SiteAccess/AccessRule.py,
line 76, in getAccessRule
(Object: Traversable)
AttributeError: (see above)
--
.. Oliver Wrede
.. owrede@khm.de
.. Academy of Media Arts, Cologne
.. Peter-Welter-Platz 2 . 50676 Koeln, Germany
.. http://www.khm.de
.. ICQ# 6580315
.. PGP 6.0 Fingerprint:
.. 922C FFA2 9A07 5B8E CB2A 10A2 C370 6A62 2232 196C
--============_-1241542131==_ma============
Content-Type: text/html; charset="us-ascii"
SiteAccess2 problem
I am trying to use SiteAccess2 with a site which has imported
SiteAccess1 objects.
Whenever I try to open "Set access rule" I get this
error (so I can't set a new one or delete an existing one):
Zope
Error
Zope has encountered an error while publishing this resource.
Error Type: AttributeError
Error Value: 'string' object has no attribute 'name'
*The URL may be
incorrect.
*The parameters passed
to this resource may be incorrect.
*A
resource that this resource relies on may be encountering an
error.
For more detailed information about the error, please refer to the
HTML source for this page.
If the error persists please contact the site maintainer. Thank you
for your patience.
Traceback (innermost last):
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line
222, in publish_module
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line
187, in publish
File /www/zope/2.2.2/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line
171, in publish
File /www/zope/2.2.2/lib/python/ZPublisher/mapply.py, line 160,
in mapply
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/ZPublisher/Publish.py, line
112, in call_object
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/App/special_dtml.py, line 120,
in __call__
(Object: www/AccessRuleAdd)
(Info:
/www/zope/2.2.2/lib/python/Products/SiteAccess/www/AccessRuleAdd.dtml)
File /www/zope/2.2.2/lib/python/DocumentTemplate/DT_String.py,
line 528, in __call__
(Object: www/AccessRuleAdd)
File /www/zope/2.2.2/lib/python/DocumentTemplate/DT_Util.py,
line 337, in eval
(Object: manage_getAccessRule(this()))
(Info: manage_getAccessRule)
File <string>, line 0, in ?
File
/www/zope/2.2.2/lib/python/Products/SiteAccess/AccessRule.py, line 76,
in getAccessRule
(Object: Traversable)
AttributeError: (see above)
--============_-1241542131==_ma============--
From chalaoux@cybercable.fr Tue Oct 3 14:27:02 2000
From: chalaoux@cybercable.fr (FR Chalaoux)
Date: Tue, 03 Oct 2000 15:27:02 +0200
Subject: [Zope] Looking for BSDI version of Zope
Message-ID: <39D9DEA6.DD49A6DE@cybercable.fr>
Hi,
I looking for a recent compiled Zope version running on BSDI/OS 4.0.1
with its python attached
Thanks, FR.
From Petr.Hrasky@bnp-dresdner-bank.cz Tue Oct 3 15:04:01 2000
From: Petr.Hrasky@bnp-dresdner-bank.cz (Hrasky Petr)
Date: Tue, 3 Oct 2000 16:04:01 +0200
Subject: [Zope] database connection problem (halting Zope)
Message-ID:
Hello,
thank you for answers. To clarify:
I run Zope-2.2.2/Linux2.2.14/MySQL-ZMySQLDA1.1.3nonbin at home and
Zope-2.2.2-binary/NT4.0Workstation/ZODBCDA3.1.0b2 (Oracle 8i ODBC,
Sybase11.5)at work. Oracle connection at work and MySQL (at home just
for testing) run looong queries and halt Zope. I have no such queries
for Sybase yet.
I will try to recompile python for linux, but I can't do so for WinNT
as I have no compiler. Anyway I thought the python distributed with
binary release of Zope is threaded, no?
So, does anybody know of either binary and threaded Zope driver for
Oracle , Sybase etc. or the same ODBC driver? And what is the state of
python threading on WinNT paltform?
Thanks,
Petr
-----Original Message-----
From: Tim Cook [mailto:twcook@iswt.com]
Sent: Tuesday, October 03, 2000 3:13 PM
To: Hrasky Petr
Cc: 'zope@zope.org'
Subject: Re: [Zope] database connection problem (halting Zope)
> Could it be that the python binary
> used is not compiled for threading? I spent yesterday afternoon and this
Count on it. That's why the install instructions explain that
python isn't compiled with threads by default.
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
_______________________________________________
Zope maillist - Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope-dev )
From zope@isp.lu Tue Oct 3 15:10:39 2000
From: zope@isp.lu (zope)
Date: Tue, 03 Oct 2000 16:10:39 +0200
Subject: [Zope] how to access the items of an array...
Message-ID: <4.3.2.7.2.20001003160431.00ae5710@mail.isp.lu>
Hi
In a form, I defined an array variable as follows:
After submitting the form, gives me following result:
['112', 'sef', 'fg', '23', 'iuiu', 'tz', 'fgh', 'fgh']
My question is now how to access the different items of that array?
Thanks a lot for your help.
Marc
From evan@4-am.com Tue Oct 3 15:43:35 2000
From: evan@4-am.com (Evan Simpson)
Date: Tue, 3 Oct 2000 10:43:35 -0400
Subject: [Zope] SiteAccess2 problem
References:
Message-ID: <004101c02d48$4f320fb0$3e48a4d8@digicool.com>
From: Oliver Wrede
> I am trying to use SiteAccess2 with a site which has imported
> SiteAccess1 objects.
Have you used Extensions/updata.py to upgrade these objects?
Cheers,
Evan @ digicool & 4-am
From bkc@murkworks.com Tue Oct 3 15:53:52 2000
From: bkc@murkworks.com (Brad Clements)
Date: Tue, 3 Oct 2000 10:53:52 -0400
Subject: [Zope] Only superuser can set Proxy on DTML methods?
Message-ID: <39D9BABF.24116.3B75549@localhost>
It seems that when I'm managing my website as a Manager (from
acl_users folder) I can not set a proxy role for a method or document. I
get "you do not have the proxy role" something like that.
But I can't see anywhere how to enable my userid to have this proxy
role.
So only the superuser can set the proxy role for a document. But once I
do that, I can't edit it anymore as Manager (expected)
So .. how can a Manager grant the proxy role on documents?
Brad Clements, bkc@murkworks.com (315)268-1000
http://www.murkworks.com (315)268-9812 Fax
netmeeting: ils://ils.murkworks.com AOL-IM: BKClements
From chrisw@nipltd.com Tue Oct 3 15:51:17 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Tue, 03 Oct 2000 15:51:17 +0100
Subject: [Zope] Only superuser can set Proxy on DTML methods?
References: <39D9BABF.24116.3B75549@localhost>
Message-ID: <39D9F265.62CEB365@nipltd.com>
Brad Clements wrote:
>
> It seems that when I'm managing my website as a Manager (from
> acl_users folder) I can not set a proxy role for a method or document. I
> get "you do not have the proxy role" something like that.
The wording is crap.
What it means is that the user object you are authenticated with must
have the role you are trying to give to the object by proxy.
...which makes sense if you think about it.
...but is frustrating if the role actually nothing to do with you, and
has less permissions that your role. For example, you, as someone with
only the Manager role, can't give a Customer proxy role to an object,
even though Customers can do much less than Managers, because you don't
have the Customer role. So, you have to go to acl_users and give
yourself the Customer role just to complete the operation, and then,
more than likely, remove the Customer role from yourself later...
I can see why it's like it is, btu sureyl the Manager could be made to
eb an exception? Or mayeb that's what's happening with the Superuser
object?
> So only the superuser can set the proxy role for a document. But once I
> do that, I can't edit it anymore as Manager (expected)
Hmm... you imply the superuser has ended up owning an object, which
shouldn't be possible (yes, that can of worms again :P) so does anyone
know what's going on here?
cheers,
Chris
From maxm@normik.dk Tue Oct 3 16:05:00 2000
From: maxm@normik.dk (=?ISO-8859-1?Q?Max_M=F8ller_Rasmussen?=)
Date: Tue, 3 Oct 2000 17:05:00 +0200
Subject: [Zope] Sorting and accessing elements in the
Message-ID: <7BD10B680501D411B9DF009027E06F32011C0E@exchange>
I am making a mailer zClass where it will only be nessecary to make the form
fields with the values you want to send, then the zClass will give you a
reply on the webpage and send a nicely formatted e-mail.
The problem is that the form elements are unknown but they need to be set up
in predictable order to format the output automatically.
To do this I need the form values in a sorted order. I can then give the
form fields names like this:
------------------------------------
Then the mail can be automatically formatted like this:
1) First Name
Max M
2) Last Name
Rasmussen
etc....
------------------------------------
I have tried to use the sequence-item as a key in REQUEST.form, but it
doesn't work like I want it to.
---------------------------------
:
<---- THIS IS WHAT DOESNT
WORK
---------------------------------
Regards Max M
From joachim.werner@iuveno.de Tue Oct 3 16:17:00 2000
From: joachim.werner@iuveno.de (Joachim Werner)
Date: Tue, 3 Oct 2000 17:17:00 +0200
Subject: [Zope] IMAP and Zope!
Message-ID: <00100317251000.05524@promotor>
Hello!
I am searching for a current IMAP Adapter solution for Zope. What we have found
so far is Ryan Hughes' WorldPilot, which has great IMAP support, but doesn't
really integrate with Zope, and the two products "NotMail" and "IMAP Adapter"
on the classic Zope site. The latter two seem to have been unmaintained for
quite a while.
Does anybody use the old IMAP Adapter successfully with Zope 2.2.x or know an
alternative solution?
We are working on an integrated groupware solution (it will all be open
sourced) and want to either store all documents (incl. mail) in a single
Zope-based storage or at least simulate that by dynamically wrapping the mails
into objects (similar to what Local_FS does with files on the file system).
Thanks in advance!
Joachim.
--
Iuveno - Smart Communication
Joachim Werner
_________________________________________
Marie-Curie-Straße 6
85055 Ingolstadt
Tel.: +49 841/90 14-325 (Fax -322)
Mobil: +49 179/39 60 327
E-Mail: joachim.werner@iuveno.de/joachim.werner@iuveno-net.de
WWW: www.iuveno.de/www.iuveno-net.de
From jatwood@bwanazulia.com Tue Oct 3 16:56:02 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Tue, 03 Oct 2000 11:56:02 -0400
Subject: [Zope] IMAP and Zope!
In-Reply-To: <00100317251000.05524@promotor>
Message-ID:
Why not just pick apart the pieces you need from WorldPilot. It seems a
shame to have to start from scratch.
J
> From: Joachim Werner
> Organization: Iuveno - Smart Communication
> Date: Tue, 3 Oct 2000 17:17:00 +0200
> To: zope@zope.org
> Subject: [Zope] IMAP and Zope!
>
> Hello!
>
> I am searching for a current IMAP Adapter solution for Zope. What we have
> found
> so far is Ryan Hughes' WorldPilot, which has great IMAP support, but doesn't
> really integrate with Zope, and the two products "NotMail" and "IMAP Adapter"
> on the classic Zope site. The latter two seem to have been unmaintained for
> quite a while.
>
> Does anybody use the old IMAP Adapter successfully with Zope 2.2.x or know an
> alternative solution?
>
> We are working on an integrated groupware solution (it will all be open
> sourced) and want to either store all documents (incl. mail) in a single
> Zope-based storage or at least simulate that by dynamically wrapping the mails
> into objects (similar to what Local_FS does with files on the file system).
>
> Thanks in advance!
>
> Joachim.
>
>
> --
> Iuveno - Smart Communication
>
>
> Joachim Werner
>
>
> _________________________________________
>
> Marie-Curie-Straße 6
> 85055 Ingolstadt
>
> Tel.: +49 841/90 14-325 (Fax -322)
> Mobil: +49 179/39 60 327
> E-Mail: joachim.werner@iuveno.de/joachim.werner@iuveno-net.de
> WWW: www.iuveno.de/www.iuveno-net.de
>
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
From tom.deprez@uz.kuleuven.ac.be Tue Oct 3 17:15:34 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Tue, 03 Oct 2000 18:15:34 +0200
Subject: [Zope] List
Message-ID: <3.0.6.32.20001003181534.008ef9c0@poirot>
Hi,
I'm storing a selection of a user to a database as string. This selection
is a multiple selection from a select box and is outputted as a list.
Now I want to iterate over this list (after retrieving it from the
database), but how can I do this? How can I tell Zope that the string is
actually a list? How can I typecast in Zope?
Thanks, Tom.
From andym@ActiveState.com Tue Oct 3 17:37:28 2000
From: andym@ActiveState.com (Andy McKay)
Date: Tue, 3 Oct 2000 09:37:28 -0700
Subject: [Zope] Sorting and accessing elements in the
References: <7BD10B680501D411B9DF009027E06F32011C0E@exchange>
Message-ID: <001f01c02d58$383b0d60$ae03a8c0@fork>
You need to let item=sequence-item since sequence-item is interpreted in
python as a mathemtical operation sequence minus item.
:
----- Original Message -----
From: "Max Møller Rasmussen"
To:
Sent: Tuesday, October 03, 2000 8:05 AM
Subject: [Zope] Sorting and accessing elements in the
> I am making a mailer zClass where it will only be nessecary to make the
form
> fields with the values you want to send, then the zClass will give you a
> reply on the webpage and send a nicely formatted e-mail.
>
> The problem is that the form elements are unknown but they need to be set
up
> in predictable order to format the output automatically.
>
> To do this I need the form values in a sorted order. I can then give the
> form fields names like this:
>
>
>
>
> ------------------------------------
>
> Then the mail can be automatically formatted like this:
>
> 1) First Name
> Max M
>
> 2) Last Name
> Rasmussen
>
> etc....
>
> ------------------------------------
>
> I have tried to use the sequence-item as a key in REQUEST.form, but it
> doesn't work like I want it to.
>
> ---------------------------------
>
>
>
>
>
>
>
>
> :
>
<---- THIS IS WHAT DOESNT
> WORK
>
>
>
>
> ---------------------------------
>
> Regards Max M
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From andym@ActiveState.com Tue Oct 3 17:38:34 2000
From: andym@ActiveState.com (Andy McKay)
Date: Tue, 3 Oct 2000 09:38:34 -0700
Subject: [Zope] Sorting and accessing elements in the
References: <7BD10B680501D411B9DF009027E06F32011C0E@exchange>
Message-ID: <002601c02d58$5f25f930$ae03a8c0@fork>
Although this could be simpler (you dont need the REQUEST.set):
:
----- Original Message -----
From: "Max Møller Rasmussen"
To:
Sent: Tuesday, October 03, 2000 8:05 AM
Subject: [Zope] Sorting and accessing elements in the
> I am making a mailer zClass where it will only be nessecary to make the
form
> fields with the values you want to send, then the zClass will give you a
> reply on the webpage and send a nicely formatted e-mail.
>
> The problem is that the form elements are unknown but they need to be set
up
> in predictable order to format the output automatically.
>
> To do this I need the form values in a sorted order. I can then give the
> form fields names like this:
>
>
>
>
> ------------------------------------
>
> Then the mail can be automatically formatted like this:
>
> 1) First Name
> Max M
>
> 2) Last Name
> Rasmussen
>
> etc....
>
> ------------------------------------
>
> I have tried to use the sequence-item as a key in REQUEST.form, but it
> doesn't work like I want it to.
>
> ---------------------------------
>
>
>
>
>
>
>
>
> :
>
<---- THIS IS WHAT DOESNT
> WORK
>
>
>
>
> ---------------------------------
>
> Regards Max M
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From andym@ActiveState.com Tue Oct 3 17:42:17 2000
From: andym@ActiveState.com (Andy McKay)
Date: Tue, 3 Oct 2000 09:42:17 -0700
Subject: [Zope] List
References: <3.0.6.32.20001003181534.008ef9c0@poirot>
Message-ID: <002c01c02d58$e4037e20$ae03a8c0@fork>
If you want to put a string into a list you can use
to split a string up. What database are you using and what are actually
getting back?
----- Original Message -----
From: "Tom Deprez"
To:
Sent: Tuesday, October 03, 2000 9:15 AM
Subject: [Zope] List
> Hi,
>
> I'm storing a selection of a user to a database as string. This selection
> is a multiple selection from a select box and is outputted as a list.
> Now I want to iterate over this list (after retrieving it from the
> database), but how can I do this? How can I tell Zope that the string is
> actually a list? How can I typecast in Zope?
>
> Thanks, Tom.
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From kthangavelu@earthlink.net Tue Oct 3 12:38:37 2000
From: kthangavelu@earthlink.net (Kapil Thangavelu)
Date: Tue, 03 Oct 2000 04:38:37 -0700
Subject: [Zope] IMAP and Zope!
References: <00100317251000.05524@promotor>
Message-ID: <39D9C53D.6CF93A58@earthlink.net>
Joachim Werner wrote:
>
> Hello!
>
> I am searching for a current IMAP Adapter solution for Zope. What we have found
> so far is Ryan Hughes' WorldPilot, which has great IMAP support, but doesn't
> really integrate with Zope, and the two products "NotMail" and "IMAP Adapter"
> on the classic Zope site. The latter two seem to have been unmaintained for
> quite a while.
I agree, WorldPilot is nice but its hard to split into component
functionality for integration into an a site.
> Does anybody use the old IMAP Adapter successfully with Zope 2.2.x or know an
> alternative solution?
LoginManager.
> We are working on an integrated groupware solution (it will all be open
> sourced) and want to either store all documents (incl. mail) in a single
> Zope-based storage or at least simulate that by dynamically wrapping the mails
> into objects (similar to what Local_FS does with files on the file system).
>
> Thanks in advance!
>
> Joachim.
>
> --
> Iuveno - Smart Communication
>
> Joachim Werner
>
> _________________________________________
>
> Marie-Curie-Straße 6
> 85055 Ingolstadt
>
> Tel.: +49 841/90 14-325 (Fax -322)
> Mobil: +49 179/39 60 327
> E-Mail: joachim.werner@iuveno.de/joachim.werner@iuveno-net.de
> WWW: www.iuveno.de/www.iuveno-net.de
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
From andym@ActiveState.com Tue Oct 3 17:51:52 2000
From: andym@ActiveState.com (Andy McKay)
Date: Tue, 3 Oct 2000 09:51:52 -0700
Subject: [Zope] how to access the items of an array...
References: <4.3.2.7.2.20001003160431.00ae5710@mail.isp.lu>
Message-ID: <004601c02d5a$3b04c9d0$ae03a8c0@fork>
Use the in tag:
----- Original Message -----
From: "zope"
To:
Sent: Tuesday, October 03, 2000 7:10 AM
Subject: [Zope] how to access the items of an array...
> Hi
>
> In a form, I defined an array variable as follows:
>
>
>
>
>
>
>
>
> After submitting the form, gives me following
result:
>
> ['112', 'sef', 'fg', '23', 'iuiu', 'tz', 'fgh', 'fgh']
>
> My question is now how to access the different items of that array?
>
> Thanks a lot for your help.
>
> Marc
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From peter@grenna.net Tue Oct 3 18:07:09 2000
From: peter@grenna.net (Peter Bengtsson)
Date: Tue, 3 Oct 2000 18:07:09 +0100
Subject: [Zope] A hint on FSSession
References: <39D64D7F.8FA11F0C@rotnet.com.br> <39D65A14.27107C0B@berg.net> <39D8CAB5.DC46529B@fazenda.gov.br> <39D9A1D1.2B4C4D7B@email.com>
Message-ID: <002c01c02d5c$7e830210$01d4a8c0@peppe>
> Why use javascript to access cookies? You can set and get them purely
> using zope. http://www.zope.org/Members/BwanaZulia/cookies. Also, why
> not install a session product (HappySession, FSSession, SQLSession...),
> it'll probably make your life easier in the long run...
>
> seb
>
Yes, and if you choose to use FSSession, remember to rename the object to something other that "FSSession".
Having an object called "FSSession" in more than one place can f**k things up in the namestack, so to be on the safe side, rename (note "rename") the FSSession object to something more unique after having created one.
This caused me a lot of brain damage, and I had it explained by a friend after may failed attempts to understand the error messages.
From jwashin@vt.edu Tue Oct 3 18:06:58 2000
From: jwashin@vt.edu (Jim Washington)
Date: Tue, 03 Oct 2000 13:06:58 -0400
Subject: [Zope] List
References: <3.0.6.32.20001003181534.008ef9c0@poirot>
Message-ID: <39DA1232.D58E830F@vt.edu>
Tom Deprez wrote:
>
> Hi,
>
> I'm storing a selection of a user to a database as string. This selection
> is a multiple selection from a select box and is outputted as a list.
> Now I want to iterate over this list (after retrieving it from the
> database), but how can I do this? How can I tell Zope that the string is
> actually a list? How can I typecast in Zope?
Use a python or external method to make a list from your string. I am
supposing you are storing a string representation of the list that looks
like:
"['fred', 'bob', 'mary']"
Get rid of any punctuation you do not want with (e.g.)
theString = string.replace(theString, '[', ' ')
(Yes, there are more efficient ways to do this!)
Then, once you have a space-delimited list of items, you may use
theList = string.split(theString)
which will make a list of the words in the string. Return theList.
-- Jim Washington
From peter@grenna.net Tue Oct 3 18:26:24 2000
From: peter@grenna.net (Peter Bengtsson)
Date: Tue, 3 Oct 2000 18:26:24 +0100
Subject: [Zope] how to access the items of an array...
References: <4.3.2.7.2.20001003160431.00ae5710@mail.isp.lu>
Message-ID: <005001c02d5f$0ebfae80$01d4a8c0@peppe>
>
> After submitting the form, gives me following result:
>
> ['112', 'sef', 'fg', '23', 'iuiu', 'tz', 'fgh', 'fgh']
>
> My question is now how to access the different items of that array?
>
> Thanks a lot for your help.
>
> Marc
>
Here's the syntax.
where X is an integer.
or
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From SuzetteR@ngc.co.tt Tue Oct 3 19:23:47 2000
From: SuzetteR@ngc.co.tt (Suzette Ramsden)
Date: Tue, 3 Oct 2000 14:23:47 -0400
Subject: [Zope] IIS port problem
Message-ID: <569FC7E4C179D311ABAF009027B11327198F08@icys>
I am hoping someone can help me. I am at the end of my line. I have tried
everything and nothing else works.
I am trying to install Zope on my web server on which I have a small
intranet. I am using Windows NT 4.0 and IIS 4.0.
Ideally I was trying to use Squishdot with Zope to create a small discussion
forum that can be accessed via the INTRANET.
My Web server name is SRNT and is installed on my F:\ partition drive
I installed Zope in the root cgi-bin directory and called my website
ZopeSite. I selected the "Run as a win32 service"
F:\InetPub\wwwroot\cgi-bin\ZopeSite\
I went to my browser (MS Internet Explorer 5.0) and accessed the Zope Site
using the URL:
http://srnt:8080/manage
I successfully accessed my Zope site manager and everything was working just
fine.
Now comes the problem:
I do not want to connect to the Intranet using the server port (8080) in the
URL to access the Zope pages .
I installed both Squishdot and TinyTables products on Zope and started
building a Squishdot site, which I named ChatClub. However, the URL to
access the Squishdot site looks like:
http://srnt:8080/Control_Panel/Products/Squishdot/ChatClub/index_html
I WANT IT TO AT LEAST SAY:
http://srnt/Control_Panel/Products/Squishdot/ChatClub/index_html
OR
http://srnt/ChatClub/index_html
I don't want any reference to the server port 8080.
I have read several help documents on IIS and PCGI AND THEY ALL SAY
DIFFERENT THINGS.
One document said to copy the Zope.pcgi to the IIS cgi-bin folder and
another said to copy it to the IIS scripts folder.
One document showed the Zope.pcgi file path configuration completely
different from mine. The document showed :
PCGI_MODULE_PATH=X:\WebSite\lib\python\Main.py
And mine showed
PCGI_MODULE_PATH=F:\InetPub\wwwroot\cgi-bin\ZopeSite\lib\python\Zope
The document even had files I didn't have anywhere in my directory like
pcgi.soc and some in completely different folders like:
Help document:
PCGI_MODULE_PATH=X:\WebSite\pcgi\pcgi.pid
My file:
PCGI_MODULE_PATH=F:\InetPub\wwwroot\cgi-bin\ZopeSite\var\pcgi.pid
I know there must be a a simple way to accomplish this. I just need someone
to tell me how to do it STEP BY STEP.
I am a Programmer/Analyst, but I am only a novice when it comes to servers
and all the details.
PLEASE HELP
Regards,
Suzette E. Ramsden
From klm@digicool.com Tue Oct 3 20:12:29 2000
From: klm@digicool.com (Ken Manheimer)
Date: Tue, 3 Oct 2000 15:12:29 -0400 (EDT)
Subject: [Zope] Re: 'Offline' mailhost
In-Reply-To: <39D9D22D.BB48DFA6@nipltd.com>
Message-ID:
On Tue, 3 Oct 2000, Chris Withers wrote:
> What, IMHO, is really needed is a mailhost/sendmail tag type thing that
> gets a message and a list of addresses to send it to. If it could do
> that in a seperate thread/process/whatever so that whatever calls it
> doesn't block, that'd be great. Of course, it'd need to have a 'hook
> back' method provided so any errors that occured could be dealt with.
>
> I wonder how mailman does this stuff and if the code could be borrowed
> for Zope?
I don't have a quick answer. (It's been a long time since i worked on
mailman, and this stuff in particular has changed a lot.) It looks like
the code in Mailman/Handlers/SMTPDirect.py is what's of interest, and it
doesn't depend too elaborately on the rest of mailman, which is good.
I'm have no idea whether it solves the problem of doing unblocking
delivery in a way that lets the delivery requester get a status back.
Ken
klm@digicool.com
From code@ou.edu Tue Oct 3 20:17:25 2000
From: code@ou.edu (Leichtman, David J)
Date: Tue, 3 Oct 2000 14:17:25 -0500
Subject: [Zope] Zope stalls indefinitely
Message-ID: <372E9068C013D211891F00805F9FD1C2055874BB@mail3.oulan.ou.edu>
Thought we had a problem of ours fixed, but here it is once again, a month
later.
Zope, every once in a while, will just stall indefinitely. The Zope process
doesn't die, it just hangs.
Everything was fine for a month or so, and now the problem's started again,
about every hour.
We're running 2.1.6 on Solaris with pgsql and the ZPyGre adapter and the
most recent copy of FSSession.
Any thoughts. I've posed this question to a lot of people many times. Now
that it's back, I'm hoping for fresh insight.
From edc@8days.com Tue Oct 3 21:18:49 2000
From: edc@8days.com (Ed Colmar)
Date: Tue, 3 Oct 2000 14:18:49 -0600
Subject: [Zope] LoginManager Error
Message-ID:
Hi!
I'm getting a type error when I try to add a LoginManager to
a folder. Any sugestions on how to get past this?
My config:
Zope 2.2.1
ZPatterns 0.3.0
LoginManager 0.8.6
The traceback:
Error Type: TypeError
Error Value: keyword parameter redefined
Traceback (innermost last):
File /usr/local/zope/lib/python/ZPublisher/Publish.py, line 222, in
publish_module
File /usr/local/zope/lib/python/ZPublisher/Publish.py, line 187, in publish
File /usr/local/zope/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
File /usr/local/zope/lib/python/ZPublisher/Publish.py, line 171, in publish
File /usr/local/zope/lib/python/ZPublisher/mapply.py, line 160, in mapply
(Object: manage_addLoginManager)
File /usr/local/zope/lib/python/ZPublisher/Publish.py, line 112, in
call_object
(Object: manage_addLoginManager)
File
/usr/local/zope/lib/python/Products/LoginManager/LoginManager.py,
line 237, in manage_addLoginManager
File /usr/local/zope/lib/python/Products/ZPatterns/PlugIns.py, line
313, in _constructPlugIn
TypeError: (see above)
From edc@8days.com Tue Oct 3 21:24:42 2000
From: edc@8days.com (Ed Colmar)
Date: Tue, 3 Oct 2000 14:24:42 -0600
Subject: [Zope] UserDB plus crypt
Message-ID:
--============_-1241517811==_============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"
Since I couldn't get LoginManger to work, I started modifying
UserDb to handle encrypted passwords... I've changed it so the
encrypted password is stored in the DB, but I haven't been able to
get it to authenticate.
Can anyone offer any insight as to what I need to do?
My modified UserDb.py is attached.
Thanks!
-ed-
--============_-1241517811==_============
Content-Id:
Content-Type: text/plain; name="UserDb.py"; charset="us-ascii" ; format="flowed"
Content-Disposition: attachment; filename="UserDb.py"
; modification-date="Tue, 3 Oct 2000 14:24:04 -0600"
"""User Db product
This product provides support for User Folder-like objects that
store data in back-end databases.
CREATE TABLE users (
username varchar(255) NOT NULL,
password varchar(255) NOT NULL,
domains varchar(255),
roles varchar(255)
);
"""
__version__='$Revision: 1.13 $'[11:-2]
import Globals, App.Undo, socket, regex
from Products.ZSQLMethods.SQL import SQL
from Globals import PersistentMapping
from Globals import Persistent
from Globals import HTMLFile, MessageDialog
from string import join,strip,split,lower
from App.Management import Navigation, Tabs
from Acquisition import Implicit
from OFS.SimpleItem import Item
from OFS.Document import Document
from base64 import decodestring, encodestring
from urllib import quote, unquote
from ImageFile import ImageFile
from AccessControl.Role import RoleManager
from AccessControl.User import BasicUser, BasicUserFolder
from string import split, join, upper, lower
## Crypt toolkit ##
import crypt, random
ListType=type([])
class User(BasicUser):
icon='misc_/UserDb/User_icon'
def __init__(self, name, password, roles, domains):
self.name =name
self.__ =password
self.roles =filter(None, map(strip, split(roles, ',')))
self.domains=filter(None, map(strip, split(domains, ',')))
def getUserName(self):
return self.name
def _getPassword(self):
return self.__
def getRoles(self):
return self.roles
def getDomains(self):
return self.domains
class UserDb(BasicUserFolder):
""" """
meta_type='User Db'
id ='acl_users'
title ='User Db'
icon ='misc_/UserDb/UserDb_icon'
isPrincipiaFolderish=1
isAUserFolder=1
encryptedpasswords=1
manage_options=(
{'label':'Contents', 'action':'manage_main'},
{'label':'Properties', 'action':'manage_properties'},
{'label':'Security', 'action':'manage_access'},
{'label':'Undo', 'action':'manage_UndoForm'},
)
__ac_permissions__=(
('View management screens',
['manage','manage_menu','manage_main','manage_copyright', 'manage_tabs',
'manage_properties', 'manage_UndoForm']),
('Undo changes', ['manage_undo_transactions']),
('Change permissions', ['manage_access']),
('Manage users', ['manage_users']),
('Change User Dbs', ['manage_edit']),
)
manage_properties=HTMLFile('properties', globals())
def __init__(self, conn_id, cookie_mode=0):
self.conn_id=conn_id
self.cookie_mode=cookie_mode
self.docLogin =Document(_docLogin, __name__='docLogin')
self.docLogout=Document(_docLogout, __name__='docLogout')
self.docLogin.__roles__=None
self.docLogout.__roles__=None
self.sqlListQuery=SQL('sqlListQuery', '', conn_id,
'',
_sqlListQuery)
self.sqlUserQuery=SQL('sqlUserQuery', '', conn_id,
'username',
_sqlUserQuery)
self.sqlAddQuery=SQL('sqlAddQuery', '', conn_id,
'username password domains roles',
_sqlAddQuery)
self.sqlEditQuery=SQL('sqlEditQuery', '', conn_id,
'username password domains roles',
_sqlEditQuery)
self.sqlDelQuery=SQL('sqlDelQuery', '', conn_id,
'username',
_sqlDelQuery)
def getUserNames(self):
"""Returns a list of user names or [] if no users exist"""
data=[]
try: items=self.sqlListQuery()
except: return data
for ob in items:
data.append(sqlattr(ob, 'username'))
data.sort()
return data
def getUsers(self):
"""Return a list of user objects or [] if no users exist"""
data=[]
try: items=self.sqlListQuery()
except: return data
for ob in items:
user=User(sqlattr(ob, 'username'),
sqlattr(ob, 'password'),
sqlattr(ob, 'roles'),
sqlattr(ob, 'domains'))
data.append(user)
return data
def getUser(self, name):
"""Return the named user object or None if no such user exists"""
if name==self._super.getUserName():
return self._super
try: ob=self.sqlUserQuery(username=name)
except: return None
if not ob:
return None
ob=ob[0]
return User(sqlattr(ob, 'username'),
sqlattr(ob, 'password'),
sqlattr(ob, 'roles'),
sqlattr(ob, 'domains'))
def _doAddUser(self, name, password, roles, domains):
if encryptedpasswords:
encryptedpass = str(crypt.crypt(password,'ab'))
self.sqlAddQuery(username=name, password=encryptedpass,
roles=join(roles, ','),
domains=join(domains, ',')
)
else:
self.sqlAddQuery(username=name, password=password,
roles=join(roles, ','),
domains=join(domains, ',')
)
def _doChangeUser(self, name, password, roles, domains):
if encryptedpasswords:
encryptedpass = str(crypt.crypt(password,'ab'))
self.sqlEditQuery(username=name, password=encryptedpass,
roles=join(roles, ','),
domains=join(domains, ',')
)
else:
self.sqlEditQuery(username=name, password=password,
roles=join(roles, ','),
domains=join(domains, ',')
)
def _doDelUsers(self, names):
for name in names:
self.sqlDelQuery(username=name)
# ----
def old_std_validate(self,request,auth='',roles=None):
parent=request['PARENTS'][0]
# If no authorization, only a user with a
# domain spec and no passwd or nobody can
# match
if not auth:
for ob in self.getUsers():
domains=ob.getDomains()
if domains:
if ob.authenticate('', request):
if ob.allowed(parent, roles):
ob=ob.__of__(self)
return ob
return None
# Only do basic authentication
if lower(auth[:6])!='basic ':
return None
name,password=tuple(split(decodestring(split(auth)[-1]), ':'))
user=self.getUser(name)
if user is None:
return None
# Try to authenticate user
encryptedpass = str(crypt.crypt(str(password),'ab'))
#print encryptedpass
if not user.authenticate(encryptedpass, request):
return None
# We need the user to be able to acquire!
user=user.__of__(self)
# Try to authorize user
if user.allowed(parent, roles):
return user
return None
std_validate=BasicUserFolder.validate
def cookie_validate(self,request,auth='',roles=None):
parent=request['PARENTS'][0]
req_has=request.has_key
resp=request['RESPONSE']
if req_has('__ac'):
c=request['__ac']
c=unquote(c)
try: c=decodestring(c)
except:
resp.expireCookie('__ac', path='/')
raise 'LoginRequired', self.docLogin(self, request)
name,password=tuple(split(c, ':'))
encryptedpass = str(crypt.crypt(password,'ab'))
# Find user
user=self.getUser(name)
if user is not None:
if user.authenticate(encryptedpass, request):
user=user.__of__(self)
if user.allowed(parent, roles):
return user
resp.expireCookie('__ac', path='/')
raise 'LoginRequired', self.docLogin(self, request)
if req_has('__ac_name') and req_has('__ac_password'):
name=request['__ac_name']
password=request['__ac_password']
encryptedpass = str(crypt.crypt(password,'ab'))
# Find user
user=self.getUser(name)
if user is not None:
if user.authenticate(encryptedpass, request):
user=user.__of__(self)
if user.allowed(parent, roles):
token='%s:%s' % (name, password)
token=encodestring(token)
token=quote(token)
resp.setCookie('__ac', token, path='/')
request['__ac']=token
try:
del request['__ac_name']
del request['__ac_password']
except:
pass
return user
raise 'LoginRequired', self.docLogin(self, request)
if auth: return None
# Try domain matching
for ob in self.getUsers():
domains=ob.getDomains()
if ob.domains:
if ob.authenticate('', request):
if ob.allowed(parent, roles):
ob=ob.__of__(self)
return ob
# Allow anonymous access to things under UserDbs,
# if the object is public.
nobody=self._nobody
if nobody.allowed(parent, roles):
ob=nobody.__of__(self)
return ob
raise 'LoginRequired', self.docLogin(self, request)
def validate(self,request,auth='',roles=None):
if self.cookie_mode:
return self.cookie_validate(request, auth, roles)
return self.std_validate(request, auth, roles)
def __len__(self):
return len(self.sqlListQuery())
def enumQueries(self):
list=[]
type=SQL.meta_type
for ob in self.__dict__.values():
if hasattr(ob, 'meta_type') and ob.meta_type==type:
list.append(ob)
return list
def enumDocuments(self):
list=[]
type=Document.meta_type
for ob in self.__dict__.values():
if hasattr(ob, 'meta_type') and ob.meta_type==type:
list.append(ob)
return list
def manage_edit(self, connection_id, cookie_mode, REQUEST=None):
"""Change properties"""
if connection_id != self.conn_id:
# Connection changed - update sql methods!
self.conn_id=connection_id
for ob in self.enumQueries():
title=ob.title
args=ob.arguments_src
src=ob.src
ob.manage_edit(title, self.conn_id, args, src)
self.cookie_mode=cookie_mode
if REQUEST:
return MessageDialog(
title ='UserDb Changed',
message='UserDb properties have been updated',
action =REQUEST['URL1']+'/manage_properties',
target ='manage_main')
logout__roles__=None
def logout(self, REQUEST):
"""Logout"""
REQUEST['RESPONSE'].expireCookie('__ac', path='/')
return self.docLogout(self, REQUEST)
manage_addUserDbForm=HTMLFile('addUserDb', globals())
def manage_addUserDb(self, connection_id, cookie_mode=0, REQUEST=None):
""" """
if hasattr(self.aq_base, 'acl_users'):
return MessageDialog(
title ='Item Exists',
message='This object already contains a User Folder',
action ='%s/manage_main' % REQUEST['PARENT_URL'])
ob=UserDb(connection_id, cookie_mode)
self._setObject('acl_users', ob)
self.__allow_groups__=self.acl_users
if REQUEST: return self.manage_main(self,REQUEST,update_menu=1)
addr_match=regex.compile('[0-9\.\*]*').match
host_match=regex.compile('[A-Za-z0-9\.\*]*').match
def domainSpecValidate(spec):
for ob in spec:
sz=len(ob)
if not ((addr_match(ob) == sz) or (host_match(ob) == sz)):
return 0
return 1
def domainSpecMatch(spec, request):
if request.has_key('REMOTE_HOST'):
host=request['REMOTE_HOST']
else: host=''
if request.has_key('REMOTE_ADDR'):
addr=request['REMOTE_ADDR']
else: addr=''
if not host and not addr:
return 0
if not host:
host=socket.gethostbyaddr(addr)[0]
if not addr:
addr=socket.gethostbyname(host)
_host=split(host, '.')
_addr=split(addr, '.')
_hlen=len(_host)
_alen=len(_addr)
for ob in spec:
sz=len(ob)
_ob=split(ob, '.')
_sz=len(_ob)
if addr_match(ob)==sz:
if _sz != _alen:
continue
fail=0
for i in range(_sz):
a=_addr[i]
o=_ob[i]
if (o != a) and (o != '*'):
fail=1
break
if fail:
continue
return 1
if host_match(ob)==sz:
if _hlen < _sz:
continue
elif _hlen > _sz:
_item=_host[-_sz:]
else:
_item=_host
fail=0
for i in range(_sz):
h=_item[i]
o=_ob[i]
if (o != h) and (o != '*'):
fail=1
break
if fail:
continue
return 1
return 0
# A getattr-like helper that hopefully can compensate for the
# various oddities in data returned by different stupidbases.
import Missing
mt=type(Missing.Value)
def typeconv(val):
if type(val)==mt:
return ''
return val
def sqlattr(ob, attr):
name=attr
if hasattr(ob, attr):
return typeconv(getattr(ob, attr))
attr=upper(attr)
if hasattr(ob, attr):
return typeconv(getattr(ob, attr))
attr=lower(attr)
if hasattr(ob, attr):
return typeconv(getattr(ob, attr))
raise NameError, name
def absattr(attr):
if callable(attr): return attr()
return attr
def reqattr(request, attr):
try: return request[attr]
except: return None
_docLogin="""
Login
"""
_docLogout="""
Logout
You have been logged out of the system.
"""
_sqlListQuery="""
This query retrieves rows representing all users
schema: username password domains roles
SELECT * FROM users
"""
_sqlUserQuery="""
This query retrieves a row representing a given user
schema: username password domains roles
SELECT * FROM users
"""
_sqlAddQuery="""
This query adds a new user
INSERT INTO users VALUES (
,
,
,
)
"""
_sqlEditQuery="""
This query updates a users data
UPDATE users SET
password=,
domains=,
roles=
"""
_sqlDelQuery="""
This query removes a user
DELETE from users
"""
import __init__
__init__.need_license=1
--============_-1241517811==_============--
From rik.hoekstra@inghist.nl Tue Oct 3 21:39:45 2000
From: rik.hoekstra@inghist.nl (Rik Hoekstra)
Date: Tue, 3 Oct 2000 22:39:45 +0200
Subject: [Zope] IIS port problem
References: <569FC7E4C179D311ABAF009027B11327198F08@icys>
Message-ID: <003f01c02d7a$114ea280$fe5da182@michieltje>
> http://srnt/ChatClub/index_html
note that most probably the reference will look something like
http://srnt/cgi-bin/Zope.pcgi/ChatClub/index_html
That is, you'll loose the port, but you rape your url.
If you want a shorter url, you most probably have to do other (isapi like)
things to IIS
>
> I don't want any reference to the server port 8080.
> I have read several help documents on IIS and PCGI AND THEY ALL SAY
> DIFFERENT THINGS.
> One document said to copy the Zope.pcgi to the IIS cgi-bin folder and
> another said to copy it to the IIS scripts folder.
>
the main point is you need _one_ (not several) Zope.pcgi file that has the
proper locations of all the things needed in it. It does not matter where
you put it. In your /pcgi/util directory there is a pcgifile.py
script that will help you check the pcgi info file (that is the very
Zope.pcgi file I referred to). If this doesn't report any errors, your
IIS-pcgi connection will probably work.
> One document showed the Zope.pcgi file path configuration completely
> different from mine. The document showed :
> PCGI_MODULE_PATH=X:\WebSite\lib\python\Main.py
>
> And mine showed
> PCGI_MODULE_PATH=F:\InetPub\wwwroot\cgi-bin\ZopeSite\lib\python\Zope
>
this may be true, but it's a strange place for a Zope installation
> The document even had files I didn't have anywhere in my directory like
> pcgi.soc and some in completely different folders like:
hm, IIRC the soc file is Unix only.
> Help document:
> PCGI_MODULE_PATH=X:\WebSite\pcgi\pcgi.pid
>
> My file:
> PCGI_MODULE_PATH=F:\InetPub\wwwroot\cgi-bin\ZopeSite\var\pcgi.pid
>
> I know there must be a a simple way to accomplish this.
It can be simple, but it may turn into a nightmare if it doesn't work (you
have been warned). As a comfort, it took me no more than a quarter of an
hour to get it installed on several different NT machines.
I just need someone
> to tell me how to do it STEP BY STEP.
Your best step by step guide is on
http://zdp.zope.org/projects/zbook/book/VII/PlatformInstallation/InstallDraf
ts/instwindraft3/
hth
Rik
From rik.hoekstra@inghist.nl Tue Oct 3 21:45:40 2000
From: rik.hoekstra@inghist.nl (Rik Hoekstra)
Date: Tue, 3 Oct 2000 22:45:40 +0200
Subject: [Zope] List
References: <3.0.6.32.20001003181534.008ef9c0@poirot> <39DA1232.D58E830F@vt.edu>
Message-ID: <004901c02d7a$e5509f20$fe5da182@michieltje>
> > I'm storing a selection of a user to a database as string. This
selection
> > is a multiple selection from a select box and is outputted as a list.
> > Now I want to iterate over this list (after retrieving it from the
> > database), but how can I do this? How can I tell Zope that the string is
> > actually a list? How can I typecast in Zope?
, but that won't work in this case as you'll
get a resultant [something,]
>
> Use a python or external method to make a list from your string. I am
> supposing you are storing a string representation of the list that looks
> like:
>
> "['fred', 'bob', 'mary']"
>
> Get rid of any punctuation you do not want with (e.g.)
>
> theString = string.replace(theString, '[', ' ')
>
> (Yes, there are more efficient ways to do this!)
>
> Then, once you have a space-delimited list of items, you may use
>
> theList = string.split(theString)
>
> which will make a list of the words in the string. Return theList.
>
a python/external method is more elegant, but if you want this can be done
in the same way from DTML:
or using dtml-let
But whether all this works depends much on what your database returns.
Rik
From kworth@engin.umich.edu Tue Oct 3 21:52:17 2000
From: kworth@engin.umich.edu (Kevin Worth)
Date: Tue, 3 Oct 2000 16:52:17 -0400
Subject: [Zope] zope 2.1.3 ->2.2.2 transition problems
Message-ID:
I just recently upgraded to 2.2.2. Upon upgrading, all instances of
products that I created are broken. The products themselves are not,
just every instance of every product that I made. External and
standard products work just fine.
Strange part coming up: I can make new instaces replacing the broken
ones. However, 10-30 minutes after creating these new instances, the
new instances are broken. I've tried this twice, with the same
results.
Anyone have any ideas?
Thanks
Kevin
--
-----------------------------------------------
Kevin Worth
Computer Systems Specialist II and Adjunct Lecturer
Department of Materials Science and Engineering
University of Michigan
From rik.hoekstra@inghist.nl Tue Oct 3 22:11:52 2000
From: rik.hoekstra@inghist.nl (Rik Hoekstra)
Date: Tue, 3 Oct 2000 23:11:52 +0200
Subject: [Zope] Only superuser can set Proxy on DTML methods?
References: <39D9BABF.24116.3B75549@localhost>
Message-ID: <00e001c02d7e$8e15daa0$fe5da182@michieltje>
> It seems that when I'm managing my website as a Manager (from
> acl_users folder) I can not set a proxy role for a method or document. I
> get "you do not have the proxy role" something like that.
>
> But I can't see anywhere how to enable my userid to have this proxy
> role.
>
> So only the superuser can set the proxy role for a document. But once I
> do that, I can't edit it anymore as Manager (expected)
>
> So .. how can a Manager grant the proxy role on documents?
If I read your description correctly, it is closely related to a problem I
reported several times to the collector (a year ago), but was never solved.
See: http://classic.zope.org:8080/Collector/916/view
Rik
From dieter@handshake.de Tue Oct 3 22:00:08 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Tue, 3 Oct 2000 23:00:08 +0200 (CEST)
Subject: [Zope] script execution timeout?
In-Reply-To: <97129676@toto.iv>
Message-ID: <14810.18474.904823.246608@lindm.dm>
=?ISO-8859-1?Q?J=FAlio?= Dinis Silva writes:
> Is there a place to define a script execution timeout?
I do not think so.
> I've been using urllib and there is no way to kill a urllib.open
> if its taking too long. Does zope has that implemented?
There is a patch to Python's "httplib" providing
a socket timeout option.
Unfortunately, not all OS support the necessary socket system
call, e.g. my Linux 2.0.36 does not.
Maybe, your OS does.
Dieter
From dieter@handshake.de Tue Oct 3 21:56:45 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Tue, 3 Oct 2000 22:56:45 +0200 (CEST)
Subject: [Zope] Access problems
In-Reply-To: <45749606@toto.iv>
Message-ID: <14810.17844.51565.241516@lindm.dm>
Danny William Adair writes:
> I have a serious and extremely urgent problem concerning my zope
> installation (2.2.1 on Unix): Whatever resource I'm trying to access, I get
> the following
> .....
> File
> /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py, line
> 514, in old_validation
> (Object: broken)
> AttributeError: (see above)
Is it possible, that you upgraded from an earlier Zope installation?
The traceback suggests that your requests tries to access
the object "broken", probably an object from a broken
product.
I suggest, you start Zope with "STUPID_LOG_FILE=zope.log".
This should log problems during Zope startup to
"zope.log" (you may need to upgrade to Zope 2.2.2, as
earlier Zope versions lost one exception log due to a missing
"flush").
If you see no problems logged, try to go to "Control_panel/ProductManagement"
and check whether there are broken products.
Dieter
From dieter@handshake.de Tue Oct 3 22:16:39 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Tue, 3 Oct 2000 23:16:39 +0200 (CEST)
Subject: [Zope] database connection problem (halting Zope)
In-Reply-To: <110283996@toto.iv>
Message-ID: <14810.19006.650936.544140@lindm.dm>
Hrasky Petr writes:
> thank you for answers. To clarify:
> I run Zope-2.2.2/Linux2.2.14/MySQL-ZMySQLDA1.1.3nonbin at home and
> Zope-2.2.2-binary/NT4.0Workstation/ZODBCDA3.1.0b2 (Oracle 8i ODBC,
> Sybase11.5)at work. Oracle connection at work and MySQL (at home just
> for testing) run looong queries and halt Zope. I have no such queries
> for Sybase yet.
> I will try to recompile python for linux, but I can't do so for WinNT
> as I have no compiler. Anyway I thought the python distributed with
> binary release of Zope is threaded, no?
If Python is compiled without threads, there is no module
"thread". Zope relies on this module. It dies immediately,
if it is not there. Thus, you can be sure, your
Python has thread support compiled in.
> So, does anybody know of either binary and threaded Zope driver for
> Oracle , Sybase etc. or the same ODBC driver? And what is the state of
> python threading on WinNT paltform?
The Python that comes with Zope has thread support compiled in.
Maybe, your Python-ODBC connection "forgets" to release
Python's interpreter lock.
We, once, had such a problem.
Accidentally, the DCOracle module had been set up with a standard
Python distribution (with threading disabled) rather
than the Zope Python. As a consequence, the
DCOracle did not call "releaseLock" and
"acquireLock" (as they would not be present
in a non-threaded Python).
And, of course, database operations blocked Zope.
Dieter
From dieter@handshake.de Tue Oct 3 22:05:59 2000
From: dieter@handshake.de (Dieter Maurer)
Date: Tue, 3 Oct 2000 23:05:59 +0200 (CEST)
Subject: [Zope] script execution timeout?
In-Reply-To: <50582432@toto.iv>
Message-ID: <14810.18680.261585.547328@lindm.dm>
seb writes:
> > Is there a place to define a script execution timeout?
> Try setting an alarm using the signal module, wrapping the GET request
> in a try clause, and then setting the alarm to 0 in the finally clause.
Be very careful with signals of any kind inside Zope:
I had to patch ZServer, as the Oracle client library
used signals (probably SIGALRM)
when the Oracle server was unavailable.
Under Solaris 2.7, this resulted in ZServer's
"select" call being aborted with "Interrupted system call".
Zserver was unprepared for this event and died.
Dieter
From jatwood@bwanazulia.com Tue Oct 3 22:32:56 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Tue, 3 Oct 2000 17:32:56 -0400
Subject: [Zope] zope 2.1.3 ->2.2.2 transition problems
In-Reply-To:
References:
Message-ID:
Hey Kevin,
I had the same problem when upgrading from 2.1.6 - 2.2.2 but have not
found an answer at all. I followed the directions that I found on
Zope.org to the letter but to no avail. I checked the products and
they all work in a clean install of 2.2.2
If you find out anything let me know.
Thanks,
J
At 4:52 PM -0400 10/3/2000, Kevin Worth wrote:
>I just recently upgraded to 2.2.2. Upon upgrading, all instances of
>products that I created are broken. The products themselves are not,
>just every instance of every product that I made. External and
>standard products work just fine.
>
>Strange part coming up: I can make new instaces replacing the broken
>ones. However, 10-30 minutes after creating these new instances, the
>new instances are broken. I've tried this twice, with the same
>results.
>
>Anyone have any ideas?
>
>Thanks
>
>Kevin
>--
>-----------------------------------------------
>Kevin Worth
>Computer Systems Specialist II and Adjunct Lecturer
>Department of Materials Science and Engineering
>University of Michigan
>_______________________________________________
>Zope maillist - Zope@zope.org
>http://lists.zope.org/mailman/listinfo/zope
>** No cross posts or HTML encoding! **
>(Related lists - http://lists.zope.org/mailman/listinfo/zope-announce
>http://lists.zope.org/mailman/listinfo/zope-dev )
From fred@ontosys.com Wed Oct 4 00:21:53 2000
From: fred@ontosys.com (Fred Yankowski)
Date: Tue, 3 Oct 2000 18:21:53 -0500
Subject: [Zope] why does squishdot url_quote email address values?
Message-ID: <20001003182153.A16179@enteract.com>
Version 0-7-2 of Squishdot seems to use the url_quote option when
accessing the value of admin_address in particular, so when a DTML
page has code like
and admin_address is a property with the value "foo@bar.com", the
resulting HTML code is
foo%40bar.com
which doesn't work correctly, particularly when used as the value of a
'mailto:' URL.
So what's the solution? Is Squishdot wrong to use url_quote this way?
Why is url_quote hiding the "@" anyway -- I don't see any reason for
escaping it this way.
--
Fred Yankowski fred@OntoSys.com tel: +1.630.879.1312
Principal Consultant www.OntoSys.com fax: +1.630.879.1370
OntoSys, Inc 38W242 Deerpath Rd, Batavia, IL 60510, USA
From hannu@tm.ee Wed Oct 4 06:52:43 2000
From: hannu@tm.ee (Hannu Krosing)
Date: Wed, 04 Oct 2000 08:52:43 +0300
Subject: [Zope] 'Offline' mailhost
References: <39D40049.28D21513@adroit.net> <39D40CCA.5398331@digicool.com> <39D9D22D.BB48DFA6@nipltd.com>
Message-ID: <39DAC5AB.CE9CC1EE@tm.ee>
Chris Withers wrote:
>
> Shane Hathaway wrote:
> > I'm not sure how well MailHost scales, but you can certainly store
> > thousands of names in a ZODB-managed list. Tests done for the
> > BTreeFolder product prove it.
>
> Sadly, I think MailHost doesn't scale too well :-(
>
> What it'd need to do if you're sending the mail to a few thousand people
> is to be non-blocking.
> IIRC, currently, a method/page with a addresses> tag pair in it will only return when the
> mail has been sent to all the recipients. So, if the mails going to lots
> of people, the page takes ages to return.
Perhaps it would be better to solve this by configuring your sendmail
(or other SMTP MTA) to be non-blocking, i.e. store-and-forward.
Also you could send just one message to all the recipients instead of
sending individual messages.
> This is the problem I had where our mail server was taking lots of time
> to send messages (it was doing lots of stuff to make sure the address
> was valid) so submitting posts on Squishdot.org was taking ages too.
>
> What, IMHO, is really needed is a mailhost/sendmail tag type thing that
> gets a message and a list of addresses to send it to. If it could do
> that in a seperate thread/process/whatever so that whatever calls it
> doesn't block, that'd be great. Of course, it'd need to have a 'hook
> back' method provided so any errors that occured could be dealt with.
>
> I wonder how mailman does this stuff and if the code could be borrowed
> for Zope?
Maybe you could just use mailman as MTA, greating temporary
mailing-lists.
--------
Hannu
From lheber@debis.com Wed Oct 4 08:14:47 2000
From: lheber@debis.com (Lars Heber)
Date: Wed, 04 Oct 2000 09:14:47 +0200
Subject: [Zope] Namespace problems...
Message-ID: <39DAD8E7.ACB56A3@debis.com>
Hi there,
I've still got to build a bigger website.
So I stored my headers and footers and many other things in root/pub.
All the other documents are stored in root/Intra and below.
I've got my standard_html_header, with which I can display user-defined
titles which may also contain values of global properties. The
user-defined title is being built in the document before the header is
called, e. g. something like:
In the standard_html_header method I'm checking whether there is a titel
attribute or not.
This works fine.
But for general use I want to keep the possibility of displaying the
title_or_id of the document when I don't introduce a user-defined title.
This would be no problem if s_h_h wasn't situated in root/pub, so I have
to call it within the .
But doing this, pub is on the top of my namespace, so that calling
title_or_id returns the title_or_id of the container of s_h_h, i. e.
pub!
How can I nevertheless access within the s_h_h to the title_or_id of my
original document?
Thanks.
Lars
From frederic.quin@free.fr Wed Oct 4 09:18:05 2000
From: frederic.quin@free.fr (Frederic Quin)
Date: Wed, 04 Oct 2000 10:18:05 +0200
Subject: [Zope] A temporary python object defined in a dtml-let tag ???
Message-ID: <39DAE7BD.385186F@free.fr>
Hi all,
I wonder if it's possible to create temporary a python object in a
dtml-let tag. If someone knows more about how to do this, please, help
me...
Thanks
Fred Quin
From stephan.goeldi@datacomm.ch Wed Oct 4 10:06:31 2000
From: stephan.goeldi@datacomm.ch (Stephan Goeldi)
Date: Wed, 04 Oct 2000 09:06:31 GMT
Subject: [Zope] SiteRoot
Message-ID:
I have a problem with SiteAccess:
My site runs with Apache and Zope 2.0.0.
Apache has 2 Domains:
www.domain1.com
ProxyPass to Zope:
http://123.123.123.123:8080/provider/www/domain1.com/
in Zope exists:
/provider/www/domain1.com
www.domain2.com
ProxyPass to Zope:
http://123.123.123.123:8080/provider/www/domain2.com/
in Zope exists:
/provider/www/domain2.com
In both subdirectories (domain1.com and domain2.com) exist the SiteRoot
method. In the SiteRoot method is written:
Title: www.domain1.com
Base: http://www.domain1.com
Path: /
When I point my Browser to www.domain1.com everything works ok.
Now I create /provider/www/domain2.com
OK
I create the acl_user domain2.com with a password.
OK
I create a SiteRoot:
Title: www.domain2.com
Base: http://www.domain2.com
path: /
OK
I restart Zope and Apache
OK
Now when I point my Browser to www.domain2.com I get the Website of
www.domain1.com. I go to http://www.domain2.com/manage and get the folder:
/provider/www/domain1.com instead of /provider/www/domain2.com
When I log in as domain1.com I get the folder
/provider/www/domain1.com and everything works ok. But I can go up to the
folder
/provider/www and see what else is in this folder. But domain1.com has no
access to this folder, i.e. there is no acl_user in this folder.
What goes wrong?
I already tried to upgrade to 2.2.1 and 2.2.2 but this destroys the data
structure.
Any suggestions?
TIA
-goe-
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Share information about yourself, create your own public profile at
http://profiles.msn.com.
From dzienniak@sawan.com.pl Wed Oct 4 11:06:17 2000
From: dzienniak@sawan.com.pl (Marcin Dzienniak)
Date: Wed, 4 Oct 2000 11:06:17 +0100
Subject: [Zope] DCOracle 1.3.2 for Windows NT
Message-ID: <001001c02dea$c3a21370$63020101@sawan.com.pl>
Hello,
I 'm looking for oci driver (DCOracle 1.3.2) to Windows NT platform,
I have heard that someone in this community buit DCOracle for NT and I
wonder if you can help me.
I would be gratefull if you could send me a makefile to this
platform or a comliled file (*.pyd).
I have Oracle 8i 8.1.6 .
Please send me some information for my adress dzienniak@sawan.com.pl
Thank you for your attention.
From tom.deprez@uz.kuleuven.ac.be Wed Oct 4 11:08:00 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Wed, 04 Oct 2000 12:08:00 +0200
Subject: [Zope] List
In-Reply-To: <39DA1232.D58E830F@vt.edu>
References: <3.0.6.32.20001003181534.008ef9c0@poirot>
Message-ID: <3.0.6.32.20001004120800.0093a330@poirot>
Hi all,
Thanks for the lots of correct answers. With a small modification (looking
up several python docs :-) ) all things worked!
Thanks in advance,
Tom.
At 13:06 03/10/2000 -0400, you wrote:
>Tom Deprez wrote:
>>
>> Hi,
>>
>> I'm storing a selection of a user to a database as string. This selection
>> is a multiple selection from a select box and is outputted as a list.
>> Now I want to iterate over this list (after retrieving it from the
>> database), but how can I do this? How can I tell Zope that the string is
>> actually a list? How can I typecast in Zope?
>
>Use a python or external method to make a list from your string. I am
>supposing you are storing a string representation of the list that looks
>like:
>
>"['fred', 'bob', 'mary']"
>
>Get rid of any punctuation you do not want with (e.g.)
>
>theString = string.replace(theString, '[', ' ')
>
>(Yes, there are more efficient ways to do this!)
>
>Then, once you have a space-delimited list of items, you may use
>
>theList = string.split(theString)
>
>which will make a list of the words in the string. Return theList.
>
>-- Jim Washington
>
From bruno@xs2.greenpeace.org Wed Oct 4 11:13:22 2000
From: bruno@xs2.greenpeace.org (bruno@xs2.greenpeace.org)
Date: Wed, 4 Oct 2000 12:13:22 +0200 (MEST)
Subject: [Zope] PCGI and images not displaying
Message-ID:
Hello
My set up: Linux (X/OS distribution based on RedHat 6.0), Zope 2.1.6
+
PCGI + Apache 1.3.9
We have a DTML document that shows an image based on the selection
from the user, something like this:
(I snipped
all the rest because it's of no interest here). The image is
stored as an object in the ZODB.
When the user requests that page, sometimes, the image is not
returned
to the browser. What I see in the log from Apache is a return code
304
(not changed) and a return code 200 in the Z2.log ... Does anyone
knows of this? Is there a workaround besides putting the image in the
filesystem and serving it as a URL from Zope only?
TIA.
/B
From tom.deprez@uz.kuleuven.ac.be Wed Oct 4 11:28:43 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Wed, 04 Oct 2000 12:28:43 +0200
Subject: [Zope] IMAP and Zope!
In-Reply-To:
References: <00100317251000.05524@promotor>
<00100317251000.05524@promotor>
Message-ID: <3.0.6.32.20001004122843.00921020@poirot>
Hi,
I thought that WorldPilot told at the LinuxTag that version 2, would be
more modular in design. I guess you can always ask the developers about the
new release.
Tom
From fjesteban@uco.es Wed Oct 4 12:03:03 2000
From: fjesteban@uco.es (Francisco =?iso-8859-1?Q?Jos=E9?= Esteban =?iso-8859-1?Q?Risue=F1o?=)
Date: Wed, 04 Oct 2000 13:03:03 +0200
Subject: [Zope] DCOracle 1.3.2 for Windows NT
References: <001001c02dea$c3a21370$63020101@sawan.com.pl>
Message-ID: <39DB0E66.2611FC44@uco.es>
I'm not tried it yet, but you can get an VC6 Workspace for DCOracle in
this page:
http://starship.python.net/crew/arpadk/
Marcin Dzienniak escribió:
> Hello,
> I 'm looking for oci driver (DCOracle 1.3.2) to Windows NT platform,
> I have heard that someone in this community buit DCOracle for NT and I
> wonder if you can help me.
> I would be gratefull if you could send me a makefile to this
> platform or a comliled file (*.pyd).
> I have Oracle 8i 8.1.6 .
>
> Please send me some information for my adress dzienniak@sawan.com.pl
>
> Thank you for your attention.
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
From Jean@mosaicsoftware.com Wed Oct 4 12:36:22 2000
From: Jean@mosaicsoftware.com (Jean Jordaan)
Date: Wed, 4 Oct 2000 13:36:22 +0200
Subject: [Zope] Last-modified header missing -- time-stamps turned off.
Message-ID:
Hi all
Just a note from the blue .. I'm snarfing the ZB using
wget -np -m http://www.zope.org/Members/michel/ZB/
and for every document I'm seeing:
Last-modified header missing -- time-stamps turned off.
What's the significance of this? I assume something to
do with the http headers returned by Zope. Does Zope not
include last-modified headers since it predominantly serves
dynamic pages?
Regards,
--
Jean Jordaan -- technical writer --
Mosaic Software -- Zope 2.2 on WinNT and W2K
From Petr.Hrasky@bnp-dresdner-bank.cz Wed Oct 4 12:37:27 2000
From: Petr.Hrasky@bnp-dresdner-bank.cz (Hrasky Petr)
Date: Wed, 4 Oct 2000 13:37:27 +0200
Subject: [Zope] database connection problem (halting Zope)
Message-ID:
thanks again,
yes, the python versions I use are compiled for threads, they link
against libpthread under linux. I have also found ZmxODBCDA adapter and
it does not work for me yet - it shows in Zope as broken product.
I also spoke to local Oracle hotline and they said that ODBC access is
not thread safe until 8.1.6.1.1 due to some error in OCI libs. Now I am
downloading Oracle for Linux and Sybase for Linux and I will try to
compile OracleDA and SybaseDA.
Thanks a lot all.
Regards,
Petr
-----Original Message-----
From: Dieter Maurer [mailto:dieter@handshake.de]
Sent: Tuesday, October 03, 2000 11:17 PM
To: Hrasky Petr
Cc: 'zope@zope.org'
Subject: RE: [Zope] database connection problem (halting Zope)
Hrasky Petr writes:
> thank you for answers. To clarify:
> I run Zope-2.2.2/Linux2.2.14/MySQL-ZMySQLDA1.1.3nonbin at home and
> Zope-2.2.2-binary/NT4.0Workstation/ZODBCDA3.1.0b2 (Oracle 8i ODBC,
> Sybase11.5)at work. Oracle connection at work and MySQL (at home just
> for testing) run looong queries and halt Zope. I have no such queries
> for Sybase yet.
> I will try to recompile python for linux, but I can't do so for
WinNT
> as I have no compiler. Anyway I thought the python distributed with
> binary release of Zope is threaded, no?
If Python is compiled without threads, there is no module
"thread". Zope relies on this module. It dies immediately,
if it is not there. Thus, you can be sure, your
Python has thread support compiled in.
> So, does anybody know of either binary and threaded Zope driver for
> Oracle , Sybase etc. or the same ODBC driver? And what is the state
of
> python threading on WinNT paltform?
The Python that comes with Zope has thread support compiled in.
Maybe, your Python-ODBC connection "forgets" to release
Python's interpreter lock.
We, once, had such a problem.
Accidentally, the DCOracle module had been set up with a standard
Python distribution (with threading disabled) rather
than the Zope Python. As a consequence, the
DCOracle did not call "releaseLock" and
"acquireLock" (as they would not be present
in a non-threaded Python).
And, of course, database operations blocked Zope.
Dieter
_______________________________________________
Zope maillist - Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope-dev )
From Danny@Adair.net Wed Oct 4 12:59:09 2000
From: Danny@Adair.net (Danny William Adair)
Date: Wed, 4 Oct 2000 13:59:09 +0200
Subject: [Zope] Access problems
In-Reply-To: <14810.17844.51565.241516@lindm.dm>
Message-ID:
>Is it possible, that you upgraded from an earlier Zope installation?
>
>The traceback suggests that your requests tries to access
>the object "broken", probably an object from a broken
>product.
Thanks, I've found the problem: It was a broken ZPatterns. I've updated to
0.4.2a3, but left an "old" compiled Dynpersist.so in the directory (V 0.3).
After updating this, everything was fine. I guess I just have to be prepared
to get the weirdest sstuff to see as long as I 1.) use alpha/beta products
to authenticate my users on root level, and 2.) keep refusing to wear
glasses (Actually, this beta ZPatterns is fine).
Thanks,
Prost,
Danny
-----Ursprungliche Nachricht-----
Von: zope-admin@zope.org [mailto:zope-admin@zope.org]Im Auftrag von
Dieter Maurer
Gesendet: Dienstag, 3. Oktober 2000 22:57
An: Danny@adair.net
Cc: zope@zope.org
Betreff: Re: [Zope] Access problems
Danny William Adair writes:
> I have a serious and extremely urgent problem concerning my zope
> installation (2.2.1 on Unix): Whatever resource I'm trying to access, I
get
> the following
> .....
> File
> /home/sites/site3/users/.../2-2-1/lib/python/ZPublisher/BaseRequest.py,
line
> 514, in old_validation
> (Object: broken)
> AttributeError: (see above)
Is it possible, that you upgraded from an earlier Zope installation?
The traceback suggests that your requests tries to access
the object "broken", probably an object from a broken
product.
I suggest, you start Zope with "STUPID_LOG_FILE=zope.log".
This should log problems during Zope startup to
"zope.log" (you may need to upgrade to Zope 2.2.2, as
earlier Zope versions lost one exception log due to a missing
"flush").
If you see no problems logged, try to go to
"Control_panel/ProductManagement"
and check whether there are broken products.
Dieter
_______________________________________________
Zope maillist - Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope-dev )
From maxm@normik.dk Wed Oct 4 13:03:56 2000
From: maxm@normik.dk (=?ISO-8859-1?Q?Max_M=F8ller_Rasmussen?=)
Date: Wed, 4 Oct 2000 14:03:56 +0200
Subject: [Zope] Namespace problem with the dtml-sendmail and the smtphost
Message-ID: <7BD10B680501D411B9DF009027E06F32011C12@exchange>
I have a dtml method in a zClass that looks like this:
To: maxm@normik.dk
From: test@normik.dk
Subject: This is a test
A test!!!
"theSMTPHost" is defined as a property in the zClass. But when i use the
method I get a:
Error Type: error
Error Value: host not found
If i write:
It gets send without a hitch.
and if I write it returns mail.tele.dk as expected.
I then try this, which also fails.
Mailhost:
To: maxm@normik.dk
From: test@normik.dk
Subject: This is a test
A test!!!
Is it not possible to set the smtphost to a string in a dtml variabel?
Regards Max M
From tom.deprez@uz.kuleuven.ac.be Wed Oct 4 13:35:29 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Wed, 04 Oct 2000 14:35:29 +0200
Subject: [Zope] Integers in ZSQLMethod
Message-ID: <3.0.6.32.20001004143529.0092d4b0@poirot>
Hi,
Is it possible to use following code in ZSQLMethod :
,
But also allow null as value for the integer? (Thus not filled in)
Thanks in advance,
Tom.
From jonathan@home-all.org.uk Wed Oct 4 14:10:17 2000
From: jonathan@home-all.org.uk (Jonathan Cheyne)
Date: Wed, 04 Oct 2000 14:10:17 +0100
Subject: [Zope] Detecting Roles not working
Message-ID: <39DB2C39.3824562B@home-all.org.uk>
Hi all
I have built the basis of a site with full, form-based webediting of
objects. Coming round to cleanup time and I wanted to remove certain
visible functions from the default object views unless you have already
logged in (with various possible roles)
in the index_html of my zclass i have
edit this
so if the user is anonymous or logged in without the Staff role assigned
they should not see the "edit this" link ...
Doesn't work! It basically never returns a 'true' response thus never
displays the edit this link even when logged in.
Tried various permutations and variations on this theme without any
success.
Help! Without this, I am not sure how to customize the interface for
different user groups.
I am on 2.2.0 but I think it was similar under 2.1.6.
Absolutely any clues no matter how obscure would be gratefully received
(or indeed the glaringly obvious solution etc :-)
Cheers
Jonathan
From heinkel@cenix-bioscience.com Wed Oct 4 14:12:53 2000
From: heinkel@cenix-bioscience.com (Ralph Heinkel)
Date: Wed, 4 Oct 2000 15:12:53 +0200
Subject: [Zope] Integers in ZSQLMethod
In-Reply-To: <3.0.6.32.20001004143529.0092d4b0@poirot>
References: <3.0.6.32.20001004143529.0092d4b0@poirot>
Message-ID: <00100415145201.00737@celap>
On Wed, 04 Oct 2000, you wrote:
> Hi,
>
> Is it possible to use following code in ZSQLMethod :
>
> ,
>
> But also allow null as value for the integer? (Thus not filled in)
>
use
or the newer syntax
Ralph
------------------------------------------------------------------
Ralph Heinkel Cenix Bioscience GmbH
Director of the IT-Unit Tel : +49 6221/387 915
Meyerhofstr. 1 Fax : +49 6221/387 971
69117 Heidelberg, Germany eMail: heinkel@cenix-bioscience.com
From tom.deprez@uz.kuleuven.ac.be Wed Oct 4 14:26:05 2000
From: tom.deprez@uz.kuleuven.ac.be (Tom Deprez)
Date: Wed, 04 Oct 2000 15:26:05 +0200
Subject: [Zope] Integers in ZSQLMethod
In-Reply-To: <00100415145201.00737@celap>
References: <3.0.6.32.20001004143529.0092d4b0@poirot>
<3.0.6.32.20001004143529.0092d4b0@poirot>
Message-ID: <3.0.6.32.20001004152605.009222d0@poirot>
Argh, dumb me. That I didn't think of this myself. Boy, do I feel myself
stupid and red.
Tom.
At 15:12 04/10/2000 +0200, Ralph Heinkel wrote:
>On Wed, 04 Oct 2000, you wrote:
>> Hi,
>>
>> Is it possible to use following code in ZSQLMethod :
>>
>> ,
>>
>> But also allow null as value for the integer? (Thus not filled in)
>>
>
>use
>
>or the newer syntax
>
>Ralph
>
>
>------------------------------------------------------------------
>Ralph Heinkel Cenix Bioscience GmbH
>Director of the IT-Unit Tel : +49 6221/387 915
>Meyerhofstr. 1 Fax : +49 6221/387 971
>69117 Heidelberg, Germany eMail: heinkel@cenix-bioscience.com
>
From ergul@ccs.neu.edu Wed Oct 4 15:59:20 2000
From: ergul@ccs.neu.edu (Ayhan Ergul)
Date: Wed, 4 Oct 2000 10:59:20 -0400 (EDT)
Subject: [Zope] DCOracle 1.3.2 for Windows NT
Message-ID:
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Send mail to mime@docserver.cac.washington.edu for more info.
---559023410-851401618-970671560=:2377
Content-Type: TEXT/PLAIN; charset=US-ASCII
Marcin Dzienniak wrote:
> I 'm looking for oci driver (DCOracle 1.3.2) to Windows NT platform,
> I have heard that someone in this community buit DCOracle for NT and I
> wonder if you can help me.
> I would be gratefull if you could send me a makefile to this
> platform or a comliled file (*.pyd).
> I have Oracle 8i 8.1.6 .
I had compiled DCOracle 1.3.1 b1 libraries as .dll's a while back on
WinNT4.0 against Oracle 8.1.6.0 and they worked fine for me until we moved
onto Linux. I've attached it hoping it works for you (and maybe others).
Ayhan Ergul
---559023410-851401618-970671560=:2377
Content-Type: APPLICATION/ZIP; name="DCOracle-1.3.1b1-compiled.zip"
Content-Transfer-Encoding: BASE64
Content-ID:
Content-Description:
Content-Disposition: attachment; filename="DCOracle-1.3.1b1-compiled.zip"
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
tz43AEjJD3DN0mdEhApfYO1dA2FaqDW0wbRVNrq2BuoHHXvo9fsGqjNCM7Vh
rG4Zep68mNpzHtrzQjRRO5qoHU20CF+L8bXcbdQuxKFvhqKF1FbbdVstgnsZ
3MVwl8H9f7RdD3hTVZZPIbaxpDRqartax7oTdjKz9TMsBVJaIIW0BCiQ9E9C
AYHxq2y2w+50dhK3o50BtmW2JXSmjkXb0gIVVJxFRReV9fNbK+EDZ2V2qsKA
a2emKrP7mHa0rgid+arZe859776Xm7wkr1b98mh+7757z/udc88997x7XyrJ
h61osUkjlQY7tct2+u6nop3ao+zUobBTKzSJdlpJ7NT1iWyn1uzWCZ3STqmJ
kTOlYHCiMVlEY3qJGZNFNDUwJgM5F/xRhx+uL4gypB8rDKmSGFKlbEgw6hSh
GdnQhBy1wFwlmEcNfHdSk/ISw/DrFIYRbRX2LdKdJ7QKu5pViGq3K9e/F4rS
WWiwAsLYQJhCFr6Qk6X0hIPMuMkpJ0BOKnYVOSP8wAeDoRuef5USF0zsweKT
LMYKFmMFi7HCVzd8XS+GWTW0qQCBbGhA50QDijEeyQFGGdEt1NmZJCO6S9WI
KG+lkhVlCY98AtM6EcyRzciFzusUmpEdvQ6YEbFuIe1j2Yzs2a2PgQHnME81
Hz3VKTSfmtGNkAv+r+ANxHhGV9O1dPDFPLqkJGuv+MUwOrck61X2xbLrT3AP
2butULEk5ti4LCYVsAYtkTZUROy0kdjdeWanRWiT9KxNPLuPnbWh6zslukQ4
B88TqCVbiSXPLjkVmE3w4P2SFdcQKy6M8oa2arRiO+jNVcvs1w/f3fC13u0l
oVNLUiMuVTdiVkDNt0kF4ju3LaKZl4ZV7NsCwhY1zID/UWYns2rRwh1QzEXN
3NOQViU8ViNaOD//ZvmI4fmJ823SZOl21SmpPPf+7COYe3t9ZI5EyYf1mbfV
qFJq2iJmtRXyCMnlwU5zu2qnqZNnmxnCffFE6qhOIpJCnvHpleftP8aR552q
1OWZnEZ9lccT5oEqTfrSL5g+eV4ciyPPmEeTPMZplGdOPHnuS0EeNp64YTyx
0JBDiqgL2ddC+OqKHl7s8NUPXxthgt5Kn5053J55Eb+Z3FtVezMZVprJsNJM
4upmElc3W7ZK9+mA4aUpLXp4KRiQDTPOg3vir9yG4gfBbc8fVY4uMDQoRhcM
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
7koqfPH9b+dqrf0vbz/Pl311kv53/yzt8dLwam39b1cvH0+unvLzLaP6863S
Sq32JfTEPD9dPf35pNmx+aS+Sq32triHszd3pbq9jU+pf05q5u9od8zz1crp
5y87lr9Na7Ty9/ljHH+mNV+WP76/vrpGa3/1P8bz17jmy+d/TXy+I3+ttv76
1qNcfx1ao9Zf/wfDm3j531h+mtdq5cf1KM+PbW0Sfj6LESg23hrWyMfr+zg+
Oteq8ZF+RZ2PGH+1Tmt/s++L8Vdrk/W3K1MZD/vWae1f/V28f1qn3r9sKYyH
avlth3sq+W2RwOuP8Anqq+s05LdPxlx+fF3y/HYVuVtlfvuF3lTy23HyX4fc
WvJfomL0j3D5rxp3wvxXvVJayH/1ppb/iiOvzjMFeWt+xsl7wp1C/no+k7em
R0v+2paI78apyN/1MCe/xZNQ/hPEYfnNHiZ/V/dU841DnpT9K7QH8U8n709a
PdMwny2qStG/ghiQ/+jk/KvgSTQ/SzXf2F2llY9LP+X5qKz6KtaLGaP5mtTI
19yfcnwdr1Lj68xVtflsHHsPVGuxd1GYIz/h7N1anby/mquZvR/Zl3p/DXcm
sv+R6tT1XU3tv4PX997qL/28KS3Mz5fcNanqtxop9XRw+p2snmJ+RxdOwNdg
jVa+Tu7l+dpe81X0D310/7DVauPvpr0cf8M1U55v6tXnm4dqU47fRP6aQjH+
pXb650vpsfMlkzfleE7k8Jd7uHju1drpWL+QzpRe6/UJbUQe/8czdbh72d95
Fyzb3JBmOnysAS7ejj92lNMIuy/uhu23/nMb4F2UkQtu4YARttjCjrhIdqsN
qhkk53yRnACV7vA5+uuprWYoKG5iXaH3Rdy4q3Ux7NOqbnBELobuaIJm/CfI
5d7Dkw+Sht9p0EUuuv1HETE/hEgaIH2IND0kl+lExI9Iy2kHLdaK4JEdcrEA
InmKquoROdqAyAxAahA5tEOqaiaATgS7dsgX2hHp3iFfWAiMbSJ1ewmCVxVg
mQCTSg+gGcG99MIbADEgYqFSpQMyWQeIjSIZgIwj4mZVGQC8jGArLXYjIJcQ
KaRIJiDnEGmkyCxABhEpZVUZATyB4FEqVTbSjoiLXpiLtCNyjJbJQ9oRaWZV
OZF2BK30wo2ANCHipMhmQLYjUkmRLYBsRWQ9q2or6gLBI1Q73wbEhchxKsM2
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
f4rAhroVgqW7FSKh7s/dugqHCRHN0NUKTUGBiM6Zw7yuVmjESxDcMUfRKdMX
qiZ8WR8vcCpuEK9XvPFX8XrFbof5BF6jcE1w36sQHA3Ehys6ZWw4wZTBSvCE
mAJerpDoQqGzoLAkSMwlQ3qVgz1m6mci+8xBCibJ2BCqanoTdSvY0A03ikW7
PApwqBn1MPBmxp7LbmbACo+8+KKIFvN88U0xzyccRSdJnscP5Vl3nGQZUv+C
eSsfEjl1RTrM05CfggJWUVDg8hMzk58rnv9hqR4m+cfrlfcSKaG7Cq0F5IMj
iuZD+c65AhOED6XQSdyPGc197FkAlrC+4bgBye0iXx4ST6bbnMpI075ahenD
OtzfwW3GJY4AaVTEtyXyhRghmv9AcH/9ZJIzTQHznqDl3x7yk0PjRm9hjQL8
n73MnwZ/GvwfEv2lDgm9SMutVXAfyvscWmdUYnv31MAfuXSaO+qoUbR/N/Xg
l4H7ikGcHsK2wKJVwf3EnWv/ZurB7sAPQSzn6PZvwX3wu8CPih0W2kFLaohq
XIBzRWodCHr5UDHZSdCeJjhyFY5cevW8AodZzZ11NvRs2ZK7ha8RUFehUsA1
Z48ll/chMG5t44La2kvZrQOUagflMPeICF+SVVyoYKaFLDW7TXeo2JhLs7fi
ReD2dl7tSKE5OdfTfkbd/qU68EdcSpsHe/CJzzqFQ+46vAOXLs11NKvO5XuB
FITiEqLQ5SrjzINLyhwpAe6l+2JyQVDtNL9QKXPAIrztbgcslPJ4PFMz90Bf
cJhPOsxHHOYDDvMph3nAYT7taFC3qmznNAz8GcME2M4FML62c0GsfI7r20rF
ktapc+wDgaqH1viQJ7TG9lJq24WIeqXtgnGDf6W8ewr4x07BWw+sf6Vvd5qP
9I5WOHNjejozlrzVc8RH0kaq9OkyH8PSLHS9ZLcew9tXrmeAnCOvp94XKK7/
i0hKFMNtF8KZCNuFWcxM2wUtM992IUX1iMMH/c3rx9suLFc9cj+BrKpHa8FR
6de9B/pTTmVgd5sM/SPqxwBN1SP5UDNuuoXgBmqq5r/hPLqrewrAkLpxItmA
G6fa1pFv4U+8huv7Stnd+O4yeRhzW0erIhm34pgbQUCfXAfNpRfkdZtLK5h7
W0JccsE8AJxyvS2xYgV0sF1Y6w2DFJB35J1ggyBZ6K1ZBO/s8ATv+ZkEQ0mC
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
pWQjzrKKHE+6sUNLiBy3d6x7JUGJfkNeVmxr7mUF0iMrC4wVKy0uckQnWVcg
Li4xcmLdK4xr8iya8AzXH8M5FoUcE22Sl4o6yK+0TEG60kqFEtOV1iuAIq1Y
kGcVCJKFC+CTlQvwHZzi4gUc0uqFEt1kBSO5ySqGws9zXyvfEZjvK9c53oXw
aoTiQoT0syu9oc2Wx15tyTSatFeMJO262KutwkaYjiiE/mIi3mVxy60jpT+S
QtTFXr5KhHofaRkkQfmXEoG2dsXSc8T0R1CIutgrV7Ejoi8J8r9I36sO3LL/
iOmPLv9Dq+tlI25HI+sodctiL1+uj5j+aNuRuyOMrI6lxdAvpOCdf+/108jT
+OVS1MVeuTsxQvqj7su1o6mD2lHXQe2o6kBaSP5iO/WqA/fac8T0R9cPhnZ1
Rlq/kaNvQ5GjbUORo25DkaNpQ+Ii/JfoV8RebftqFGmMtgy6kZdB2iD4xXr2
KoN7T2HE9EfXjoZ26UZEX9rAGE0/cO95jJj+6PI/tHt4DfqRl9dvzeUFKF1d
XSGND273aNpLzUja5PAGUzPaNlkz6jYpbhkVD9sUrBlheuJG0mhkCvcu7Ijp
uzemvBMZnldRfqyKvda27ijTWvHLacVefad4NOkYRlKm8thrbT2PMq3/pkyG
q7SL2tIr90J+Lu3SX0z58nRLRyXvDN9EvGZCtVeRnS/bfxx1eitGkF7stXf2
R5mefkTlK4+95nHBqNP7b8un/6/KFz2i8i2LveaxxqjT+2/LFz2y8g07Q7nG
AEn2fzz1dvmxyyjSWPHLacReeYozEvo/u7SWiHvl372sHintX8x4XezlJ0sj
o/3zy2k3V4bGBO+jqhHTXzES+rGXn3yNjP7PL6e96Ht4P3TCPFL6o8u/57B6
RHU7AvZL/dn7mG+ktEfTbpaPqt38/BJ6iDFeeR9aQo+Y/ggYXxd75WnmyOiP
qr/WjobvtaPie+2o+P7zy2av9ujh+5AGw0jpj669e5QhRlivkaNvN5GjaTeR
o243kaNpNz+7ZPbQr4i94qh7xPRHm3/dyPP/88tlr/r15H9IE2Wk9EfXfjxK
LSOh//PL5au2/yENmZHSH13+Pco2v7Re9tZHuMZyeaRtpGZEbXBYI6kZTRus
GXUbrBlVHzKOmr6knVHsraBQM8L0fnb5fVUZpKJ0NGPazyy/h7J6x3AZynvp
Pao0VvxCGrFX10oZRRqGXyxHeexVVVxGlcZoy2G4Sv2Ly+yRp1v6S6lekW7p
qGSin19me+f6Cpn6cm230aa3YiTpxV5Le2i06elHVr7y2GupJY06vf+2fPr/
qnzRIyvfsthrqVGNOr3/tnxuhcRidlVdxYpV1lJUxCHwmuraUqKvQN7i9ISL
Wj3FVilcRKeK6yTYi0qxpDRUbF0WIeoOScv8q5yBD09DjIi6EsSfsa4lecqp
LVkgOr1wRa0j1BMQ/ZdVrCiuri2hPH2dulIfhCpOAUeqFJbp5bZK5ZWUl4rr
3LB36Yl/hLf/kH6UpAQFdMT81Llt79wSf08+K0qpsIzSWA151Gb5zNWaiDui
NZFarfZOrf7OCK0mwhgbERkbZdCsLGEYrGUNeSO6uHi1+FBVcTEVNt+6ugLd
sSQyCRfVaMR3wjwKNyJsFR9R8tZbp3LnZabkFmdmLCgWNddEOC3TvDBjdqbZ
DZsXWjIzUjIWuOHslPTk+ZI7I8srbEHx7LQMKd6C4hQvt+gU3TmpCyi3Oz/X
485OyRlyz881L6C86Zi96LvdmTmzh3C83PPNaR6aCwqH3Dm5mUPuzOTZnrRS
U4fcKXnzh9zJ+Sked5rHnZk/28vt8c/NzB1y52Vke3BmZwy5Z3v553v5pyZ7
+DA/w5Of7Bwv/BQP/czsOUNuS6oXTnaeJz8LPGVJy/TQz8j24nlelqfs6QQ/
JyUD2JMLdDPMKWYRzjYvHAanZcwfQkA4J9vsDhbjZxVnz84ccqdijaDbnF+8
INfjJv4pqcnFuRl3Y1RKfHZKbK+im6LcTzvlwA/t+3NyGsS+sIytqGIqsC8s
qisCuLR6ObiH/OuKi0W8CvG5KIBuXyRTo6EozRX/bh36pxnBv3RyHfba/5qu
8m84RqPXP9kI/3nHf8Drn88I/7njan69Hk3uAt8h2eyTMFeCeeoZSr1VMojz
fIdon3xQNmTLvC8bXeXWrw91rRdbPeE+v7L/198ofot9ZOpMMO7mprb9/JcW
ki4LX3gZfKvt/96XGgbkMPqeotRXM/hmNeIQO+CXaWE/ivKVqfG9ehps/MTT
CYVMjVG3K0R+PQz2OOQh2OPxziHYE/DuJ9gheOdaLlNPxrvkYF+Pd1zBvgHv
noIdindGwV6Ld0PBxreje6Ee7sO722AP4pgANmb6ANga399OHpZBBYwFg4KA
3+kNlN5AEOTio8P4+VtMH/OO4/EGML4U1RYoRZ0CboXk/p2X24lPSUvuR7zc
j3q5N3q5H/Ny/8bL/VsvN35SxB/v/4NB3sl8FCQIPxW+9IF1D0yT8F78QrQ3
bRHtxmdPDpL2tt5G7JcBv33zp5uvNb80XpLap2T/bYT4yZK9DfA/ev7U89dT
Xz/PP7/o2vTXbyKuecDQeZ8u+VRDFX9a+WnklfiHj31+8hxFRawXY6ZI5v/2
L+X/I+MOzmPXec1ZcsnGthgitlfyKWo/MGOkNqSU2rRS8lNKbcpf6gPusOuk
uGirJLpqyQ/763jJoP80yV8vwckSnCLBFinOfMk/V7ILJPqFUtpVkv9Kqc/h
XhD28Vopr34Svk3Kc6NkPyCF26XwJokO9C3ydYxnJHiTlJ8XpPRekvzflvL3
oRR+VAoP8Rd5MfQGilUclxf6y9QLwFjAZIJJB5MKJgmMAYwWzK1gQsGowdBg
Bv1k6gEwvWB6wJwGw4M5BeYkmBNgjoE5AuYAmP1gdoPZDmYrmJcl/OfAPAlm
I5gmMPVgasCUglkKZjGYBWCSwBj8xPze4X4/pEymfviBXzYbpJ+t7Brz0HM+
SR6m+Hrc5+khd9LTyiG3pUM15A7rHe9223735HVut+a9HZNFt2Ln3hseiUL3
pu/3f3jDrsPZSZqeZ/5WE/7yn//xx4qkA0UXZ3x9/SM5k132pHt/d/SJlLG+
zttefybp3M7nUr9vHP9o4wN/T9oZ968XPxIypq7ddTipuvPkw922vXPe+e3L
ye8135N3i9HZX3OyfvZ7nz3y+bk/XnCtf2VeyqZvVv97/0+33dnUeHPqrepJ
rwz8Rf3vf+w+n+p66cjZfteXc+974iOzdX/XY2Nf/Mtzk/+9OS3IOknJNj7I
rt6bnrVw9qmXfms06be/+X1u1ktfF8X/o8jEPfObu4WiF3s2adoWbHk4puTg
Re5u7tiMIse54yteeWLg7C07n99T9JltVebeP/xe0+ozf+nuGSwW/Z/7/yl9
eepC4r3xAUc31+CfgcS7S01f5Dh/v2q8/T+JHYdnWid/tXDS2wd/TDygmt40
54Y5r/3jpTOJSS9uq6h63ff9mAddibr492bf9/W/Ht/58beJuy5e/LCkadya
/a+eSrwzc9GXWbt3PP7EN3sTf7M718Sm/jN4x/+8nvj5inceN5r/fOMbHz2e
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
22Lr3OK8unPl8Oq21t3Tu7oqvdWDGYZKSHQBibugEI1Xd2vrRA2aJQOM0/d9
ryck8XSv7v64v/KqXr/3vu973/ve9+u9np6ahw4zZoZhWKi6zjCvM0apZP7n
okEt+LPfFDD/kvvb+a+bqn87vz60c09J6+4nH9u95fGSrVueeOJJseTR7SW7
pSdKdj5R4t5YV/L4k9u2L8nPn+HI8Ph631/f8a9zRtvGa2223vY6tPdZrrf9
MgN7ibZ/bEtCeyn747Y3KF267QptRyj9pp1bQ0j7XbL6PAxTbWKZtrtfKh+H
DTEF8/NM2QzzyMSGG+fBQ4DaSocC7QuGfhhmomVezdBBycqQGmPhJpw2HQzj
hWYzSFbxp5T5IsOkLMz/voCcd5m+G71E3L5PhPbRTRmBHpmQe7yUAHTJ7m1b
xC0ga35m7xM6uFlARZVLDDLmwdnw6DQm03YqXXTJ7u27ntzKMFd5Y2+U34v/
je5+ZrpMl+kyXabLdJku02W6TJfpMl2my/9LIW4H69P8uQwTjB+GgmPi5eSo
UOvT7UVPMYJ8iqMYoyDeesJbQCq558euxQ8fLQaS0C8OMQLhanV7iTHBGR2f
YuDf/U68n4gOLkCqOOuJgwXPj+mk3iGEz6u80J5F+sN91meugZCu01b1CrTW
41W8HD0uJ++x/sWnMHaejxy+XMgIuuNnv4JGdd8jtJgmxG5uiltfORtQq+8R
aqcAj9ffI2zS7TYKYQHijEZgrm8yyHqiegNOm0R0fgep3zB1Iql+dioRqX/2
GxTuZ6cyfg8A8jA3WOzQ7fxNmUj9GRtxnxE2+SZDN2m7YJsZRno27LEU6iqo
W6COCozwNtRu6O+GOgeqD+qHAPsHaJk8LKasvDxz3rcV1pKdl5PHATLXAMww
7OvPyEtGYOXwVdFB8hkY+kkh7ExARDaI51WypRmkivXrviKgc0ab4uP27DzI
bxXnGqZnfvJN06NOHHw42pFDNnDm04ksctqwOgCqOPNJAJwM93Wwzr5ELvFz
rv6D6ArRDrszqoLhSmO+TTetCbyA4iRQnCyNIXYKDuSpa/AHSLvDRtaCh20E
D7sGaxWBhy1DD/syfNX6jMUEHjZiVb82wqE4HJVuM2Qv+4bs8mm9uanxYXCg
AK+2/K38tbDXAz74s6U26oMl0PhaTP6AttCEVhMM4leu+GoBNnMSzAfjv6Nj
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
lWgQgDir10uuBYjntdUKMR6L1+rdCbHcChnBGMNb52AAiOLYRCnbOHGWzHSy
TE4Sf4/ZfWZT85roiXVsO2Ym8cshHjxpVu8f+5E6cRP02kR5DI+zkRBWaTrb
SgHFNKZ0AolOIxnkzpQuJwkvgzC7IgiGnCTSIWqbw5FkiHHau9YghuSqN5nM
UU0NDOCJs+TsGuXx82yKrOvk/QdQGFLOwMuBTIeLi2GGsCkwarrdT0ndw3wB
Lk7F+EGMO4w/jZjwPLnGJCe2umd5m2Jdbkz/2Hwhlh8kmhorPBwDzJDzjRoz
HI2qfHPfx6sW+0MP3BX5yrDbyC/3Q2ZTlTZ2oRx0Rxn7mDzds1pU76+uPM02
rB7jXijTnK4eBnsyf8WeY7E+iUM9v0oZw6XImDbI5lSBUCwd7jToSockOfUG
xq+eUvv+cYtyTg1j/LhpUt/wdC8tRlsnbCoW/IN0bT+DdxoIp3S+com4yHos
zRkepgM0d8cwnBQ9W7fmbPUG8iZwtizInSBT7LGccvsr9lqa3QlSj+WMNd1b
R+yaKvdqOR5w8Ws6m4rzKYed5r+XGwTZG8fjMK5tk477HK8STZOywxU7T5Kj
QVjJFdAMN9ND32P6mpZ5/oKvu/sm7MUB7hurOQ2bweGm48xQPNmeJ3UH57jn
yXzTPX8RmfHyRw97sLZtRG1LYGAjIASCHD0XiIdVysrDsAgoJQfYU7W+MYEn
PfLhbsxf3oAfK2AP+b6GoRD4eY47SUaGQxORFz6HZwv5wADLoVhJ76pFIUAr
qkWxFTW0iQ8yl1nRJ9ytW6slR1ztnGafq1b6e0okKqe9bGwPoI2raKXv+z10
NkUP/T2a3Wmx7zPPKs43xLPqlk/mWXXTJ/Gs6oEC5AL9UdXDYqGTs6tGJgpF
XPL5uUeCOCHlsCKhJHZYX1nfAL62opN+uGsfKWk4uqSoBjfeVJVl1uXwnvpE
UEx6A5l1VYJLLjhDGyuP0Yn4FgO+THHNdV1aPLnrpOsbCS2beLRqUGIyc51t
JNfj0FGCcxC0Z1BNaf+r70FWULoTHwMcniSI2d7tUBPSFpoXxLMvppd95GsF
/5yH4cDDUJ6H99zmYSzplYm1dZ7YW32+m32+HsHnEHvnnUSbtY3Y+9MVH9Ch
Qa5bLezZFUPuuFGo4SB2hdE0Gq9grRjtGOx97RTH2by/Pctx5Dqi7xQRAJUc
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
Q7+RjODQ27zkNVDmVYoqAdg2ilLuFWDURH5ckj3C+n8+17b/JL3xJ+FX1//P
3azollDUb6ZRyl8C3IP37supgH9NC29jnimhlHjZeTu4+O3tCnAx6+ISnl9a
cIeBKwV3OO4NiyklfpX5I3DxK4ml4I7C/Sa494EbAu79uL98ilLif7LaDS5s
naj3wcW98OvgwlaPWgsufvSwCj9AD+7Kp/j5PEWQHQ9VUkoEilL97G9C35/q
3/hLImLo7n8Vv/B3J0Z5vz/Rv/nXP/+z/f7E/+Zfb17VwNKIn2GjRD0cuVAe
CBCDYxzmgRPcchjrOA5xDCOv1vTL5geqY6DgHw1+qeD/dT+/B/wywf9CP/+6
fv71/fwv9vNv6Od/qZ8fr4QNwjGNdjscz2IpScJPWCx+dtWzY3vtMl/z7qat
vFv+ZgtOCSpmtZO42wC/dvOpzXcbA+W3eDdGcD/+N/FjBXcH4H/+duvb91Hf
ve19e8Hd6a/eRHyzgaGzTy06paIyTzlOhf8c/3jz2ZZrsOtYzeeME+B/+on7
XzKMUa7dK8hdsTBOxPzwpoL58Urhmw34/sFgYQzJhbEtF+LkwpgaJMyF3rR7
hbzoKgS6SiEO5fdwATB+rBCvE8KxQjhOCFuFPHOEeJvgpgv0M4Sy84X4ZcLc
Q3Miyvxioa7+Ar5TqHO54D4rpLuE9AqBDn52/hGAN4TwJqE+W4TyfifE7xTq
d1hI/0pIDx7E80Ll99KoX+L/SpZft4OXU8ogACWAHEAGIAWgALoZStkO4AU4
A3AEoBFgN8AugI8AtgO8D7ANYAvAWwCvA7wKsBFgPcBagAqAlQBFALkC/mKA
eQBWgHgAM4AaIBRABRACEMTgx1CgLjRf3ylC/SeshTVzw7+GNcKjXnsXPeUt
ccxt5cbvtv+6rM8f87q8z2+tU/T5QzuG9/qdv3713l6/aveeUbxfuvfA/S9o
0b/ph6bD9+87PjNG1f7Gx0UTt/3h09/mxRxZeHP8d/e9MGuUzxXz1K+/ejlu
qJ/nkQ/eiLm29634H8qHryt/9i8xe81fvPM5lzxm5b7jMYX1LWvbnAcSP3lp
W+zuyidTHzZ4uopaSqft/vsLZ6/99oZv9buz4zadX/5t05VHHq0ofyh+gnLk
u91/VH776f7r8b7fnbja5fvmsadf/txib2p4ceg7f3xr1LebE4bYR8qZ8ueY
5QeSUuZNa/3dSwaTbteff7Cl/O67hVGfLjSxb2yYzy18p32Tqmbu1rWRWUdv
svPZ5vEL3ddOL3335e6rD+99u3Hh350FMw785hVVtXjO4v3jGWz6Z02fCTeJ
b0Q/FRXw1eYi/OmOnp9t+nqW55WC4a5/RNcdn2QfdW7eyJ1HL0cfUYyrSLw/
8f1Pf3cpOuadHXn5H/j9LfI5X7Qmave0p7/7YuPeL7+P3nfz5uGsimErmt5r
jX50xoJvUvbv2fjy+QPRG/bbTEz8Z0F7/uOD6LNLP9losPzhgT99vjE6dFz9
ud2fmMKy2Kejs1Izalf/yVY6/K+Z0V9detTjv2dD5Ygb8dGh0VvbDFsfvrBm
26+iy97f1Lo7uzThyN9Tpy55xr9p3NwVLu7F8qgXrxtHPb1kfFxYzfvmse6j
+mcTX9lF3fzKdKZqnuz+P3m/fe4diam+wjJt0I7XmMjTU4yap0KOjTsdfil5
/XzDO8/vqUk/tfXZd97+OPxc7p+H/W7Om/EZO5WTxie3To7QzrL98fCT49dl
SLfUnN1XdsNb/8Ab31fNT3/RvNfqejB45nT7Ezdd6z7w31g2rHXy2TcPH2uU
/v2d5gBnES8/2y9znNU2978kh63x/7X8+nUwr9fd1rf7n4/9NIyfXTUBzBf0
gVdwnQY4AXAV5Rg0Sg0wE2CZ6HYeoyBnV/D6CoWvEeMXJPB9ZFSUHwVIAcgX
DaiHA8/AM/AMPAPPwDPwDDwDz8Az8Aw8A8/A87/6UVLUW7B/f0Adq05Qz1Jn
qXPUhepadaP6C/UFdY9aETY2TBeWEJYelhu2Omxj2Pth28M+CtsVtjusJmx/
WGNYU9iRsBNhzWHB4Q+Hh4U/Hp4V7gjfFX4iPFgzWvOQxqKZoWE1v9Zs1nyo
+VpzXqPShmonaCdp47VJ2hlaq7Za+5J2m/YP2h3aBu2XWkrnpxuqe0in18Xp
bLrdulrdQd30iCUR70b8NeJmRGDkiMjoyMcil0Yuj3w78veRJyK5yEH66Xqr
PkOfq8/XF+lp/Up9qf6Q/oj+C/1p/Tm9V/+jvkN/TU8ZpIbBBqXhQcMEwxSD
0ZBgmGF43fC24UNDraHBcMhwxPCl4ZShxdBquGC4ZLhquG6IMq4wlhlfMv6H
8ffGPxl3G/cZG43HjBeMPxqvGe8xjTU9YnrUVGyqMLWYbpgCzA+ZY8yJ5nnm
ReYCM2MuNVeY3zPvNNeaD5iPmr8yf2P+3vyjucvMmQOjlFEhUaFRk6K0UY9F
zYmaH/VElCOqLKoy6s9Rn0X9PerbqCtR3VFclGyqYurIqaOnTpiqnopG7W7o
pjVqj/ol9R/Uf4a+aVB/pT6n7lAPChseFhw2OmxcmDosJcwWtigsO6wgjA6r
CKsOOxxGh2dp87W09nmtR7tZ+652u/YTbY32U+0h7Wltq/aWVqEboZugq9bN
iEiNKIpwRbgjNkS8FrEv4u8RPwCvF0Sm6Z/QP2c4ZvzB2G28aRxkkpviTVZT
ummpaZmJNq02vWJ607TFtN30semYqdk03HyfWWs2mqebs81F5uVml3m9+ffQ
4nFRj0TZojKinolaF1Ub1QitVEwdNdU4ddbUkqm/nfre1DNTz039caoyWhcd
H22Lrox+Obo5ujX6UjSlpqgmaLdYrVSPVj+onqB2qavVx9Qjw66H3ROeFG6F
cbY8/LnwT8NHaCZocjSrNR7Nm5pPNcc0LRqf5pZmvFarXQ7ja5v2I+0R7Xfa
G1qxLkm3WLdUV6ijdSt1pbqtukO673QXde26Dl23rkdHRUgjZBFzIuZFPB6x
OCI74mDEFxHtEV0RPRFUpDRybOT0yLLIisiqyLWR6yM3Rr4a+XrkW5EXItsj
OyK7I3si9xoOG8YbY4xJxpnGucaXjZ8ZvzZeMU4x1U79aioeFqJ97bPwf4Tf
CB+kmalxaFZoKjSvaN7SvK85q2nXcDAzHtImamdrH9dmafO0Tu3L2t9Ar70H
M6NV2669rvXTKXSjdGN0T+jydU/pluue0W3U/YducIQiYnLE1IjZETkRFdB/
b0Z8EHEk4kzEJah1YGRIZG6kM/L5yHVCfT+N9EX66eV6pT5IH6wP0av0ofoJ
+mIya5z6Cv0F/T/0SsNIQ4hBZQg1xBqeNPzWsMWwzfC+YbvhI8Muw25DjSHA
qDQGGYONIUaHscS4ylhprDZuNP7GuBlmynbjx8Z64zljh+maaYR5gvlRc6w5
2ZxhdpjLzC+bP4bRMDoqKmpaVFZUAYyHShgRr0RtjaqLaoFRHzy1aOpzU/8y
dWx0QjQe/uAdeU/YlrAfwxLDc8LXhH8Q/lV4e7hOM1vzoNYI47pC26hr0h3R
ndA1687oWnStOq/Ql+9E1EQcBQ68qj+pn2Z43GA3iKfeO/WFqV/CWLsw1RCd
F70/+iCMMihgMX9WE6FeFI4HR0Fo49Tu0u7XNsKYOaHFQ6MWiJOrt6nfV29X
f6Tepd6trlGfULeAZJSHKcNUYfowc1h82GJNtiZXk69ZqXlVs02zS6PXmrUx
gpSr0K7VbtS+rt2ifR/G4m6g3gS0z0C/XtR2aHu0Up1cF6JT6YpMK02lJidI
lSrTWtN600bTq6bXTW/BHNtmeh/m2UemXabdphrTflOjqcl0xHQCZt0ZkECt
Jq/poqnd1GHqNvWYKLPULDPLzUpzkDnYHGJWmdUwL/VmM8ioeHOSeYbZap5r
XmzeFb07emDxG3gGnoFn4Bl4Bp6BZ+D5/+/5P1BLAQIUABQAAgAIAAp+Fynl
IMBQrZ0AAACQAQAIAAAAAAAAAAAAIAC2gQAAAABvY2lfLmRsbFBLAQIUABQA
AgAIAAR+FylpgC6DCksAAACwAAAKAAAAAAAAAAAAIAC2gdOdAABCdWZmZXIu
ZGxsUEsFBgAAAAACAAIAbgAAAAXpAAAAAA==
---559023410-851401618-970671560=:2377--
From chrisw@nipltd.com Wed Oct 4 16:16:59 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Wed, 04 Oct 2000 16:16:59 +0100
Subject: [Zope] dunno
References: <20001003182153.A16179@enteract.com>
Message-ID: <39DB49EB.69E89B1A@nipltd.com>
Fred Yankowski wrote:
>
> Version 0-7-2 of Squishdot seems to use the url_quote option when
> accessing the value of admin_address in particular, so when a DTML
> page has code like
>
>
Where does this code occur? (all occurences please ;-)
> and admin_address is a property with the value "foo@bar.com", the
> resulting HTML code is
>
> foo%40bar.com
>
> which doesn't work correctly, particularly when used as the value of a
> 'mailto:' URL.
How odd... Where have you got a mailto: URL? I've never had problem with
this. What evrsion of Zoep are you using?
> So what's the solution? Is Squishdot wrong to use url_quote this way?
Dunno...
> Why is url_quote hiding the "@" anyway -- I don't see any reason for
> escaping it this way.
Dunno...
Anyone with clues, please give me one :-)
cheers,
Chris
From chrisw@nipltd.com Wed Oct 4 16:19:31 2000
From: chrisw@nipltd.com (Chris Withers)
Date: Wed, 04 Oct 2000 16:19:31 +0100
Subject: [Zope] 'Offline' mailhost
References: <39D40049.28D21513@adroit.net> <39D40CCA.5398331@digicool.com> <39D9D22D.BB48DFA6@nipltd.com> <39DAC5AB.CE9CC1EE@tm.ee>
Message-ID: <39DB4A83.6858FB20@nipltd.com>
Hannu Krosing wrote:
> Perhaps it would be better to solve this by configuring your sendmail
> (or other SMTP MTA) to be non-blocking, i.e. store-and-forward.
Can you tell me how to set that up with exim?
> Also you could send just one message to all the recipients instead of
> sending individual messages.
Urm, they could be pretty unfriendly mail messages if they're being sent
to a coupla thousand people. The bandwidth dcoming out of your server
alone would be far higher than it needed to be :-(
> > I wonder how mailman does this stuff and if the code could be borrowed
> > for Zope?
>
> Maybe you could just use mailman as MTA, greating temporary
> mailing-lists.
Any how-to's for this or how hard it would be to set up?
cheers,
Chris
From kthangavelu@earthlink.net Wed Oct 4 11:33:37 2000
From: kthangavelu@earthlink.net (Kapil Thangavelu)
Date: Wed, 04 Oct 2000 03:33:37 -0700
Subject: [Zope] Detecting Roles not working
References: <39DB2C39.3824562B@home-all.org.uk>
Message-ID: <39DB0781.C577FBE2@earthlink.net>
Jonathan Cheyne wrote:
>
> Hi all
>
> I have built the basis of a site with full, form-based webediting of
> objects. Coming round to cleanup time and I wanted to remove certain
> visible functions from the default object views unless you have already
> logged in (with various possible roles)
>
> in the index_html of my zclass i have
>
>
> edit this
>
> so if the user is anonymous or logged in without the Staff role assigne
> they should not see the "edit this" link ...
>
> Doesn't work! It basically never returns a 'true' response thus never
> displays the edit this link even when logged in.
try (untested)
Cheers
Kapil
From l.caroti@wayin.net Wed Oct 4 16:41:21 2000
From: l.caroti@wayin.net (Luciano Caroti)
Date: Wed, 4 Oct 2000 17:41:21 +0200
Subject: [Zope] Implementing a distributing mirror
Message-ID:
Hi,
I would like to implement a system to distribute PDF document. I would like
to use ZOPE on 5 server distributed in Europe. I would like to build a
system that send an email to a paying user where I put an URL. I would like
that in URL I send temporary authentication information to allow access to a
virtual directory where I put only documents or images files that user
purchased. Have you any hints on how implement this architecture?
Thank you in advance,
Luciano Caroti.
From amonta@regents.state.la.us Wed Oct 4 16:45:55 2000
From: amonta@regents.state.la.us (Dr. Anthony Monta)
Date: Wed, 04 Oct 2000 10:45:55 -0500
Subject: [Zope] help! dtml-if question
Message-ID: <4.3.1.0.20001004101455.00ad1880@regents.state.la.us>
Hi,
I've tried to find a solution myself but now am stuck. I created a little
"Blurb" product for a university department website so that faculty members
can announce recent publications on the department's homepage. They create
these ZClass instances in their own folders, and a DTML method in the
top-level folder grabs and displays them at random. (I want to avoid using
ZCatalog for the time being.) What the method does is randomly choose a
faculty folder, and then randomly choose a Blurb instance within that
folder. Here's the hack I came up with:
(end tags omitted)
The problem is that this method will produce an Index Error when it comes
across a folder that doesn't contain an instance of "Blurb" class. So I
need to make the selection of a folder conditional on Zope's finding a
Blurb in that folder. Here's what I tried after reading up:
Some default Blurb would appear.
This method fails. Can someone help?
Cheers,
Anthony
~~~~~~~~~~~~~~~~
Anthony Brietz Monta
Coordinator of Curricular Assessment & Academic Reporting
Louisiana Board of Regents
150 Third Street, Suite 129
Baton Rouge, LA 70801-1389
225.342.4253, ext. 143
amonta@regents.state.la.us
From klm@digicool.com Wed Oct 4 16:54:40 2000
From: klm@digicool.com (Ken Manheimer)
Date: Wed, 4 Oct 2000 11:54:40 -0400 (EDT)
Subject: [Zope] 'Offline' mailhost
In-Reply-To: <39DAC5AB.CE9CC1EE@tm.ee>
Message-ID:
On Wed, 4 Oct 2000, Hannu Krosing wrote:
> Perhaps it would be better to solve this by configuring your sendmail
> (or other SMTP MTA) to be non-blocking, i.e. store-and-forward.
This seems like a good idea. It makes it hard to get disposition status
for the delivery in the transaction - but that problem is intrinsic to
email communications, and probably best addressed by using the "sender"
header (i think it is), so delivery failure notifications go to someone
who needs to know about the failure.
Even better - but lots more complicated: have the failure notifications
directed to a program which queues the fact of the failure for the sending
program to use. I haven't used it, but contemporary MTAs have catchall
aliases, by which you can handle a pattern of recipients. Have the
envelope sender fit the pattern, and encode the information about the
program that needs to get back the failure information.
I think this kind of architecture is necessary for comprehensive mail
sending from zope, with delivery failure accounting, since mail sending is
inherently asynchronous.
> Maybe you could just use mailman as MTA, greating temporary
> mailing-lists.
This is also a good idea in principle, but would wind up being cumbersome.
Mailling list "objects" are heavy weight components in mailman - each one
having a list metadata and archive directory, mta aliases, etc. Plus, you
may have to leave the list up until the last delivery is completed
(successful or not). Better, i think, to adopt techniques and steal code
from mailman, to take the pieces you want. Ultimately, i don't think
you'd be taking that much - there's a lot in python that gets you a lot of
the way. It's the embedded knowledge that's useful...
--
Ken
klm@digicool.com
From joachim.werner@iuveno.de Wed Oct 4 17:00:03 2000
From: joachim.werner@iuveno.de (Joachim Werner)
Date: Wed, 4 Oct 2000 18:00:03 +0200
Subject: [Zope] IMAP and Zope!
Message-ID: <00100418001401.10603@promotor>
Thanks for the input I got!
Just a small wrap-up of what I learned:
- The NotMail and old IMAP Adapter code don't seem to be seriously used by
anybody
- WorldPilot could be a solution, but it only if it was more modular. Ryan
Hughes promised to integrate it into Zope by release 2 (incl. a ZODB-based
document storage
- There is a similar project by Morten W. Petersen that also will feature a
ZODB-based message storage that will be searchable, Catalog-aware etc.
Joachim.
--
Iuveno - Smart Communication
Joachim Werner
_________________________________________
Marie-Curie-Straße 6
85055 Ingolstadt
Tel.: +49 841/90 14-325 (Fax -322)
Mobil: +49 179/39 60 327
E-Mail: joachim.werner@iuveno.de/joachim.werner@iuveno-net.de
WWW: www.iuveno.de/www.iuveno-net.de
-------------------------------------------------------
--
Iuveno - Smart Communication
Joachim Werner
_________________________________________
Marie-Curie-Straße 6
85055 Ingolstadt
Tel.: +49 841/90 14-325 (Fax -322)
Mobil: +49 179/39 60 327
E-Mail: joachim.werner@iuveno.de/joachim.werner@iuveno-net.de
WWW: www.iuveno.de/www.iuveno-net.de
From bill@carbonecho.com Wed Oct 4 17:11:41 2000
From: bill@carbonecho.com (Bill Welch)
Date: Wed, 4 Oct 2000 16:11:41 +0000 (GMT)
Subject: [Zope] 'Offline' mailhost
In-Reply-To: <39DB4A83.6858FB20@nipltd.com>
Message-ID:
Techniques for effeciently sending a message to a large number of
recipients are covered extensively in majordomo documentation -
www.greatcircle.com/majordomo. Also check out
ftp://cs.utk.edu/pub/moore/bulk_mailer
Bill.
On Wed, 4 Oct 2000, Chris Withers wrote:
> > Also you could send just one message to all the recipients instead of
> > sending individual messages.
>
> Urm, they could be pretty unfriendly mail messages if they're being sent
> to a coupla thousand people. The bandwidth dcoming out of your server
> alone would be far higher than it needed to be :-(
From sfl@beehive.de Wed Oct 4 17:15:16 2000
From: sfl@beehive.de (Sebastian Luehnsdorf)
Date: Wed, 4 Oct 2000 18:15:16 +0200 (CEST)
Subject: [Zope] cookies & ie5.5 win
Message-ID:
hi!
config: zope 2.1.6 under red hat with customized UserDB.
i'm having a strange problem with cookie based user authentication with
ms internet explorer 5.5 on windows. it seems that the browser (but only
this version and only under windows!) seems to "forget" its cookies, which
results in an immediate logout. does anybody have similar experiences or a
even solution?
any help would be appreciated.
ciao, basti
--------------------------------------------------------------------------
sebastian f. luehnsdorf beehive elektronische medien gmbh
--------------------------------------------------------------------------
http://basti.beehive.de http://www.beehive.de
mailto:basti@beehive.de mailto:service@beehive.de
http://www.zope.de fon: (+49 30) 84 78 20
http://www.i-surf.de fax: (+49 30) 84 78 22 99
From drusch@globalcrossing.com Wed Oct 4 17:23:20 2000
From: drusch@globalcrossing.com (Daniel Rusch)
Date: Wed, 04 Oct 2000 11:23:20 -0500
Subject: [Zope] Detecting Roles not working
References: <39DB2C39.3824562B@home-all.org.uk> <39DB0781.C577FBE2@earthlink.net>
Message-ID: <39DB5978.8F8CF1EF@globalcrossing.com>
This works for me, no pun intended :)
Dan
Kapil Thangavelu wrote:
>
> Jonathan Cheyne wrote:
> >
> > Hi all
> >
> > I have built the basis of a site with full, form-based webediting of
> > objects. Coming round to cleanup time and I wanted to remove certain
> > visible functions from the default object views unless you have already
> > logged in (with various possible roles)
> >
> > in the index_html of my zclass i have
> >
> >
> > edit this
> >
> > so if the user is anonymous or logged in without the Staff role assigne
> > they should not see the "edit this" link ...
> >
> > Doesn't work! It basically never returns a 'true' response thus never
> > displays the edit this link even when logged in.
>
> try (untested)
>
>
> or (tested)
>
>
>
> Cheers
>
> Kapil
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
From jwashin@vt.edu Wed Oct 4 17:30:15 2000
From: jwashin@vt.edu (Jim Washington)
Date: Wed, 04 Oct 2000 12:30:15 -0400
Subject: [Zope] help! dtml-if question
References: <4.3.1.0.20001004101455.00ad1880@regents.state.la.us>
Message-ID: <39DB5B17.5050307@vt.edu>
Hi, Anthony
how about:
0">
Your _.has_key() (I think you meant _.hasattr()) statement was looking
for something named "Blurb", not a thing of type"Blurb", so of course it
failed.
The objectValues(['atype']) statement returns a list of the things of
the type, so checking for a non-zero length of the list will do what
you need.
-- Jim Washington
Dr. Anthony Monta wrote:
> Hi,
>
> I've tried to find a solution myself but now am stuck. I created a
> little "Blurb" product for a university department website so that
> faculty members can announce recent publications on the department's
> homepage. They create these ZClass instances in their own folders,
> and a DTML method in the top-level folder grabs and displays them at
> random. (I want to avoid using ZCatalog for the time being.) What
> the method does is randomly choose a faculty folder, and then randomly
> choose a Blurb instance within that folder. Here's the hack I came up
> with:
>
>
>
>
>
>
>
>
> (end tags omitted)
>
> The problem is that this method will produce an Index Error when it
> comes across a folder that doesn't contain an instance of "Blurb"
> class. So I need to make the selection of a folder conditional on
> Zope's finding a Blurb in that folder. Here's what I tried after
> reading up:
>
>
>
>
>
>
>
>
>
>
> Some default Blurb would appear.
>
> This method fails. Can someone help?
>
From Danny@Adair.net Wed Oct 4 18:57:56 2000
From: Danny@Adair.net (Danny William Adair)
Date: Wed, 4 Oct 2000 19:57:56 +0200
Subject: [Zope] Re: [Zope-dev] DynPersist.so from ZPatterns 0-4-2a3
In-Reply-To: <39DB36A2.4080601@cat-box.net>
Message-ID:
>You can build one yourself on that server.
Thanks, I've built one. :-)
From grundhan@cs.tu-berlin.de Thu Oct 5 21:21:39 2000
From: grundhan@cs.tu-berlin.de (Hannes)
Date: Thu, 05 Oct 2000 21:21:39 +0100
Subject: [Zope] Client.py and timeouts
Message-ID: <39DCE2D1.F8EE2D4B@cs.tu-berlin.de>
I recently used Client.py to get data from the web into the zope
machinery,
the setup was exactly as proposed in the ZClient How-To.
Maybe I missed something, but the Client module seems to support
the setting of an timeout, but I was unable to finger out the right
syntax
I thought of:
web_client(url='http://someserver.com', timeout=60)
or some variants of it.
(or it doesnt work at all for some other reasons.)
Any help would be appreciated..
Hannes
From mindlace@digicool.com Wed Oct 4 20:23:42 2000
From: mindlace@digicool.com (ethan mindlace fremen)
Date: Wed, 04 Oct 2000 15:23:42 -0400
Subject: [Zope] zope.org restarting
Message-ID: <39DB83BE.109AA5AB@digicool.com>
Zopatistas,
we're tracking down a memory leak. Thanks for your patience,
~ethan
From jatwood@bwanazulia.com Wed Oct 4 20:38:43 2000
From: jatwood@bwanazulia.com (J. Atwood)
Date: Wed, 04 Oct 2000 15:38:43 -0400
Subject: [Zope] Wierd 2.2.2 start up problem
Message-ID:
I have installed 2.2.2 on more than a few machines.... on my fifth machine I
got this after doing the install.
2000-10-04T19:54:35 ERROR(200) ZODB Couldn't load state for
'\000\000\000\000\000\000\000\003'
Traceback (innermost last):
File /usr/local/Zope-2.2.2-linux2-x86/lib/python/ZODB/Connection.py, line
446, in setstate
ImportError: No module named Document
I have tried wiping it away and trying again like three times. Anyone know
what this? Why it is not happening in installs. All RH Linux.
Thanks,
J
From peter@grenna.net Wed Oct 4 21:10:54 2000
From: peter@grenna.net (Peter Bengtsson)
Date: Wed, 4 Oct 2000 21:10:54 +0100
Subject: [Zope] Detecting Roles not working
References: <39DB2C39.3824562B@home-all.org.uk> <39DB0781.C577FBE2@earthlink.net> <39DB5978.8F8CF1EF@globalcrossing.com>
Message-ID: <004001c02e3f$34595160$01d4a8c0@peppe>
Stolen somewhere from this list, and I don't remember from who.
...is cool to have as well if you ever need it.
Let's you not use specific names of ACL's such as "Staff" or "CopyWriter".
>
>
> This works for me, no pun intended :)
>
> Dan
>
> Kapil Thangavelu wrote:
> >
> > Jonathan Cheyne wrote:
> > >
> > > Hi all
> > >
> > > I have built the basis of a site with full, form-based webediting of
> > > objects. Coming round to cleanup time and I wanted to remove certain
> > > visible functions from the default object views unless you have already
> > > logged in (with various possible roles)
> > >
> > > in the index_html of my zclass i have
> > >
> > >
> > > edit this
> > >
> > > so if the user is anonymous or logged in without the Staff role assigne
> > > they should not see the "edit this" link ...
> > >
> > > Doesn't work! It basically never returns a 'true' response thus never
> > > displays the edit this link even when logged in.
> >
> > try (untested)
> >
> > >
> > or (tested)
> >
> >
> >
> > Cheers
> >
> > Kapil
> >
> > _______________________________________________
> > Zope maillist - Zope@zope.org
> > http://lists.zope.org/mailman/listinfo/zope
> > ** No cross posts or HTML encoding! **
> > (Related lists -
> > http://lists.zope.org/mailman/listinfo/zope-announce
> > http://lists.zope.org/mailman/listinfo/zope-dev )
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
From shane@digicool.com Wed Oct 4 21:21:58 2000
From: shane@digicool.com (Shane Hathaway)
Date: Wed, 04 Oct 2000 16:21:58 -0400
Subject: [Zope] timecards@digicool.com
Message-ID: <39DB9166.575C595D@digicool.com>
This is a multi-part message in MIME format.
--------------F0CA5AA85E22BCE2CE9A7E72
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sorry for the tardiness.
Shane
--------------F0CA5AA85E22BCE2CE9A7E72
Content-Type: application/vnd.ms-excel;
name="20000917.xls"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="20000917.xls"
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAOwADAP7/CQAGAAAAAAAAAAAAAAABAAAAEwAAAAAA
AAAAEAAAEQAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
///////////////////////////////////9/////////wMAAAAEAAAABQAAAAYAAAAHAAAA
CAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAA/v////7////+/////v//////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////1IA
bwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAWAAUA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7///8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA/v///wAAAAAAAAAACQgQAAAGBQC7DcwHAAAAAAYAAADhAAIAsATBAAIA
AADiAAAAXABwAAgAAFN0YXJDYWxjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBCAAIAsARhAQIAAAA9AQIAAQCcAAIADgAZAAIAAAASAAIAAAATAAIA
AACvAQIAAAC8AQIAAAA9ABIA4AFaAM8/Tio4AAAAAAABAFgCQAACAAAAjQACAAAAIgACAAAA
DgACAAEAtwECAAAA2gACAAAAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgA
AAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwA
MQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIA
aQBhAGwAMQAaAMgAAAAIALwCAAAAAgClBQFBAHIAaQBhAGwAMQAaAMgAAAAIAJABAAAAAACl
BQFBAHIAaQBhAGwAMQAaANwAAgAJALwCAAAAAAClBQFBAHIAaQBhAGwAMQAaAMgAAgAJALwC
AAAAAAClBQFBAHIAaQBhAGwAMQAaAMgAAgAIALwCAAAAAAClBQFBAHIAaQBhAGwAMQAaAMgA
AAAIAJABAAAAAgClBQFBAHIAaQBhAGwAMQAaAMgAAAANALwCAAAAAgClBQFBAHIAaQBhAGwA
HgQeAAUAGQAAIywjIzBcICJETSI7XC0jLCMjMFwgIkRNIh4EIwAGAB4AACMsIyMwXCAiRE0i
O1tSZWRdXC0jLCMjMFwgIkRNIh4EJAAHAB8AACMsIyMwLjAwXCAiRE0iO1wtIywjIzAuMDBc
ICJETSIeBCkACAAkAAAjLCMjMC4wMFwgIkRNIjtbUmVkXVwtIywjIzAuMDBcICJETSIeBD4A
KgA5AABfLSogIywjIzBcICJETSJfLTtcLSogIywjIzBcICJETSJfLTtfLSogIi0iXCAiRE0i
Xy07Xy1AXy0eBD4AKQA5AABfLSogIywjIzBcIF9EX01fLTtcLSogIywjIzBcIF9EX01fLTtf
LSogIi0iXCBfRF9NXy07Xy1AXy0eBEYALABBAABfLSogIywjIzAuMDBcICJETSJfLTtcLSog
IywjIzAuMDBcICJETSJfLTtfLSogIi0iPz9cICJETSJfLTtfLUBfLR4ERgArAEEAAF8tKiAj
LCMjMC4wMFwgX0RfTV8tO1wtKiAjLCMjMC4wMFwgX0RfTV8tO18tKiAiLSI/P1wgX0RfTV8t
O18tQF8tHgQMAKQABwAAR2VuZXJhbB4EDQClAAgAAERELk1NLllZHgQIAKYAAwAATS9E4AAU
AAAAAAD1/yAAAAAAAAAAAAAAAMAg4AAUAAEAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAEAAAD1
/yAAAPQAAAAAAAAAAMAg4AAUAAIAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAIAAAD1/yAAAPQA
AAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAA
AMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAU
AAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1
/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQA
AAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAABACAAAAAAAAAAAAAA
AMAg4AAUAAEAKwD1/yAAAPgAAAAAAAAAAMAg4AAUAAEAKQD1/yAAAPgAAAAAAAAAAMAg4AAU
AAEACQD1/yAAAPgAAAAAAAAAAMAg4AAUAAEALAD1/yAAAPgAAAAAAAAAAMAg4AAUAAEAKgD1
/yAAAPgAAAAAAAAAAMAg4AAUAAYApAABACAAAAAAAAAAAAAAAIkE4AAUAAcApAABACAAAAAA
AAAAAAAAAIkE4AAUAAcApQABACEAAAAAAAAAAAAAAIkE4AAUAAYApAABACIAAAAAAAAAAAAA
AIkE4AAUAAcApgABACAAAAAAAAAAAAAAAIkE4AAUAAgApAABACEAAAAAIAAAAAQABAoE4AAU
AAkApAABACMAAAAAIAAAAAQABAoE4AAUAAoApAABACEAAAAQEgAECAQABAsE4AAUAAsApAAB
ACEAAAAREggECAQABAsE4AAUAAcApAABACAAAAAREggECAQABAsE4AAUAAcApAABACAAAAAB
EggACAQABAwE4AAUAAoApAABACEAAAAQEQAECAQABAsE4AAUAAsApAABACEAAAAREQgECAQA
BAsE4AAUAAcApAABACAAAAAREQgECAQABAsE4AAUAAcApAABACIAAAAREQgECAQABAsE4AAU
AAoApAABACEAAAAREQgECAQABAsE4AAUAAcApAABACAAAAABEQgACAQABAwE4AAUAAoApAAB
ACEAAAAQAQAECAAABAsE4AAUAAoApAABACEAAAARAQgECAAABAsE4AAUAAcApAABACAAAAAR
AQgECAAABAsE4AAUAAcApAABACAAAAABAQgACAAABAwE4AAUAAwApAABACAAAAAAAAAAAAAA
AIkE4AAUAAcApAABACAAAAAAAAAAAAAAAIkEkwIEABCAA/+TAgQAEYAG/5MCBAASgAX/kwIE
AACAAP+TAgQAE4AE/5MCBAAUgAf/kgDiADgAAAAAAP///wCAAAAA///AAMDAwAD/AAAA/wD/
AAD//wCAAAAAAIAAAAAAgACAgAAAgACAAACAgADAwMAAgICAAJmZ/wCZM2YA///MAMz//wBm
AGYA/4CAAABmzADMzP8AAACAAP8A/wD//wAAAP//AIAAgACAAAAAAICAAAAA/wAAzP8AzP//
AMz/zAD//5kAmcz/AP+ZzADMmf8A/8yZADNm/wAzzMwAmcwAAP/MAAD/mQAA/2YAAGZmmQCW
lpYAADNmADOZZgAAMwAAMzMAAJkzAACZM2YAMzOZADMzMwBgAQIAAACFAA4ADQwAAAAABgBT
aGVldDGMAAQAMQAxAK4BBAABAAEEFwACAAAAGAAsAAAAABANAAAAAAAAAAAAAFNIQVJFRF9G
T1JNVUxBXzAlAAAAAPnA/8BiAQQAGAAsAAAAABANAAAAAAAAAAAAAFNIQVJFRF9GT1JNVUxB
XzElAAAAAPnA/8BiAQQA6wBaAA8AAPBSAAAAAAAG8BgAAAABBAAAAgAAAAEAAAABAAAAAQAA
AAEAAAAzAAvwEgAAAL8ACAAIAIEBCQAACMABQAAACEAAHvEQAAAADQAACAwAAAgXAAAI9wAA
EPwAggEiAAAAIgAAAAQAAE5hbWUOAABTaGFuZSBIYXRoYXdheQ0AAFdlZWsgU1RBUlRJTkcE
AABEYXRlCAAAQ3VzdG9tZXIHAABQcm9qZWN0BAAAVGFzawMAAFN1bgMAAE1vbgMAAFR1ZQMA
AFdlZAMAAFRodQMAAEZyaQMAAFNhdAUAAFRvdGFsBwAAQ0lNZWRpYQkAAEJ1ZyBmaXhlcwcA
AENJTWVkaWEMAABDYWNoZU1hbmFnZXIHAABDSU1lZGlhBAAARG9jcwQAAFpvcGUeAABEb2N1
bWVudHMvVGVtcGxhdGVzIGRpc2N1c3Npb24EAABab3BlDwAATWlzYy4gY29yZSB3b3JrBAAA
Wm9wZRgAAENvbW11bml0eSBjb3JyZXNwb25kZW5jZQQAAFpvcGUHAABNZWV0aW5nBQAAU2hh
bmUaAABPcmdhbml6YXRpb24gJiBCb29ra2VlcGluZwcAAENJTWVkaWEJAABPUlN0b3JhZ2UL
AABHUkFORCBUT1RBTP8ACgAiAIEKAAAAAAAACgAAAAkIEAAABhAAuw3MBwAAAAAGAAAADQAC
AAEADAACAGQADwACAAEAEQACAAAAEAAIAPyp8dJNYlA/XwACAAEAKgACAAAAKwACAAEAggAC
AAAAgAAIAAAAAAAAAAAAJQIEAAAA/wCBAAIAwQQUAAAAFQAAAIMAAgAAAIQAAgAAAKEAIgAA
ADEAAQABAAEARABydW5nwY2wgsFg4D/BjbCCwWDgP/AAVQACAAoAfQALAAAAAACVDA8AAAAA
fQALAAEAAQBGDA8AAAAAfQALAAIAAgCUGA8AAAAAfQALAAMAAwDRBg8AAAAAfQALAAQABAC3
BQ8AAAAAfQALAAUACQARBQ8AAAAAfQALAAoACgCEBA8AAAAAAAIOAAAAAAAjAAAAAAALAAAA
CAIQAAAAAAAEAAGBAAAAAAABDwAIAhAAAQAAAAUAAYEAAAAAAAEPAAgCEAACAAAACwABgQAA
AAAAAQ8ACAIQAAMAAAALABmBAAAAAAABDwAIAhAABAAAAAsAAYEAAAAAAAEPAAgCEAAFAAAA
CwABgQAAAAAAAQ8ACAIQAAYAAAALAAGBAAAAAAABDwAIAhAABwAAAAsAAYEAAAAAAAEPAAgC
EAAIAAAACwABgQAAAAAAAQ8ACAIQAAkAAAALAAGBAAAAAAABDwAIAhAACgAAAAsAAYEAAAAA
AAEPAAgCEAALAAAACwABgQAAAAAAAQ8ACAIQAAwAAAALAAGBAAAAAAABDwAIAhAADQAAAAsA
AYEAAAAAAAEPAAgCEAAOAAAACwABgQAAAAAAAQ8ACAIQAA8AAAALAAGBAAAAAAABDwAIAhAA
EAAAAAsAAYEAAAAAAAEPAAgCEAARAAAACwABgQAAAAAAAQ8ACAIQABIAAAALAAGBAAAAAAAB
DwAIAhAAEwAAAAsAAYEAAAAAAAEPAAgCEAAUAAAACwABgQAAAAAAAQ8ACAIQABUAAAALAAGB
AAAAAAABDwAIAhAAFgAAAAsAAYEAAAAAAAEPAAgCEAAXAAAACwABgQAAAAAAAQ8ACAIQABgA
AAALAAGBAAAAAAABDwAIAhAAGQAAAAsAAYEAAAAAAAEPAAgCEAAaAAAACwABgQAAAAAAAQ8A
CAIQABsAAAALAAGBAAAAAAABDwAIAhAAHAAAAAsAAYEAAAAAAAEPAAgCEAAdAAAACwABgQAA
AAAAAQ8ACAIQAB4AAAALAAGBAAAAAAABDwAIAhAAHwAAAAsAAYEAAAAAAAEPAP0ACgAAAAAA
FQAAAAAAAQIGAAAAAQAWAP0ACgAAAAIAFgABAAAAvgAWAAAAAwAWABYAFgAWABYAFgAWABYA
CgD9AAoAAQAAABUAAgAAAAECBgABAAEAFgB+AgoAAQACABcAyj4CAP0ACgABAAMAGAADAAAA
vgAUAAEABAAYABgAGAAYABgAGAAYAAoAvgAMAAIAAAAWABYAFgACAAYAGwACAAMAGQAAAAAA
AAAAAAMAAAAAAAUARAEAAsAGACUAAgAEABkAAAAAAAAAAAADAAAAAAAPAEQCAAPAHwAAAAAA
APA/AwYAJQACAAUAGQAAAAAAAAAAAAMAAAAAAA8ARAIABMAfAAAAAAAA8D8DBgAlAAIABgAZ
AAAAAAAAAAAAAwAAAAAADwBEAgAFwB8AAAAAAADwPwMGACUAAgAHABkAAAAAAAAAAAADAAAA
AAAPAEQCAAbAHwAAAAAAAPA/AwYAJQACAAgAGQAAAAAAAAAAAAMAAAAAAA8ARAIAB8AfAAAA
AAAA8D8DBgAlAAIACQAZAAAAAAAAAAAAAwAAAAAADwBEAgAIwB8AAAAAAADwPwMBAgYAAgAK
ABYA/QAKAAMAAAAaAAQAAAD9AAoAAwABABoABQAAAP0ACgADAAIAGgAGAAAA/QAKAAMAAwAb
AAcAAAD9AAoAAwAEABsACAAAAP0ACgADAAUAGwAJAAAA/QAKAAMABgAbAAoAAAD9AAoAAwAH
ABsACwAAAP0ACgADAAgAGwAMAAAA/QAKAAMACQAbAA0AAAD9AAoAAwAKABsADgAAAAECBgAE
AAAAHAD9AAoABAABABwADwAAAP0ACgAEAAIAHQAQAAAAvgAUAAQAAwAeAB4AHgAeAB4AHgAe
AAkABgAjAAQACgAfAAAAAAAAAAAAAwAAAAAADQAlBAAEAAPACcBCAQQAAQIGAAUAAAAgAP0A
CgAFAAEAIAARAAAA/QAKAAUAAgAhABIAAAC+AAwABQADACIAIwAiAAUAfgIKAAUABgAiAAYA
AAABAgYABQAHACIAfgIKAAUACAAiAAoAAAABAgYABQAJACIABgAjAAUACgAfAAAAAAAAAAAA
AwAAAAAADQAlBQAFAAPACcBCAQQAAQIGAAYAAAAgAP0ACgAGAAEAJAATAAAA/QAKAAYAAgAh
ABQAAAC+ABAABgADACIAIgAiACIAIgAHAH4CCgAGAAgAIgAKAAAAAQIGAAYACQAiAAYAIwAG
AAoAHwAAAAAAAAAAAAMAAAAAAA0AJQYABgADwAnAQgEEAAECBgAHAAAAIAD9AAoABwABACQA
FQAAAP0ACgAHAAIAIQAWAAAAvgAUAAcAAwAiACMAIgAiACIAIgAiAAkABgAjAAcACgAfAAAA
AAAAAAAAAwAAAAAADQAlBwAHAAPACcBCAQQAAQIGAAgAAAAgAP0ACgAIAAEAJAAXAAAA/QAK
AAgAAgAhABgAAAABAgYACAADACIAfgIKAAgABAAjAAYAAAABAgYACAAFACIAvQAYAAgABgAi
AA4AAAAiABIAAAAiAA4AAAAIAAECBgAIAAkAIgAGACMACAAKAB8AAAAAAAAAAAADAAAAAAAN
ACUIAAgAA8AJwEIBBAABAgYACQAAACAA/QAKAAkAAQAgABkAAAD9AAoACQACACEAGgAAAL4A
CgAJAAMAIgAiAAQAvQAYAAkABQAiAAYAAAAiAA4AAAAiAA4AAAAHAL4ACgAJAAgAIgAiAAkA
BgAjAAkACgAfAAAAAAAAAAAAAwAAAAAADQAlCQAJAAPACcBCAQQAAQIGAAoAAAAgAP0ACgAK
AAEAJAAbAAAA/QAKAAoAAgAhABwAAAC+ABAACgADACIAIgAiACIAIgAHAH4CCgAKAAgAIgAK
AAAAAQIGAAoACQAiAAYAIwAKAAoAHwAAAAAAAAAAAAMAAAAAAA0AJQoACgADwAnAQgEEAAEC
BgALAAAAIAD9AAoACwABACQAHQAAAP0ACgALAAIAIQAeAAAAAQIGAAsAAwAiAH4CCgALAAQA
IgAGAAAAvgAQAAsABQAiACIAIgAiACIACQAGACMACwAKAB8AAAAAAAAAAAADAAAAAAANACUL
AAsAA8AJwEIBBAABAgYADAAAACAA/QAKAAwAAQAkAB8AAAD9AAoADAACACEAIAAAAAECBgAM
AAMAIgC9ABIADAAEACIAGgAAACIAGgAAAAUAvgAOAAwABgAiACIAIgAiAAkABgAjAAwACgAf
AAAAAAAAAAAAAwAAAAAADQAlDAAMAAPACcBCAQQAvgAaAA0AAAAgACQAJAAiACIAIgAiACIA
IgAiAAkABgAjAA0ACgAfAAAAAAAAAAAAAwAAAAAADQAlDQANAAPACcBCAQQAvgAaAA4AAAAg
ACQAJAAiABYAFgAWABYAFgAiAAkABgAjAA4ACgAfAAAAAAAAAAAAAwAAAAAADQAlDgAOAAPA
CcBCAQQAvgAaAA8AAAAgACQAJAAiACIAIgAiACIAFgAiAAkABgAjAA8ACgAfAAAAAAAAAAAA
AwAAAAAADQAlDwAPAAPACcBCAQQAvgAaABAAAAAgACQAJAAiACIAIgAiABYAIgAiAAkABgAj
ABAACgAlAAAAAAAAAAAAAwAAAAAADQAlEAAQAAPACcBCAQQAvgAaABEAAAAgACQAJAAiACIA
IgAWACIAIgAiAAkABgAjABEACgAlAAAAAAAAAAAAAwAAAAAADQAlEQARAAPACcBCAQQAvgAa
ABIAAAAgACQAJAAiACIAFgAiACIAIgAiAAkABgAjABIACgAlAAAAAAAAAAAAAwAAAAAADQAl
EgASAAPACcBCAQQAvgAaABMAAAAgACQAJAAiABYAIgAiACIAIgAiAAkABgAjABMACgAlAAAA
AAAAAAAAAwAAAAAADQAlEwATAAPACcBCAQQAvgAaABQAAAAgACQAJAAiABYAFgAWABYAFgAi
AAkABgAjABQACgAlAAAAAAAAAAAAAwAAAAAADQAlFAAUAAPACcBCAQQAvgAaABUAAAAgACQA
JAAiACIAIgAiACIAIgAiAAkABgAjABUACgAlAAAAAAAAAAAAAwAAAAAADQAlFQAVAAPACcBC
AQQAvgAaABYAAAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjABYACgAlAAAAAAAAAAAAAwAA
AAAADQAlFgAWAAPACcBCAQQAvgAaABcAAAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjABcA
CgAlAAAAAAAAAAAAAwAAAAAADQAlFwAXAAPACcBCAQQAvgAaABgAAAAgACQAJAAiACIAIgAi
ACIAIgAiAAkABgAjABgACgAlAAAAAAAAAAAAAwAAAAAADQAlGAAYAAPACcBCAQQAvgAaABkA
AAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjABkACgAlAAAAAAAAAAAAAwAAAAAADQAlGQAZ
AAPACcBCAQQAvgAaABoAAAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjABoACgAlAAAAAAAA
AAAAAwAAAAAADQAlGgAaAAPACcBCAQQAvgAaABsAAAAgACQAJAAiACIAIgAiACIAIgAiAAkA
BgAjABsACgAlAAAAAAAAAAAAAwAAAAAADQAlGwAbAAPACcBCAQQAvgAaABwAAAAgACQAJAAi
ACIAIgAiACIAIgAiAAkABgAjABwACgAlAAAAAAAAAAAAAwAAAAAADQAlHAAcAAPACcBCAQQA
vgAaAB0AAAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjAB0ACgAlAAAAAAAAAAAAAwAAAAAA
DQAlHQAdAAPACcBCAQQAvgAaAB4AAAAgACQAJAAiACIAIgAiACIAIgAiAAkABgAjAB4ACgAl
AAAAAAAAAAAAAwAAAAAADQAlHgAeAAPACcBCAQQAvgAaAB8AAAAgACQAJAAiACIAIgAiACIA
IgAiAAkABgAjAB8ACgAlAAAAAAAAAAAAAwAAAAAADQAlHwAfAAPACcBCAQQAvgAaACAAAAAm
ACcAJwAoACgAKAAoACgAKAAoAAkABgAjACAACgApAAAAAAAAAAAAAwAAAAAADQAlIAAgAAPA
CcBCAQQACAIQACAAAAALAAGBAAAAAAABDwAIAhAAIQAAAAEAAYEAAAAAAAEPAAgCEAAiAAAA
CwABgQAAAAAAAQ8AvgAcACEAAAAWABYAFgAWABYAFgAWABYAFgAWABYACgC+ABQAIgAAABYA
FgAWABYAFgAWABYABgD9AAoAIgAHACoAIQAAAL4ACgAiAAgAKgAqAAkABgAjACIACgArAAAA
AAAAAAAAAwAAAAAADQAlBAAgAArACsBCAQQA7ABQAA8AAvBIAAAAEAAI8AgAAAABAAAAAAQA
AA8AA/AwAAAADwAE8CgAAAABAAnwEAAAAAAAAAAAAAAAAAAAAAAAAAACAArwCAAAAAAEAAAF
AAAAPgISALYGAAAAAEAAAAAAAAAAAAAAAB0ADwADAAAAAAAAAQAAAAAAAAAKAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP7////+////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
//////////8BAP7/AwoAAP////8QCAIAAAAAAMAAAAAAAABGGwAAAE1pY3Jvc29mdCBFeGNl
bCA5Ny1UYWJlbGxlAAYAAABCaWZmOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFIAbwBvAHQAIABFAG4AdAByAHkA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA////////
//8BAAAAEAgCAAAAAADAAAAAAAAARgAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAMAAAAAAAAAA
VwBvAHIAawBiAG8AbwBrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAABIAAgACAAAA//////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAACAAAA/hwAAAAAAAABAEMAbwBtAHAATwBiAGoAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgACAAMAAAD//////////wAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJAAAAAAAAAAEATwBsAGUAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAIA
////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAABQA
AAAAAAAA
--------------F0CA5AA85E22BCE2CE9A7E72
Content-Type: application/vnd.ms-excel;
name="20000924.xls"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="20000924.xls"
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAOwADAP7/CQAGAAAAAAAAAAAAAAABAAAAEwAAAAAA
AAAAEAAAEQAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
///////////////////////////////////9/////////wMAAAAEAAAABQAAAAYAAAAHAAAA
CAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAA/v////7////+/////v//////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////1IA
bwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAWAAUA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////8AAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7///8AAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA/v///wAAAAAAAAAACQgQAAAGBQC7DcwHAAAAAAYAAADhAAIAsATBAAIA
AADiAAAAXABwAAgAAFN0YXJDYWxjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBCAAIAsARhAQIAAAA9AQIAAQCcAAIADgAZAAIAAAASAAIAAAATAAIA
AACvAQIAAAC8AQIAAAA9ABIA4AFaAM8/Tio4AAAAAAABAFgCQAACAAAAjQACAAAAIgACAAAA
DgACAAEAtwECAAAA2gACAAAAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgA
AAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwA
MQAaAMgAAAD/f5ABAAAAAAAABQFBAHIAaQBhAGwAMQAaAMgAAAD/f5ABAAAAAAAABQFBAHIA
aQBhAGwAMQAaAMgAAAAIALwCAAAAAgClBQFBAHIAaQBhAGwAMQAaAMgAAAAIAJABAAAAAACl
BQFBAHIAaQBhAGwAMQAaANwAAgAJALwCAAAAAAClBQFBAHIAaQBhAGwAMQAaAMgAAgAJALwC
AAAAAAClBQFBAHIAaQBhAGwAMQAaAMgAAgAIALwCAAAAAAClBQFBAHIAaQBhAGwAMQAaAMgA
AAAIAJABAAAAAgClBQFBAHIAaQBhAGwAMQAaAMgAAAANALwCAAAAAgClBQFBAHIAaQBhAGwA
HgQeAAUAGQAAIywjIzBcICJETSI7XC0jLCMjMFwgIkRNIh4EIwAGAB4AACMsIyMwXCAiRE0i
O1tSZWRdXC0jLCMjMFwgIkRNIh4EJAAHAB8AACMsIyMwLjAwXCAiRE0iO1wtIywjIzAuMDBc
ICJETSIeBCkACAAkAAAjLCMjMC4wMFwgIkRNIjtbUmVkXVwtIywjIzAuMDBcICJETSIeBD4A
KgA5AABfLSogIywjIzBcICJETSJfLTtcLSogIywjIzBcICJETSJfLTtfLSogIi0iXCAiRE0i
Xy07Xy1AXy0eBD4AKQA5AABfLSogIywjIzBcIF9EX01fLTtcLSogIywjIzBcIF9EX01fLTtf
LSogIi0iXCBfRF9NXy07Xy1AXy0eBEYALABBAABfLSogIywjIzAuMDBcICJETSJfLTtcLSog
IywjIzAuMDBcICJETSJfLTtfLSogIi0iPz9cICJETSJfLTtfLUBfLR4ERgArAEEAAF8tKiAj
LCMjMC4wMFwgX0RfTV8tO1wtKiAjLCMjMC4wMFwgX0RfTV8tO18tKiAiLSI/P1wgX0RfTV8t
O18tQF8tHgQMAKQABwAAR2VuZXJhbB4EDQClAAgAAERELk1NLllZHgQIAKYAAwAATS9E4AAU
AAAAAAD1/yAAAAAAAAAAAAAAAMAg4AAUAAEAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAEAAAD1
/yAAAPQAAAAAAAAAAMAg4AAUAAIAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAIAAAD1/yAAAPQA
AAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAA
AMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAU
AAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1
/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQA
AAAAAAAAAMAg4AAUAAAAAAD1/yAAAPQAAAAAAAAAAMAg4AAUAAAAAAABACAAAAAAAAAAAAAA
AMAg4AAUAAEAKwD1/yAAAPgAAAAAAAAAAMAg4AAUAAEAKQD1/yAAAPgAAAAAAAAAAMAg4AAU
AAEACQD1/yAAAPgAAAAAAAAAAMAg4AAUAAEALAD1/yAAAPgAAAAAAAAAAMAg4AAUAAEAKgD1
/yAAAPgAAAAAAAAAAMAg4AAUAAYApAABACAAAAAAAAAAAAAAAIkE4AAUAAcApAABACAAAAAA
AAAAAAAAAIkE4AAUAAcApQABACEAAAAAAAAAAAAAAIkE4AAUAAYApAABACIAAAAAAAAAAAAA
AIkE4AAUAAcApgABACAAAAAAAAAAAAAAAIkE4AAUAAgApAABACEAAAAAIAAAAAQABAoE4AAU
AAkApAABACMAAAAAIAAAAAQABAoE4AAUAAoApAABACEAAAAQEgAECAQABAsE4AAUAAsApAAB
ACEAAAAREggECAQABAsE4AAUAAcApAABACAAAAAREggECAQABAsE4AAUAAcApAABACAAAAAB
EggACAQABAwE4AAUAAoApAABACEAAAAQEQAECAQABAsE4AAUAAsApAABACEAAAAREQgECAQA
BAsE4AAUAAcApAABACAAAAAREQgECAQABAsE4AAUAAcApAABACIAAAAREQgECAQABAsE4AAU
AAoApAABACEAAAAREQgECAQABAsE4AAUAAcApAABACAAAAABEQgACAQABAwE4AAUAAoApAAB
ACEAAAAQAQAECAAABAsE4AAUAAoApAABACEAAAARAQgECAAABAsE4AAUAAcApAABACAAAAAR
AQgECAAABAsE4AAUAAcApAABACAAAAABAQgACAAABAwE4AAUAAwApAABACAAAAAAAAAAAAAA
AIkE4AAUAAcApAABACAAAAAAAAAAAAAAAIkEkwIEABCAA/+TAgQAEYAG/5MCBAASgAX/kwIE
AACAAP+TAgQAE4AE/5MCBAAUgAf/kgDiADgAAAAAAP///wCAAAAA///AAMDAwAD/AAAA/wD/
AAD//wCAAAAAAIAAAAAAgACAgAAAgACAAACAgADAwMAAgICAAJmZ/wCZM2YA///MAMz//wBm
AGYA/4CAAABmzADMzP8AAACAAP8A/wD//wAAAP//AIAAgACAAAAAAICAAAAA/wAAzP8AzP//
AMz/zAD//5kAmcz/AP+ZzADMmf8A/8yZADNm/wAzzMwAmcwAAP/MAAD/mQAA/2YAAGZmmQCW
lpYAADNmADOZZgAAMwAAMzMAAJkzAACZM2YAMzOZADMzMwBgAQIAAACFAA4AJgwAAAAABgBT
aGVldDGMAAQAMQAxAK4BBAABAAEEFwACAAAAGAAsAAAAABANAAAAAAAAAAAAAFNIQVJFRF9G
T1JNVUxBXzAlAAAAAPnA/8BiAQQAGAAsAAAAABANAAAAAAAAAAAAAFNIQVJFRF9GT1JNVUxB
XzElAAAAAPnA/8BiAQQA6wBaAA8AAPBSAAAAAAAG8BgAAAABBAAAAgAAAAEAAAABAAAAAQAA
AAEAAAAzAAvwEgAAAL8ACAAIAIEBCQAACMABQAAACEAAHvEQAAAADQAACAwAAAgXAAAI9wAA
EPwAmwEkAAAAJAAAAAQAAE5hbWUOAABTaGFuZSBIYXRoYXdheQ0AAFdlZWsgU1RBUlRJTkcE
AABEYXRlCAAAQ3VzdG9tZXIHAABQcm9qZWN0BAAAVGFzawMAAFN1bgMAAE1vbgMAAFR1ZQMA
AFdlZAMAAFRodQMAAEZyaQMAAFNhdAUAAFRvdGFsBwAAQ0lNZWRpYQkAAEJ1ZyBmaXhlcwcA
AENJTWVkaWEMAABDYWNoZU1hbmFnZXIHAABDSU1lZGlhBAAARG9jcwQAAFpvcGUeAABEb2N1
bWVudHMvVGVtcGxhdGVzIGRpc2N1c3Npb24EAABab3BlDwAATWlzYy4gY29yZSB3b3JrBAAA
Wm9wZRgAAENvbW11bml0eSBjb3JyZXNwb25kZW5jZQQAAFpvcGUHAABNZWV0aW5nBQAAU2hh
bmUaAABPcmdhbml6YXRpb24gJiBCb29ra2VlcGluZwcAAENJTWVkaWEJAABPUlN0b3JhZ2UI
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
AA0ACQAiAAYAIwANAAoAHwAAAAAAAAAAAAMAAAAAAA0AJQ0ADQADwAnAQgEEAL4AGgAOAAAA
IAAkACQAIgAWABYAFgAWABYAIgAJAAYAIwAOAAoAHwAAAAAAAAAAAAMAAAAAAA0AJQ4ADgAD
wAnAQgEEAL4AGgAPAAAAIAAkACQAIgAiACIAIgAiABYAIgAJAAYAIwAPAAoAHwAAAAAAAAAA
AAMAAAAAAA0AJQ8ADwADwAnAQgEEAL4AGgAQAAAAIAAkACQAIgAiACIAIgAWACIAIgAJAAYA
IwAQAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRAAEAADwAnAQgEEAL4AGgARAAAAIAAkACQAIgAi
ACIAFgAiACIAIgAJAAYAIwARAAoAJQAAAAAAAAAAAAMAAAAAAA0AJREAEQADwAnAQgEEAL4A
GgASAAAAIAAkACQAIgAiABYAIgAiACIAIgAJAAYAIwASAAoAJQAAAAAAAAAAAAMAAAAAAA0A
JRIAEgADwAnAQgEEAL4AGgATAAAAIAAkACQAIgAWACIAIgAiACIAIgAJAAYAIwATAAoAJQAA
AAAAAAAAAAMAAAAAAA0AJRMAEwADwAnAQgEEAL4AGgAUAAAAIAAkACQAIgAWABYAFgAWABYA
IgAJAAYAIwAUAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRQAFAADwAnAQgEEAL4AGgAVAAAAIAAk
ACQAIgAiACIAIgAiACIAIgAJAAYAIwAVAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRUAFQADwAnA
QgEEAL4AGgAWAAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAWAAoAJQAAAAAAAAAAAAMA
AAAAAA0AJRYAFgADwAnAQgEEAL4AGgAXAAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAX
AAoAJQAAAAAAAAAAAAMAAAAAAA0AJRcAFwADwAnAQgEEAL4AGgAYAAAAIAAkACQAIgAiACIA
IgAiACIAIgAJAAYAIwAYAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRgAGAADwAnAQgEEAL4AGgAZ
AAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAZAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRkA
GQADwAnAQgEEAL4AGgAaAAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAaAAoAJQAAAAAA
AAAAAAMAAAAAAA0AJRoAGgADwAnAQgEEAL4AGgAbAAAAIAAkACQAIgAiACIAIgAiACIAIgAJ
AAYAIwAbAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRsAGwADwAnAQgEEAL4AGgAcAAAAIAAkACQA
IgAiACIAIgAiACIAIgAJAAYAIwAcAAoAJQAAAAAAAAAAAAMAAAAAAA0AJRwAHAADwAnAQgEE
AL4AGgAdAAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAdAAoAJQAAAAAAAAAAAAMAAAAA
AA0AJR0AHQADwAnAQgEEAL4AGgAeAAAAIAAkACQAIgAiACIAIgAiACIAIgAJAAYAIwAeAAoA
JQAAAAAAAAAAAAMAAAAAAA0AJR4AHgADwAnAQgEEAL4AGgAfAAAAIAAkACQAIgAiACIAIgAi
ACIAIgAJAAYAIwAfAAoAJQAAAAAAAAAAAAMAAAAAAA0AJR8AHwADwAnAQgEEAL4AGgAgAAAA
JgAnACcAKAAoACgAKAAoACgAKAAJAAYAIwAgAAoAKQAAAAAAAAAAAAMAAAAAAA0AJSAAIAAD
wAnAQgEEAAgCEAAgAAAACwABgQAAAAAAAQ8ACAIQACEAAAABAAGBAAAAAAABDwAIAhAAIgAA
AAsAAYEAAAAAAAEPAL4AHAAhAAAAFgAWABYAFgAWABYAFgAWABYAFgAWAAoAvgAUACIAAAAW
ABYAFgAWABYAFgAWAAYA/QAKACIABwAqACMAAAC+AAoAIgAIACoAKgAJAAYAIwAiAAoAKwAA
AAAAAAAAAAMAAAAAAA0AJQQAIAAKwArAQgEEAOwAUAAPAALwSAAAABAACPAIAAAAAQAAAAAE
AAAPAAPwMAAAAA8ABPAoAAAAAQAJ8BAAAAAAAAAAAAAAAAAAAAAAAAAAAgAK8AgAAAAABAAA
BQAAAD4CEgC2BgAAAABAAAAAAAAAAAAAAAAdAA8AAwAAAAAAAAEAAAAAAAAACgAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP7////+////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
//////////8BAP7/AwoAAP////8QCAIAAAAAAMAAAAAAAABGGwAAAE1pY3Jvc29mdCBFeGNl
bCA5Ny1UYWJlbGxlAAYAAABCaWZmOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFIAbwBvAHQAIABFAG4AdAByAHkA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA////////
//8BAAAAEAgCAAAAAADAAAAAAAAARgAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAMAAAAAAAAAA
VwBvAHIAawBiAG8AbwBrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAABIAAgACAAAA//////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAACAAAANR0AAAAAAAABAEMAbwBtAHAATwBiAGoAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgACAAMAAAD//////////wAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJAAAAAAAAAAEATwBsAGUAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAIA
////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAABQA
AAAAAAAA
--------------F0CA5AA85E22BCE2CE9A7E72--
From shane@digicool.com Wed Oct 4 21:36:21 2000
From: shane@digicool.com (Shane Hathaway)
Date: Wed, 04 Oct 2000 16:36:21 -0400
Subject: [Zope] timecards@digicool.com
References: <39DB9166.575C595D@digicool.com>
Message-ID: <39DB94C5.89CB6B7A@digicool.com>
Shane Hathaway wrote:
>
> Sorry for the tardiness.
Uh, ahem, please disregard. Sorry for sending that to the wrong place.
Shane
From bennettt@am.appstate.edu Wed Oct 4 23:03:28 2000
From: bennettt@am.appstate.edu (TMGB)
Date: Wed, 04 Oct 2000 18:03:28 -0400
Subject: [Zope] client proxy setting
Message-ID: <39DBA930.875750F0@am.appstate.edu>
Can I get the user's client proxy setting using 'REQUEST' or some other
syntax, product, or utility. This is not Proxy Roles or ProxyPass, but
the client's proxy settings if any. I am working on a help page to
debug a user's settings if he or she can't get to certain pages with our
proxy server settings on their browser.
I've found this to work for testing cookies acceptance:(set a cookie and
then try to get it)
YES, You Do Have Cookies Enabled
NO, Your browser is not accepting cookies
Thanx,
Thomas
--
--------------------------------------------------------------------
Rock and Rule
Zope Rocks -- http://www.zope.org
Python Rules -- http://www.python.org
--------------------------------------------------------------------
Thomas McMillan Grant Bennett Appalachian State University
Computer Consultant III University Library
bennettt@am.appstate.edu
http://www.library.appstate.edu/webmaster/
Voice: 828 262 6587 FAX: 828 262 3001
Windows 95 is a 32-bit extension to a 16-bit patch for an 8-bit
operating system that was originally coded for a 4-bit microprocessor.
- Chris Dunphy Boot Magazine
From terry@adroit.net Thu Oct 5 00:25:19 2000
From: terry@adroit.net (Terry Kerr)
Date: Thu, 05 Oct 2000 09:25:19 +1000
Subject: [Zope] 'Offline' mailhost
References: <39D40049.28D21513@adroit.net> <39D40CCA.5398331@digicool.com> <39D9D22D.BB48DFA6@nipltd.com> <39DAC5AB.CE9CC1EE@tm.ee> <39DB4A83.6858FB20@nipltd.com>
Message-ID: <39DBBC5F.9D375761@adroit.net>
Chris Withers wrote:
> Hannu Krosing wrote:
> > Perhaps it would be better to solve this by configuring your sendmail
> > (or other SMTP MTA) to be non-blocking, i.e. store-and-forward.
>
> Can you tell me how to set that up with exim?
>
> > Also you could send just one message to all the recipients instead of
> > sending individual messages.
>
> Urm, they could be pretty unfriendly mail messages if they're being sent
> to a coupla thousand people. The bandwidth dcoming out of your server
> alone would be far higher than it needed to be :-(
>
How would the bandwidth change??
>
> > > I wonder how mailman does this stuff and if the code could be borrowed
> > > for Zope?
> >
> > Maybe you could just use mailman as MTA, greating temporary
> > mailing-lists.
>
> Any how-to's for this or how hard it would be to set up?
>
> cheers,
>
> Chris
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
--
-----------------------------
Terry Kerr (terry@adroit.net)
Adroit Internet Solutions
http://www.adroit.net/
03 9563 4461
0414 708 124
From ewalstad@yahoo.com Wed Oct 4 23:01:53 2000
From: ewalstad@yahoo.com (Eric)
Date: Wed, 04 Oct 2000 15:01:53 -0700
Subject: [Zope] external method import error (ImportError)...
Message-ID:
Hi,
To summarize: How do I import modules in an External Method's .py file?
I have an external method that points to a .py file that has an import
statement at the top. The import statement loads another module of mine
(CProject.py). I've placed both files (pwToxml.py and CProject.py) in the
Zope/Extensions directory. When I try to create an external method on the
pTox.py file with the following parameters:
ID = pTox
Function Name = pTox
Python Module File = pwToxml
I get the following error:
Error Type: ImportError
Error Value: No module named CProject
Traceback (innermost last):
File /usr/local/Zope/lib/python/ZPublisher/Publish.py, line 222, in
publish_module
File /usr/local/Zope/lib/python/ZPublisher/Publish.py, line 187, in
publish
File /usr/local/Zope/lib/python/Zope/__init__.py, line 221, in
zpublisher_exception_hook
File /usr/local/Zope/lib/python/ZPublisher/Publish.py, line 171, in
publish
File /usr/local/Zope/lib/python/ZPublisher/mapply.py, line 160, in mapply
(Object: manage_addExternalMethod)
File /usr/local/Zope/lib/python/ZPublisher/Publish.py, line 112, in
call_object
(Object: manage_addExternalMethod)
File /usr/local/Zope/lib/python/Products/ExternalMethod/ExternalMethod.py,
line 130, in manage_addExternalMethod
File /usr/local/Zope/lib/python/Products/ExternalMethod/ExternalMethod.py,
line 178, in __init__
(Object: pTox)
File /usr/local/Zope/lib/python/Products/ExternalMethod/ExternalMethod.py,
line 201, in manage_edit
(Object: pTox)
File /usr/local/Zope/lib/python/Products/ExternalMethod/ExternalMethod.py,
line 210, in getFunction
(Object: pTox)
File /usr/local/Zope/lib/python/App/Extensions.py, line 217, in getObject
(Info: ('/usr/local/Zope/Extensions/pwToxml.py', 'pwToxml'))
File /usr/local/Zope/Extensions/pwToxml.py, line 1, in ?
ImportError: (see above)
I checked the sys.path for my Python installation and placed the CProject.py
file there, but I still get the same error.
Here's the top of my pwToxml.py file:
import CProject, string
def pTox(self, REQUEST):
"""Function to map pw to CProject Objects"""
P=CProject.CProject()
dictData = REQUEST.form.items()
strTemp = ""
strError = "Error Retrieving Dictionary Value"
...etc...
Thanks for any help you can provide.
From curtis@cardgate.net Wed Oct 4 23:48:38 2000
From: curtis@cardgate.net (Curtis Maloney)
Date: Thu, 5 Oct 2000 09:48:38 +1100
Subject: [Zope] 'websafe' colours
In-Reply-To:
References:
Message-ID: <00100509483801.00895@localhost.localdomain>
On Wed, 04 Oct 2000, Stephan Goeldi wrote:
> > > > According to a recent study, there are approximately 13 'web safe'
> > > > colours, out of the full 16,777,216.
> > >
> > > What makes the other 15,777,203 'unsafe'?
>
> If you mean the 'browsersafe colours' then there are 218.
>
Yes, my mistake. I did mean 'browser safe'. I was aware of the previous
belief of 216 (mostly because of 256 colour modes less 40 system colours),
but as I stated, a recent study has "dispelled the myth", claiming (and now I
correct myself :) only 22 browser safe colours.
http://slashdot.org/articles/00/09/08/1622204.shtml has some more details,
and a link to the actual article.
> >The only other possible reason I can recall is that some of the 'named'
> >colours are not supported by all browsers, or are not interpreted the
> > same.
>
> No, the problem is, that they are not displayed the same.
>
Not long after posting my message I realised this also. (o8
> -goe-
>
Have a better one,
Curtis Maloney
From mindlace@digicool.com Wed Oct 4 23:43:00 2000
From: mindlace@digicool.com (ethan mindlace fremen)
Date: Wed, 04 Oct 2000 18:43:00 -0400
Subject: [Zope] Zope stalls indefinitely
References: <372E9068C013D211891F00805F9FD1C2055874BB@mail3.oulan.ou.edu>
Message-ID: <39DBB274.2BA7F0D9@digicool.com>
"Leichtman, David J" wrote:
>
> Thought we had a problem of ours fixed, but here it is once again, a month
> later.
> Zope, every once in a while, will just stall indefinitely. The Zope process
> doesn't die, it just hangs.
> Any thoughts. I've posed this question to a lot of people many times. Now
> that it's back, I'm hoping for fresh insight.
hm. have you been using -M to see which things are being called when it
hangs?
~ethan
From mindlace@digicool.com Wed Oct 4 23:54:50 2000
From: mindlace@digicool.com (ethan mindlace fremen)
Date: Wed, 04 Oct 2000 18:54:50 -0400
Subject: [Zope] Last-modified header missing -- time-stamps turned off.
References:
Message-ID: <39DBB53A.39A6F0CD@digicool.com>
Jean Jordaan wrote:
>
> Hi all
>
> Just a note from the blue .. I'm snarfing the ZB using
> wget -np -m http://www.zope.org/Members/michel/ZB/
> and for every document I'm seeing:
>
> Last-modified header missing -- time-stamps turned off.
>
> What's the significance of this? I assume something to
> do with the http headers returned by Zope. Does Zope not
> include last-modified headers since it predominantly serves
> dynamic pages?
This is correct. No Last-Modified headers except for files and images
(and that is specific to zope.org).
Including a last modified header isn't hard, however:
http://www.zope.org/Members/rbeer/caching
~ethan
From aboulanger@ldeo.columbia.edu Thu Oct 5 00:31:21 2000
From: aboulanger@ldeo.columbia.edu (Albert Boulanger)
Date: Wed, 04 Oct 2000 19:31:21 -0400
Subject: [Zope] WDDX anyone?
Message-ID: <39DBBDC9.2B5ECAAA@ldeo.columbia.edu>
Has anyone considered WDDX for Zope? This seems like a nice next step to
exchanging data beyond RSS, but not as ambitious as SOAP and has SDKs
for CF, perl, etc.
I have some applications in mind for intranet syndication that goes
beyond what RSS can do. Also there is full rdf.
From: http://www.wddx.org/
Welcome to WDDX.ORG, the home of the WDDX SDK and related projects.
WDDX.ORG seeks to empower Web developers with technology that enables
them to create new forms of value on the Internet using distributed data
and Web syndicate networks. The Web Distributed Data Exchange, or WDDX,
is a free, open XML-based technology that allows Web applications
created with any platform to easily exchange data with one another over
the Web. To learn more about WDDX, check out the Understanding WDDX
section of the site.
Who created WDDX?
Allaire created WDDX in order to solve key problems in exchanging data
between Web applications. In particular, Simeon Simeonov, Allaire's
language technology architect, created WDDX to support problems of
distributed computing within ColdFusion. This work was generalized into
a cross-language framework, and resulted in the creation of the WDDX SDK
and WDDX.org. The WDDX SDK was created by Nate Weiss, an independent Web
developer, with the support of Allaire and a number of other third
parties.
How does WDDX work?
All of the standard programming environments on the Web (ColdFusion,
Perl, ASP, Java, JavaScript, PHP, etc) include native data structures
such as arrays, record sets or value pairs. WDDX provides a module for
each language that will automatically serialize or translate the native
data structures into an abstract representation in XML, or deserialize
WDDX XML into a native data structure. For example, you could use WDDX
to take a complex array in ColdFusion, serialize it into XML, send it to
an ASP server, and then deserialize from XML into a VBScript array
object with all the types natively converted. This conversion process
between languages is relatively transparent to developers by shifting
any XML processing and interaction into the WDDX modules, eliminating
developers from having to directly program or manipulate XML themselves,
This is not an RMI mechanism.
Regards,
Albert Boulanger
aboulanger@vpatch.com
From nestor@engendro.com Thu Oct 5 01:06:26 2000
From: nestor@engendro.com (Nestor A. Diaz L.)
Date: Wed, 4 Oct 2000 19:06:26 -0500 (COT)
Subject: [Zope] Product Testing
In-Reply-To:
Message-ID:
HI, i'm trying to learn how to make products, i have been able to modify
the poll product that comes with the product tutorial, and now i'm
creating a new product however i need to restart zope for the changes to
take effect, i think i can omit this if i can compile (generate the
*.pyc) in the product directory, can anybody send me a few bits of how can
i made that?
thanks,
--
Nestor A. Diaz
Ingeniero de Desarrollo
Engendro.com - Comercio Electronico sobre Linux
Email: nestor@engendro.com - WWW: http://www.engendro.com
From twcook@iswt.com Tue Oct 3 06:14:58 2000
From: twcook@iswt.com (Tim Cook)
Date: Tue, 03 Oct 2000 00:14:58 -0500
Subject: [Zope] ZClasses & UserFolders
Message-ID: <39D96B52.EFFB9450@iswt.com>
Is there a reason I can't add a UserFolder (and subsequently
users) to an instance of a ZClass that is sub-classed from
Folder?
I do not get any errors. But the acl_users folder is not in the
instance and the user gets added in the next acl_users up the
aquisition chain.
-- Tim Cook --
Cook Information Systems | Office: (901) 884-4126 8am-5pm CDT
* It's easy to stop making mistakes. Just stop having ideas. *
FreePM Project Coordinator http://www.freepm.org
OSHCA Founding Supporter http://www.oshca.org
_______________________________________________
Zope maillist - Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope-dev )
From michel@digicool.com Mon Oct 2 21:41:25 2000
From: michel@digicool.com (Michel Pelletier)
Date: Mon, 02 Oct 2000 13:41:25 -0700
Subject: [Zope] Fw: ZSQL Methods in ZClasses, not working
References:
Message-ID: <39D8F2F5.B825620@digicool.com>
Just wanted to get this point archived...
Thanks Michel.
Forwarded by Alexander Schonfeld
---------------- Original message follows ----------------
From: Michel Pelletier
To: alex@garage.co.jp
Cc: " \(DC Support List\)"
Date: Mon, 02 Oct 2000 13:41:25 -0700
Subject: Re: [Support] [ZOPE Collector] Z SQL Methods Bug entry: ZSQL Methods in ZClasses, not working
--
alex@garage.co.jp wrote:
>
> A new bug entry was added with the following information:
>
> Title: ZSQL Methods in ZClasses, not working
>
> At: http://classic.zope.org:8080/Collector/Collector/1664/sview
>
> Submitter: Alex
>
> Email: alex@garage.co.jp
>
> Description: Adding a ZSQL method to a ZClass and trying to access it from a method in that class gives permission denied and no matter what the password, denies access.
You need to select *Use Database Methods* on your ZClasses *Permissions*
view, and then select each ZSQL method you create and map *Use Database
Methods* to *Use Database Methods*.
I haven't really groked why it's that hard, but it works.
-Michel
From mandrews@netgenics.com Thu Oct 5 01:17:36 2000
From: mandrews@netgenics.com (Andrews, Martin)
Date: Wed, 4 Oct 2000 20:17:36 -0400
Subject: [Zope] Hotfix_2000-10-02 - fails with GUF and zope 2.2.2
Message-ID:
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_000_01C02E61.AA7FFC96
Content-Type: text/plain;
charset="iso-8859-1"
When I have the 2000-10-02 hotfix installed I can no longer authenticate to
zope. I fails with the attached message (Error Type: AttributeError, Error
Value: editabsolute_url). I am guessing the problem is related to the fact
that I am using GUF 1.2.4 (patched to have the getUserById() method). Any
ideas?
Martin
mandrews@netgenics.com
------_=_NextPart_000_01C02E61.AA7FFC96
Content-Type: application/octet-stream;
name="zope.err"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="zope.err"
Zope=0A=
=0A=
=0A=
=0A=
Zope=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
Zope Error
=0A=
Zope has encountered an error while publishing this resource.=0A=
The parameters passed to this resource may be incorrect.
=0A=
A resource that this resource relies on may be encountering an =
error.
=0A=
=0A=
=0A=
For more detailed information about the error, please=0A=
refer to the HTML source for this page.=0A=
=0A=
=0A=
If the error persists please contact the site maintainer.=0A=
Thank you for your patience.=0A=
=0A=
=0A=
=0A=
=0A=
=0A=
Last modified: 2000/10/04 15:55:28.369 US/Eastern=0A=
=0A=
------_=_NextPart_000_01C02E61.AA7FFC96--
From kthangavelu@earthlink.net Thu Oct 5 00:16:09 2000
From: kthangavelu@earthlink.net (Kapil Thangavelu)
Date: Wed, 04 Oct 2000 16:16:09 -0700
Subject: [Zope] WDDX anyone?
References: <39DBBDC9.2B5ECAAA@ldeo.columbia.edu>
Message-ID: <39DBBA39.8C7C26E1@earthlink.net>
Albert Boulanger wrote:
>
> Has anyone considered WDDX for Zope? This seems like a nice next step to
>
> exchanging data beyond RSS, but not as ambitious as SOAP and has SDKs
> for CF, perl, etc.
>
> I have some applications in mind for intranet syndication that goes
> beyond what RSS can do. Also there is full rdf.
>
> From: http://www.wddx.org/
> WDDX provides a module for
> each language that will automatically serialize or translate the native
> data structures into an abstract representation in XML, or deserialize
> WDDX XML into a native data structure. For example, you could use WDDX
> to take a complex array in ColdFusion, serialize it into XML, send it to
> an ASP server, and then deserialize from XML into a VBScript array
> object with all the types natively converted. This conversion process
> between languages is relatively transparent to developers by shifting
> any XML processing and interaction into the WDDX modules, eliminating
> developers from having to directly program or manipulate XML themselves,
>
> This is not an RMI mechanism.
So what about this couldn't be emulated with xml-rpc?
Curious,
Kapil
From roman@speeder.org Thu Oct 5 06:35:53 2000
From: roman@speeder.org (Roman Milner)
Date: 05 Oct 2000 00:35:53 -0500
Subject: [Zope] LDAP won't work - yes I've applied the patch
Message-ID: <871yxvluiu.fsf@blip.speeder.zoe>
I'm trying to get ldap methods to work with 2.2.2. I can access the
attributes of the objects returned from an ldap method with a python
extension fine, but dtml-in'ing the returned list doesn't work. I keep
getting an error (traceback below).
Any ideas?
Thanks,
^Roman
Your action caused an unknown error to occur.
-Tim
--
Tim Wilson | Visit Sibley online: | Check out:
Henry Sibley HS | http://www.isd197.k12.mn.us/ | http://www.zope.org/
W. St. Paul, MN | | http://slashdot.org/
wilson@visi.com | | http://linux.com/
From ppetru@ppetru.net Fri Oct 6 04:00:44 2000
From: ppetru@ppetru.net (Petru Paler)
Date: Fri, 6 Oct 2000 06:00:44 +0300
Subject: [Zope] status of SOAP for Zope?
In-Reply-To: <39DCE3C8.3E9F6BD2@digicool.com>; from michel@digicool.com on Thu, Oct 05, 2000 at 01:25:44PM -0700
References: <39DCE3C8.3E9F6BD2@digicool.com>
Message-ID: <20001006060044.C1065@ppetru.net>
On Thu, Oct 05, 2000 at 01:25:44PM -0700, Michel Pelletier wrote:
> > > What is the status of SOAP on Zope, I need to know if I can use ROPE..
> >
> > Hi Brad -
> >
> > SOAP is still something we want to do, but it is on hold right
> > now (we just don't have the resources at the moment). I've been
> > hoping that someone might take the lead and start a project on
> > dev.zope.org, but so far that hasn't happened :(
>
> Take a look at:
>
> http://classic.zope.org:8080/Collector/1360/view
>
> I remember glancing at it for a bit, it might be a good start to at
> least get it to the same level of support as xml-rpc.
Glad to see that people finally show some interest in that :)
That patch was the result of a long night, but I'm sure it can be gotten to
work properly (right now I think it has problems with exception handling).
--
Petru Paler, mailto:ppetru@ppetru.net
http://www.ppetru.net - ICQ: 41817235
From kthangavelu@earthlink.net Fri Oct 6 01:55:12 2000
From: kthangavelu@earthlink.net (Kapil Thangavelu)
Date: Thu, 05 Oct 2000 17:55:12 -0700
Subject: [Zope] sudden ZClass breakage
References:
Message-ID: <39DD22F0.CD3E5F7B@earthlink.net>
Timothy Wilson wrote:
>
> Hi everyone,
>
> I've been working away on a ZClass-based product that will provide a
> searchable job board for our Human Resources Dept. here at school. Things
> were going along fine until, it seemed, out of the blue I started getting an
> error message about an "Invalid Date-Time String" and a lengthy
> traceback. I'm wondering if anyone can glean anything from the
> traceback. Is this one of those obvious errors that I'm just missing? I'm
> really puzzled. Any advice would be appreciated. Here's the traceback:
You're trying to change the zclass properties after creating it but
you're not passing in a valid date time string and hence you're getting
this error. Make sure the string you're passing in conforms to a date
time format. (check ZOPE_HOME/lib/python/DateTime/DateTime.py for the
supported formats), or just cast it explicitly like . I've noticed some
behavior earlier today where i change all my zclass properties in a
manage_changeProperties (depends on where) even ones not listed in the
request. if this is your problem and you don't have date_time string set
in the REQUEST you can try explicitly passing in a dummy date time
string (ZopeTime or distant past), or setting it to its default value,
i'd chuck this into the Collector/Tracker.
i'm sure others have good solutions.
>
>
> -Tim
>
> --
> Tim Wilson | Visit Sibley online: | Check out:
> Henry Sibley HS | http://www.isd197.k12.mn.us/ | http://www.zope.org/
> W. St. Paul, MN | | http://slashdot.org/
> wilson@visi.com | | http://linux.com/
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
From stephan.goeldi@datacomm.ch Fri Oct 6 09:15:26 2000
From: stephan.goeldi@datacomm.ch (Stephan Goeldi)
Date: Fri, 06 Oct 2000 08:15:26 GMT
Subject: [Zope] browsable parent directories
Message-ID:
I successfully installed and used SiteAccess on my Zope 2.2.0.
There is a directory /www on my server, where subdirectories are stored.
Customer domains point to those subdirectories:
/www/domain1
/www/domain2
etc. in domain1 and domain2 are the acl_user folders with manager permission
for the customer. And there are the SiteRoot methods as
Title = www.domain1.com
Base = http://www.domain1.com
Path = /
When the customer accesses the manage screen, in the left frame everything
is correct displayed (as www.domain1.com/). In the right folder it isn't. On
the top of the right frame is the current path displayed as:
/toplevel/www/domain1
The customer can browse to /toplevel/www and look who else is on this
server. This is bad security IMHO.
Is there a workaround for this?
I downloaded SiteAccess 2, because I didn't know which version I installed
some weeks ago. There was no 'Product' directory in my Zope root. So I
created the directory and untarred SiteAccess2. I don't know how to delete
SiteAccess 1.
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Share information about yourself, create your own public profile at
http://profiles.msn.com.
From knight@righteous.net Fri Oct 6 09:37:37 2000
From: knight@righteous.net (knight)
Date: Fri, 6 Oct 2000 01:37:37 -0700 (PDT)
Subject: [Zope] redirect to user's folder not working
In-Reply-To: <00100610043506.00895@localhost.localdomain>
Message-ID:
> On Fri, 06 Oct 2000, Andy McKay wrote:
> > AUTHENTICATED_USER is not a string so need to cast it before doing the
> > string operation:
> >
> >
> >
> > effectively does the same thing, it calls the
> > string representation of AUTHENTICATED_USER.
> >
>
> A more 'polite' way to get the user name is to use
> AUTHENTICATED_USER.getUserName(). Not as short, true, but definitely more
> explicit.
Agreed. Any remember, several user managers don't completely conform to
the AUTHENTICATED_USER "standards", and you might see calling
AUTHENTICATED_USER directly fail completely.
;]
Knight
knight@phunc.com
From knight@righteous.net Fri Oct 6 09:41:30 2000
From: knight@righteous.net (knight)
Date: Fri, 6 Oct 2000 01:41:30 -0700 (PDT)
Subject: [Zope] external method database connection
In-Reply-To:
Message-ID:
> How do I get a zope database connection from an enternal method?
You can access your db using your existing ZSQL Methods by calling them
from the namespace passed in, specifically self.
Example:
def myextmethod(self):
mfl_id = 3
results = self.sqlCountUsers(mfl_id=mfl_id)
for result in results:
print result[0], result[3]
Keep in mind that a list is returned, not a dictionary.
Knight
knight@phunc.com
From knight@righteous.net Fri Oct 6 10:05:26 2000
From: knight@righteous.net (knight)
Date: Fri, 6 Oct 2000 02:05:26 -0700 (PDT)
Subject: [Zope] external method database connection
In-Reply-To:
Message-ID:
Also, you could always import the specific module for your database, and
create a db connection, then execute() and fetch() directly. Although, if
you are putting this in an external method, it would be wiser to use your
existing ZSQL methods ;]
Knight
knight@phunc.com
On Fri, 6 Oct 2000, knight wrote:
>
> > How do I get a zope database connection from an enternal method?
>
> You can access your db using your existing ZSQL Methods by calling them
> from the namespace passed in, specifically self.
>
> Example:
>
> def myextmethod(self):
> mfl_id = 3
> results = self.sqlCountUsers(mfl_id=mfl_id)
> for result in results:
> print result[0], result[3]
>
>
>
> Keep in mind that a list is returned, not a dictionary.
>
> Knight
> knight@phunc.com
>
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
From matt@virtualspectator.com Fri Oct 6 10:55:53 2000
From: matt@virtualspectator.com (matt)
Date: Fri, 6 Oct 2000 22:55:53 +1300
Subject: [Zope] XMLDocument create attributes problem
Message-ID: <00100622591302.00925@localhost.localdomain>
Hi,
I'm trying to make an external method create and set some attributes of nodes
in an XML document. The following is a fragment of the code, and the error. I
can't even get a valid attribute created, let alone set. Does anyone have some
examples?
Please could you reply to me as well as the list,
regards
Matt
from Products.XMLDocument.XMLDocument import Document
def add(self, id, title):
ob=Document()
ob.title=title
ob.id=id
id=self._setObject(id, ob)
log_node = ob.createElement('log')
an_at = ob.createAttribute('attribute1')
Zope Error
Zope has encountered an error while publishing this resource.
Error Type: TypeError
Error Value: too many arguments; expected 3, got 4
Traceback (innermost last):
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/ZPublisher/Publish.py, line 222, in publish_module
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/ZPublisher/Publish.py, line 187, in publish
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/Zope/__init__.py, line 221, in zpublisher_exception_hook
(Object: Traversable)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/ZPublisher/Publish.py, line 171, in publish
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/ZPublisher/mapply.py, line 160, in mapply
(Object: CreateNewsItem)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/ZPublisher/Publish.py, line 112, in call_object
(Object: CreateNewsItem)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/OFS/DTMLMethod.py, line 172, in __call__
(Object: CreateNewsItem)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/DocumentTemplate/DT_String.py, line 528, in __call__
(Object: CreateNewsItem)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/DocumentTemplate/DT_Util.py, line 337, in eval
(Object: addxmldoc('test', 'some_title_test'))
(Info: addxmldoc)
File , line 0, in ?
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/Products/ExternalMethod/ExternalMethod.py, line 270, in __call__
(Object: addxmldoc)
(Info: (('test', 'some_title_test'), {}, None))
File /usr/local/zope/Zope-2.2.0-linux2-x86/Extensions/addxmldoc.py, line 11, in add
(Object: Traversable)
File /usr/local/zope/Zope-2.2.0-linux2-x86/lib/python/Products/XMLDocument/XMLDocument.py, line 283, in createAttribute
(Object: Manageable)
TypeError: (see above)
From rbeer@uni-goettingen.de Fri Oct 6 12:19:11 2000
From: rbeer@uni-goettingen.de (Ragnar Beer)
Date: Fri, 6 Oct 2000 13:19:11 +0200
Subject: [Zope] Migrating from 2.1.6 to 2.2.2
In-Reply-To: <4.3.2.7.2.20001005151134.00b2a2d0@lucy.riskmetrics.com>
References: <4.3.2.7.2.20001005151134.00b2a2d0@lucy.riskmetrics.com>
Message-ID:
Take a look at http://www.zope.org/Products/Zope/2.2.0/upgrading_to_220.
Ragnar
>I have a Zope based web site running under 2.1.6. I want to move it
>to a different machine which will be running 2.2.2. Can someone
>identify the steps I need to take to make this move? What things do
>I need to be aware of in moving between these versions? Do I just
>need to copy the data.fs along with any required product files, or
>do I need move/configure other things.
>
>Thanks.
>
>
>_______________________________________________
>Zope maillist - Zope@zope.org
>http://lists.zope.org/mailman/listinfo/zope
>** No cross posts or HTML encoding! **
>(Related lists - http://lists.zope.org/mailman/listinfo/zope-announce
>http://lists.zope.org/mailman/listinfo/zope-dev )
From ssmith6@bigpond.net.au Fri Oct 6 13:17:11 2000
From: ssmith6@bigpond.net.au (steve smith)
Date: Fri, 6 Oct 2000 22:17:11 +1000
Subject: [Zope] Passing lists to zsql methods
Message-ID: <000101c02f8f$5b8a6840$be348490@vic.bigpond.net.au>
I have a form comprising two selection lists, each supporting multiple
selection. I want the inputs to become parameters to a zsql method. I find
the input works if the user selects at least one item from each list, but
fails with a 'bad object id' message if either list is left unselected. I
have tried providing a default list value, no luck. Any ideas out there?
The form looks like:
Use this form to specify the parameters for your query
or
submission
All fields are optional
Multiple selection is supported - hold down the CONTROL key
and the zsql method reads:
use thetable
BEGIN transaction INSERT INTO rumours
(Description)
VALUES ()
DECLARE @rumourid int
SELECT @rumourid = MAX(rumourid)
FROM rumours
COMMIT
INSERT
INTO roperators(rumourid, OperatorID)
VALUES (@rumourid, )
INSERT
INTO rclasses(rumourid, ClassID)
VALUES (@rumourid, )
From sebbacon@email.com Fri Oct 6 13:52:37 2000
From: sebbacon@email.com (Seb Bacon)
Date: Fri, 6 Oct 2000 13:52:37 +0100
Subject: [Zope] Base ZClass propertysheet management
In-Reply-To:
Message-ID:
I've got a ZClass "A" that subclasses another ZClass "B". I can use the
default propertysheets/B/manage method to update B's properties; but how do
I access the properties of A through the management interface?
Many thanks
Seb.
-----Original Message-----
From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of
knight
Sent: 06 October 2000 10:05
To: zope@zope.org
Cc: Mark Twiddy
Subject: Re: [Zope] external method database connection
Also, you could always import the specific module for your database, and
create a db connection, then execute() and fetch() directly. Although, if
you are putting this in an external method, it would be wiser to use your
existing ZSQL methods ;]
Knight
knight@phunc.com
On Fri, 6 Oct 2000, knight wrote:
>
> > How do I get a zope database connection from an enternal method?
>
> You can access your db using your existing ZSQL Methods by calling them
> from the namespace passed in, specifically self.
>
> Example:
>
> def myextmethod(self):
> mfl_id = 3
> results = self.sqlCountUsers(mfl_id=mfl_id)
> for result in results:
> print result[0], result[3]
>
>
>
> Keep in mind that a list is returned, not a dictionary.
>
> Knight
> knight@phunc.com
>
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
_______________________________________________
Zope maillist - Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope-dev )
From knight@righteous.net Fri Oct 6 14:07:20 2000
From: knight@righteous.net (knight)
Date: Fri, 6 Oct 2000 06:07:20 -0700 (PDT)
Subject: [Zope] Base ZClass propertysheet management
In-Reply-To:
Message-ID:
Either I don't fully understand your question, or I'm misinterpreting what
you are trying to accomplish.
If you are subclassing A, calling it B, then it _already_ has the
properties of A when it was subclassed. However, if you have two instances
running, one A, and one subclass of A called B, then you can not access
that data in A from B since they are seperate instances.
Maybe you could clarify what you are trying to accomplish (example
maybe)...
Regards,
Knight
knight@phunc.com
On Fri, 6 Oct 2000, Seb Bacon wrote:
> I've got a ZClass "A" that subclasses another ZClass "B". I can use the
> default propertysheets/B/manage method to update B's properties; but how do
> I access the properties of A through the management interface?
>
> Many thanks
>
> Seb.
>
> -----Original Message-----
> From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of
> knight
> Sent: 06 October 2000 10:05
> To: zope@zope.org
> Cc: Mark Twiddy
> Subject: Re: [Zope] external method database connection
>
>
> Also, you could always import the specific module for your database, and
> create a db connection, then execute() and fetch() directly. Although, if
> you are putting this in an external method, it would be wiser to use your
> existing ZSQL methods ;]
>
> Knight
> knight@phunc.com
>
> On Fri, 6 Oct 2000, knight wrote:
>
> >
> > > How do I get a zope database connection from an enternal method?
> >
> > You can access your db using your existing ZSQL Methods by calling them
> > from the namespace passed in, specifically self.
> >
> > Example:
> >
> > def myextmethod(self):
> > mfl_id = 3
> > results = self.sqlCountUsers(mfl_id=mfl_id)
> > for result in results:
> > print result[0], result[3]
> >
> >
> >
> > Keep in mind that a list is returned, not a dictionary.
> >
> > Knight
> > knight@phunc.com
> >
> >
> >
> > _______________________________________________
> > Zope maillist - Zope@zope.org
> > http://lists.zope.org/mailman/listinfo/zope
> > ** No cross posts or HTML encoding! **
> > (Related lists -
> > http://lists.zope.org/mailman/listinfo/zope-announce
> > http://lists.zope.org/mailman/listinfo/zope-dev )
> >
> >
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
From odeckmyn.list@teaser.fr Fri Oct 6 14:16:23 2000
From: odeckmyn.list@teaser.fr (Olivier Deckmyn)
Date: Fri, 6 Oct 2000 15:16:23 +0200
Subject: [Zope] SiteAccess2, Zope 2.2.2, __no_before_traverse__
Message-ID: <02e801c02f97$9fe3fda0$0d00000a@ODECKMYN2K>
Hi all,
What is the new way to apply the "__no_before_traverse__" using SiteAccess2
?
When I was younger, in SiteAccess1, I used to postfix my URL with this (ex :
http://mysite:8080/__no_before_traverse__/manage ), so that SiteRoot did not
apply ; this enabling to play with the management interface on a broken
SiteAcces configuration...
What is the "nowadays way to to this (TM)" ?
Please help !
Thanx !
---
We are Micro$oft. You will be assimilated. Resistance is futile.
From jjunior@cidadei.com.br Fri Oct 6 14:40:05 2000
From: jjunior@cidadei.com.br (Joaldo Junior)
Date: Fri, 6 Oct 2000 10:40:05 -0300
Subject: [Zope] variable
Message-ID: <70DA17B25830D411AD6500508B11CB4B3689D2@PRIMA-EXC01>
It will be that somebody knows with I obtains to capture the last
register registered in cadastre in some 0 variable.
From evan@4-am.com Fri Oct 6 15:30:06 2000
From: evan@4-am.com (Evan Simpson)
Date: Fri, 6 Oct 2000 10:30:06 -0400
Subject: [Zope] SiteAccess2, Zope 2.2.2, __no_before_traverse__
References: <02e801c02f97$9fe3fda0$0d00000a@ODECKMYN2K>
Message-ID: <001b01c02fa1$eca23f30$3e48a4d8@digicool.com>
From: Olivier Deckmyn
> What is the new way to apply the "__no_before_traverse__" using SiteAccess2
Two ways, and it's factored so that you can turn SiteAccess objects off more selectively.
First, you can turn all SiteRoots or Access Rules in your site off by restarting Zope with
environment variables SUPPRESS_SITEROOT and/or SUPPRESS_ACCESSRULE set.
Second, you can insert _SUPPRESS_SITEROOT or _SUPPRESS_ACCESSRULE in a URL right after the name of a
container that has one you want to suppress. You can include both, in either order, if a folder has
both an Access Rule and a SiteRoot that you want to turn off.
Cheers,
Evan @ digicool & 4-am
From odeckmyn.list@teaser.fr Fri Oct 6 15:23:47 2000
From: odeckmyn.list@teaser.fr (Olivier Deckmyn)
Date: Fri, 6 Oct 2000 16:23:47 +0200
Subject: [Zope] SiteAccess2, Zope 2.2.2, __no_before_traverse__
References: <02e801c02f97$9fe3fda0$0d00000a@ODECKMYN2K>
Message-ID: <033c01c02fa1$0a274600$0d00000a@ODECKMYN2K>
the new magic buzz word is : "_SUPPRESS_SITEROOT"
et voila !
Olivier.
----- Original Message -----
From: "Olivier Deckmyn"
To:
Sent: Friday, October 06, 2000 3:16 PM
Subject: [Zope] SiteAccess2, Zope 2.2.2, __no_before_traverse__
> Hi all,
>
> What is the new way to apply the "__no_before_traverse__" using
SiteAccess2
> ?
>
> When I was younger, in SiteAccess1, I used to postfix my URL with this (ex
:
> http://mysite:8080/__no_before_traverse__/manage ), so that SiteRoot did
not
> apply ; this enabling to play with the management interface on a broken
> SiteAcces configuration...
>
> What is the "nowadays way to to this (TM)" ?
>
> Please help !
>
> Thanx !
>
> ---
> We are Micro$oft. You will be assimilated. Resistance is futile.
>
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
From lheber@debis.com Fri Oct 6 15:24:48 2000
From: lheber@debis.com (Lars Heber)
Date: Fri, 06 Oct 2000 16:24:48 +0200
Subject: [Zope] Animated GIFs
Message-ID: <39DDE0B0.B461CE18@debis.com>
Hi there,
I've got a strange problem.
I want to upload an animated GIF to my Zope, but when I want to view it,
animation stops at the last frame instead of looping indefinitely.
When not uploaded to Zope, the animation works fine,
also, when I download the GIF by rightclick from a Zope site and view
it again outside Zope, it works perfectly!
What's going on here??? Any ideas?
PS.: The content_type is image/gif.
Do animGifs have another one? Just an idea...
Have a nice weekend :-)
Lars
From Aitor.Grajal@inetsysonline.com Fri Oct 6 15:29:21 2000
From: Aitor.Grajal@inetsysonline.com (Aitor Grajal Crespo)
Date: Fri, 06 Oct 2000 16:29:21 +0200
Subject: [Zope] Zope in Windows is faster than Linux ???
Message-ID: <200010061629210601.00EAF59D@mail.inetsysonline.com>
--=====_9708425616334=_
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi, I have a problem with Zope speed.
I've done benchmarking in two machines, with the same hardware. (K7 700=
MHz, 128 MB, 20GB HD)
Windows machine : W 2000 Professional with Zope for Windows
Linux machine : Linux RedHat 6.1, with Apache Server 1.3.12 and Zope 2.2.1
Windows 2000-----------------------------------------------------------
Server Hostname: windows
Server Port: 80
Document Path: /index_html
Document Length: 486 bytes
Concurrency Level: 25
Time taken for tests: 1.807 seconds
Complete requests: 1000
Failed requests: 137
(Connect: 0, Length: 137, Exceptions: 0)
Non-2xx responses: 864
Total transferred: 660974 bytes
HTML transferred: 473471 bytes
Requests per second: 553.40
Transfer rate: 365.79 kb/s received
Connnection Times (ms)
min avg max
Connect: 0 0 10
Processing: 11 42 356
Total: 11 42 366
----------------------------------------------------------------------------=
-------
Linux-----------------------------------------------------------------------=
----
Server Hostname: linux
Server Port: 8088
Document Path: /Contactos
Document Length: 396 bytes
Concurrency Level: 25
Time taken for tests: 7.688 seconds
Complete requests: 1000
Failed requests: 0
Total transferred: 595000 bytes
HTML transferred: 396000 bytes
Requests per second: 130.07
Transfer rate: 77.39 kb/s received
Connnection Times (ms)
min avg max
Connect: 0 8 224
Processing: 102 181 54
Total: 102 189 278
----------------------------------------------------------------------------=
---------------------------
There's a big difference in the number of requests per second, four times=
more in the Windows machine.
Anyone knows why? Does it mean that Zope running in Windows is better than=
in Linux?
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Aitor Grajal Crespo
Director General
e-mail: Aitor.Grajal@inetsysonline.com
INETSYS, S.L.
ETSI Inform=E1tica
Ctra. Colmenar, km. 15,500
28049 MADRID
SPAIN
Tfno : (34) 91 348 22 66 - Fax : (34) 91 348 22 66
http://www.inetsysonline.com
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
--=====_9708425616334=_
Content-Type: text/html; charset="us-ascii"
Hi, I have a problem with Zope speed.
I've done benchmarking in two machines, with the same
hardware. (K7 700 MHz, 128 MB, 20GB HD)
Windows machine : W 2000 Professional with Zope for
Windows
Linux machine : Linux RedHat 6.1, with Apache Server 1.3.12
and Zope 2.2.1
Windows
2000-----------------------------------------------------------
Concurrency Level: 25 Time taken for
tests: 7.688 seconds Complete
requests: 1000 Failed
requests: 0 Total
transferred: 595000 bytes HTML
transferred: 396000 bytes Requests per
second: 130.07 Transfer
rate: 77.39 kb/s
received
Connnection Times
(ms)
min avg
max Connect:
0 8 224 Processing:
102 181
54 Total: 102
189 278