Re: [Zope] ERP5 World Forum in Paris

2008-11-13 Thread Tracy Reed
On Fri, Nov 07, 2008 at 08:33:23PM +0100, Yusei TAHARA spake thusly:
> We are developing ERP5 which is a open source ERP application powered by Zope,
> and we are going to organise in Paris, on the 1st of December 2008 the
> first ERP5 World Forum.

I remain very unimpressed with ERP5 despite the enormous potential of
an open source ERP project. I feel miffed every time someone from
nexedi says it is open source. Has anything changed since I wrote this
a year and a half ago:

http://article.gmane.org/gmane.comp.python.zope.erp5.general/738

?

-- 
Tracy Reed
http://tracyreed.org


pgpBrsfAGQlUb.pgp
Description: PGP signature
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Google apps and SAML 2.0 authenticating using Zope

2008-11-13 Thread Thomas Bennett
I need a SAML 2.0 solution for authenticating into Google Apps from a SAML 2.0 
request from Google Apps.  There are Java, PHP, Perl, Drupal, and other 
solutions but I didn't want to build from scratch if there was already a Zope 
solution available.  I haven't found a Zope product that does SAML 
authentication and the closest thing I found was the acas product but looks 
like it is specifically for authenticating into Zope only.

If there doesn't already exist a Zope solution, I've found a Python SAML 
library and plan to use it with Python LDAP in external methods to 
authenticate against my Fedora Directory Server.  That is unless there are 
better suggestions in reply to this email.

Any suggestions would be appreciated.

Thanks,

Thomas




-- 

Thomas McMillan Grant Bennett   Appalachian State University
Operations & Systems AnalystP O Box 32026
University Library  Boone, North Carolina 28608
(828) 262 6587

"If a vendor shipped a Windows notebook without the drivers, I'd venture to 
guess it would be even less useful than your Linux laptop" [without drivers].
 - Shawn Powers, Linux Journal November 2008

Library Systems Help Desk: https://www.library.appstate.edu/help/

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Andrew Milton
+---[ Peter Bengtsson ]--
| I've kind of work it out. The trick is to write some boiler plate in
| the class definition like this::


Does it work when you talk to it through Zope proper instead of trying 
to call it via the test harness?

-- 
Andrew Milton
[EMAIL PROTECTED]
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Peter Bengtsson
2008/11/13 Andreas Jung <[EMAIL PROTECTED]>:
> On 13.11.2008 17:53 Uhr, Peter Bengtsson wrote:
>>
>> This used to work in zope 2.8 but not now in zope 2.10 (actually zope
>> 2.10.7 to be exact)
>>
>> from Products.PageTemplates.PageTemplateFile import PageTemplateFile
>> class MyProduct(Folder):
>> meta_type = "bla"
>> page = PageTemplateFile('zpt/foo.pt', globals())
>>
>> def render_page(self):
>>  html = self.page(self.REQUEST) # ERROR!!
>
> Are you sure that you don't have to pass the REQUEST as a keyword parameter?
>
No difference if I pass REQUEST or not.  :(

> -aj
>
> ___
> Zope maillist  -  Zope@zope.org
> http://mail.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists -
>  http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope-dev )
>
>



-- 
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Peter Bengtsson
2008/11/13 Andrew Milton <[EMAIL PROTECTED]>:
> +---[ Peter Bengtsson ]--
> | I've kind of work it out. The trick is to write some boiler plate in
> | the class definition like this::
> |
> | from zope import traversing, component, interface
> | from zope.interface import implements
> | from zope.traversing.interfaces import ITraversable
> |
> | from Products.PageTemplates.PageTemplateFile import PageTemplateFile
> | class MyProduct(Folder):
> |
> |implements(ITraversable)
> |component.provideAdapter(
> | traversing.adapters.DefaultTraversable,
> | (interface.Interface,),ITraversable)
> |
> |meta_type = "bla"
> |page = PageTemplateFile('zpt/foo.pt', globals())
> |
> |def render_page(self):
> | html = self.page(self.REQUEST) # ERROR!!
>
>
> why do you do this double shuffle anyway, when you can directly call
> "page" and protect it if necessary...
>
> I certainly don't have the issue you're describing and I don't need to
> do all that implements garbage either.
>
> Are you sure you don't have some Product installed that's messing with
> it?

No I'm not sure.
Truth is that my product is more complicated than that but so I took a
risk thinking it'll be the same as the pseudo product code I wrote.


>
> --
> Andrew Milton
> [EMAIL PROTECTED]
> ___
> Zope maillist  -  Zope@zope.org
> http://mail.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists -
>  http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope-dev )
>



-- 
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Andreas Jung

On 13.11.2008 17:53 Uhr, Peter Bengtsson wrote:

This used to work in zope 2.8 but not now in zope 2.10 (actually zope
2.10.7 to be exact)

from Products.PageTemplates.PageTemplateFile import PageTemplateFile
class MyProduct(Folder):
 meta_type = "bla"
 page = PageTemplateFile('zpt/foo.pt', globals())

 def render_page(self):
  html = self.page(self.REQUEST) # ERROR!!


Are you sure that you don't have to pass the REQUEST as a keyword 
parameter?


-aj
begin:vcard
fn:Andreas Jung
n:Jung;Andreas
org:ZOPYX Ltd. & Co. KG
adr;quoted-printable:;;Charlottenstr. 37/1;T=C3=BCbingen;;72070;Germany
email;internet:[EMAIL PROTECTED]
title:CEO
tel;work:+49-7071-793376
tel;fax:+49-7071-7936840
tel;home:+49-7071-793257
x-mozilla-html:FALSE
url:www.zopyx.com
version:2.1
end:vcard

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Andrew Milton
+---[ Peter Bengtsson ]--
| I've kind of work it out. The trick is to write some boiler plate in
| the class definition like this::
| 
| from zope import traversing, component, interface
| from zope.interface import implements
| from zope.traversing.interfaces import ITraversable
| 
| from Products.PageTemplates.PageTemplateFile import PageTemplateFile
| class MyProduct(Folder):
| 
|implements(ITraversable)
|component.provideAdapter(
| traversing.adapters.DefaultTraversable,
| (interface.Interface,),ITraversable)
| 
|meta_type = "bla"
|page = PageTemplateFile('zpt/foo.pt', globals())
| 
|def render_page(self):
| html = self.page(self.REQUEST) # ERROR!!


why do you do this double shuffle anyway, when you can directly call
"page" and protect it if necessary...

I certainly don't have the issue you're describing and I don't need to
do all that implements garbage either.

Are you sure you don't have some Product installed that's messing with
it?

-- 
Andrew Milton
[EMAIL PROTECTED]
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Call PageTemplateFile class instances

2008-11-13 Thread Peter Bengtsson
I've kind of work it out. The trick is to write some boiler plate in
the class definition like this::

from zope import traversing, component, interface
from zope.interface import implements
from zope.traversing.interfaces import ITraversable

from Products.PageTemplates.PageTemplateFile import PageTemplateFile
class MyProduct(Folder):

   implements(ITraversable)
   component.provideAdapter(
traversing.adapters.DefaultTraversable,
(interface.Interface,),ITraversable)

   meta_type = "bla"
   page = PageTemplateFile('zpt/foo.pt', globals())

   def render_page(self):
html = self.page(self.REQUEST) # ERROR!!


I don't understand how it works and I wish there was a way to apply
these settings from a function instead of having to copy and paste it
into every instance creating class.


2008/11/13 Peter Bengtsson <[EMAIL PROTECTED]>:
> This used to work in zope 2.8 but not now in zope 2.10 (actually zope
> 2.10.7 to be exact)
>
> from Products.PageTemplates.PageTemplateFile import PageTemplateFile
> class MyProduct(Folder):
>meta_type = "bla"
>page = PageTemplateFile('zpt/foo.pt', globals())
>
>def render_page(self):
> html = self.page(self.REQUEST) # ERROR!!
>
> The error is ridiculously large so I've truncated it:
>
>
> Error in test test_foo
> (Products.MoneyVillage2.tests.test_creditconfusion.TestCreditCheck)
> Traceback (most recent call last):
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Testing/ZopeTestCase/profiler.py",
> line 98, in __call__
>testMethod()
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/Products/MoneyVillage2/tests/test_creditconfusion.py",
> line 20, in test_foo
>print cc.advice2(self.app.REQUEST)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Shared/DC/Scripts/Bindings.py",
> line 313, in __call__
>return self._bindAndExec(args, kw, None)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Shared/DC/Scripts/Bindings.py",
> line 350, in _bindAndExec
>return self._exec(bound_data, args, kw)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/PageTemplateFile.py",
> line 129, in _exec
>return self.pt_render(extra_context=bound_names)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/PageTemplate.py",
> line 98, in pt_render
>showtal=showtal)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/pagetemplate/pagetemplate.py",
> line 117, in pt_render
>strictinsert=0, sourceAnnotations=sourceAnnotations)()
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
> line 271, in __call__
>self.interpret(self.program)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
> line 346, in interpret
>handlers[opcode](self, args)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
> line 870, in do_useMacro
>macro = self.engine.evaluateMacro(macroExpr)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/tales.py",
> line 696, in evaluate
>return expression(self)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/expressions.py",
> line 217, in __call__
>return self._eval(econtext)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/Expressions.py",
> line 153, in _eval
>ob = self._subexprs[-1](econtext)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/expressions.py",
> line 124, in _eval
>ob = self._traverser(ob, element, econtext)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/Expressions.py",
> line 83, in boboAwareZopeTraverse
>request=request)
>  File 
> "/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/traversing/adapters.py",
> line 161, in traversePathElement
>raise TraversalError('No traversable adapter found', obj)
> TraversalError: ('No traversable adapter found', {'master':
> [('version', '1.6'), ('mode', 'html'), ('setPosition', (1, 0)),
> ('setSourceFile', 'main_template'), ('beginScope', {'define-macro':
> 'master'}), ('optTag', ('metal:block', None, 'metal', 0, [('startTag',
> ('metal:block', [('define-macro', 'master', 'metal')]))], [('rawtextCo
> ...MANY MANY MORE
> LINES..
>
>
>
> --
> Peter Bengtsson,
> work www.fry-it.com
> home www.peterbe.com
> hobby www.issuetrackerproduct.com
>



-- 
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cros

[Zope] Call PageTemplateFile class instances

2008-11-13 Thread Peter Bengtsson
This used to work in zope 2.8 but not now in zope 2.10 (actually zope
2.10.7 to be exact)

from Products.PageTemplates.PageTemplateFile import PageTemplateFile
class MyProduct(Folder):
meta_type = "bla"
page = PageTemplateFile('zpt/foo.pt', globals())

def render_page(self):
 html = self.page(self.REQUEST) # ERROR!!

The error is ridiculously large so I've truncated it:


Error in test test_foo
(Products.MoneyVillage2.tests.test_creditconfusion.TestCreditCheck)
Traceback (most recent call last):
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Testing/ZopeTestCase/profiler.py",
line 98, in __call__
testMethod()
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/Products/MoneyVillage2/tests/test_creditconfusion.py",
line 20, in test_foo
print cc.advice2(self.app.REQUEST)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Shared/DC/Scripts/Bindings.py",
line 313, in __call__
return self._bindAndExec(args, kw, None)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Shared/DC/Scripts/Bindings.py",
line 350, in _bindAndExec
return self._exec(bound_data, args, kw)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/PageTemplateFile.py",
line 129, in _exec
return self.pt_render(extra_context=bound_names)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/PageTemplate.py",
line 98, in pt_render
showtal=showtal)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/pagetemplate/pagetemplate.py",
line 117, in pt_render
strictinsert=0, sourceAnnotations=sourceAnnotations)()
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
line 271, in __call__
self.interpret(self.program)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
line 346, in interpret
handlers[opcode](self, args)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tal/talinterpreter.py",
line 870, in do_useMacro
macro = self.engine.evaluateMacro(macroExpr)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/tales.py",
line 696, in evaluate
return expression(self)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/expressions.py",
line 217, in __call__
return self._eval(econtext)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/Expressions.py",
line 153, in _eval
ob = self._subexprs[-1](econtext)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/tales/expressions.py",
line 124, in _eval
ob = self._traverser(ob, element, econtext)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/Products/PageTemplates/Expressions.py",
line 83, in boboAwareZopeTraverse
request=request)
  File 
"/home/peterbe/virtualenvzope/MoneyVillage2/zope2107/lib/python/zope/traversing/adapters.py",
line 161, in traversePathElement
raise TraversalError('No traversable adapter found', obj)
TraversalError: ('No traversable adapter found', {'master':
[('version', '1.6'), ('mode', 'html'), ('setPosition', (1, 0)),
('setSourceFile', 'main_template'), ('beginScope', {'define-macro':
'master'}), ('optTag', ('metal:block', None, 'metal', 0, [('startTag',
('metal:block', [('define-macro', 'master', 'metal')]))], [('rawtextCo
...MANY MANY MORE
LINES..



-- 
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )