Re: [zope-pt] Segurança no Plone

2006-07-27 Por tôpico Dorneles Treméa
Opa Plone Devel[1],

> Estou na fase de implementação de alguns portais, mas
> o pessoal para quem estou implementando está me
> cobrando uma documentação sobre segurança, mas não uma
> documentação de como implementar a segurança, pois
> isso eu já encontrei no tchezope.
> 
> O que eu quero é um pequeno texto justificando:
> - Por que o Plone é seguro?
> - Estatistica sobre segurança no plone.
> - Por que utitlizar o plone e não outras plataformas,
> olhando da referência de segurança.

complementando o que o Zénrique já informou, aqui vão mais
duas fontes fresquinhas que podem dar uma idéia do quanto a
segurança é levada a sério em todas as camadas PZP:

http://blogs.onenw.org/jon/archives/2006/07/22/plone-and-zope-security
http://castlemurphy.com/blog/archive/2006/07/25/plone-and-zope-security

O que talvez resuma tudo sejam essas duas frases do Murphy
(não aquele que você está pensado, mas o do segundo post
acima...):

"Security was designed into the software from early on. It is
not an add on."

[1] Um dos grandes baratos da comunidade PZP são as pessoas e
nada melhor do que saber com quem a gente fala. Se possível
(e não vejo nenhuma justificativa contra), gostaria de pedir
a todos, mais uma vez, que revisassem seus dados pessoais no
cliente de e-mail...

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Obrigatoriedade condicional no Archetypes

2006-07-27 Por tôpico Dorneles Treméa
Oi Elisandra,

> Fiz uma classe com dois campos em que um deles deve ser preenchido
> obrigatoriamente, o usuário que escolhe qual dos dois quer preencher,
> mas não sei como fazer isso no Achetypes, alguém poderia me dar uma luz?

campos 'condicionalmente obrigatórios', volta e meia alguém sempre
precisa disso... :-)

Uma das saídas é usar um dos 3 hooks de validação existentes, que são
chamados na seguinte ordem:

- pre_validate(self, REQUEST, errors)
- validate_CAMPO(value)
- post_validate(self, REQUEST, errors)

Mesmo o segundo hook recebendo apenas o valor, ainda é possível
ter acesso ao REQUEST (self.REQUEST) e dessa forma, consultar os
valores de outros campos.

A diferença entre os hooks está apenas na ordem em que eles são
chamados. Caso o pre_validate acuse algum erro, a validação é
interrompida e os erros são exibidos. Já o post_validate é sempre
executado após a validação individual de todos os campos, então
ele pode, caso necessário, mudar o resultado da validação, tanto
adicionando erros, como removendo.

Os métodos {pre,post}_validate retornam None quando não há erro,
ou quando há, um dicionário contendo nas chaves o nome dos campos
e nos valores os erros a serem exibidos para cada campo. O método
validate_CAMPO (onde sim, CAMPO é o nome do campo...) retorna None
para informar que não há erro ou a mensagem a ser exibida, caso
tenha erro.

Exemplo para o post_validate, definido na classe do teu conteúdo:

def post_validate(self, REQUEST, errors):
# Caso nenhum dos dois campos tenha sido preenchido
if not REQUEST.get('campo1') and not REQUEST.get('campo2'):
msg = 'Você precisa preencher o campo1 ou o campo2.'
errors['campo1'] = msg
errors['campo2'] = msg
# Caso ambos tenham sido preenchido
if REQUEST.get('campo1') and REQUEST.get('campo2'):
msg = 'Você precisa preencher o campo1 ou o campo2, não ambos.'
errors['campo1'] = msg
errors['campo2'] = msg

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Problemas do CacheFu

2006-08-09 Por tôpico Dorneles Treméa
Opa Francisco,

> 2006-08-09T11:20:15 WARNING Cache ZCache_set() exception
> Traceback (most recent call last):
>   File "/usr/local/www/Zope28/lib
> /python/OFS/Cache.py", line 212, in
> ZCacheable_   
>  
> set
> mtime_func)
>   File
> "/usr/local/www/Zope28/Products/PolicyHTTPCacheManager/PolicyHTTPCacheMan 
>
> ager.py", line 102, in ZCache_set
> REQUEST.setHeader('Pragma', 'no-cache')
>   File "/usr/local/www/Zope28/lib/python/ZPublisher/HTTPRequest.py",
> line
> 1219, 
> 
> in __getattr__
> raise AttributeError, key
> AttributeError: setHeader

acho que o Sidnei leu essa tua mensagem e deu uma endireitada no
PolicyHTTPCacheManager, ou então foi 'transmimento de pensação',
pois isso foi corrigido a pouco:

http://dev.plone.org/collective/changeset/27007

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Não consigo excluir objeto no ZOPE

2006-09-05 Por tôpico Dorneles Treméa
Opa João,

> Estou dando uma limpa no meu Zope e tem duas pastas (folder) que não
> consigo excluir... dá o erro:
> 
> Module ZODB.Connection, line 786, in _setstate
>   Module ZODB.serialize, line 605, in setGhostState
>   Module Shared.DC.ZRDB.Connection, line 74, in __setstate__
>   Module logging, line 962, in error
> TypeError: _log() got an unexpected keyword argument 'error'
> 
> Alguém sabe como excluir estas pastas??
 
algo me diz que você andou tentando o SQLPASPlugin, não? ;-)

Mas esse erro aí de cima é do Zope mesmo[1], atualiza ele
que tu deves conseguir excluir essas pastas.

[1] http://www.zope.org/Collectors/Zope/2155

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





[zope-pt] Re: O Plone eh confiavel?

2006-09-06 Por tôpico Dorneles Treméa
Opa Castardo,

> Agora ele saiu da empresa e foi para SP para trabalhar em uma empresa
> focada em seguranca, na bagagem ele leva a lição de que SQL Injection em
> Zope 'nao tem vez'!

hum... como meu trabalho de conclusão de curso foi sobre a área de
segurança, e eu ainda lembro do que eu escrevi, eu me sinto meio que
'obrigado' a um pequeno adendo... :-)

Não faz muito sentido dizer que tecnologia A ou B não tem problema
de segurança. Algumas tecnologias podem ser mais (ou menos) propensas
a esses tipos de problema, mas dizer que 'não tem vez' é um exagero.

Por que isso? Porque ainda temos mais um componente envolvido no
processo: o *desenvolvedor*... e todos nós podemos imaginar o que
este pequeno detalhe pode significar no contexto geral da coisa...

>  Rox! :)

Yep, esse é um dos responsáveis pela boa fama do Zope, mas se neguinho
for 'ixperto' e usar  porque é 'mais fácil de usar' (ou porque
não sabia que dtml-sqlvar existia, ou por qualquer outra desculpa para
lá de esfarrapada) vai se deparar com a mesma caneca de vermes existente
em todas as outras tecnologias que estão por ai... ;-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Conceito Ajax no Plone

2006-09-07 Por tôpico Dorneles Treméa
Opa João Paulo,

> Comecei a estudar o conceito AJAX e gostei muito. Como uso o
> Zope/Plone, eu quero aplicar este conceito no Plone.
> Alguém tem alguma dica ou conhece sites que utiliza o AJAX no Plone?

como o Sidnei e o Ramalho já comentaram, o Plone usa o tal do
AJAX muito antes dele ser conhecido por esse nome, afinal os
XMLHttpRequests da vida já estão conosco desde o Mozilão 1.0
em 2002 (e até mesmo antes disso, numa implementação meia-boca
da Microsoft no IE 5.0)... :-)

O Plone 2.5 também vem com um outro exemplozinho bacana: clique
na aba que mostra o conteúdo de uma pasta (folder_contets), depois
basta arrastar os itens para cima ou para baixo para mudar a ordem
deles, sem precisar mais ficar clicando trocentas vezes nas setinhas,
até mover para a posição desejada... 

> Qualquer dica é bem vinda.

Bom, faz tempo que no mundo Plone vêm ocorrendo uma briga de foice!
A discussão foi, digamos, bem apimentada no último Archipelago
Sprint[1] (sim, ano que vêm tem mais!)... :-)

Basicamente temos duas frentes de trabalho: uma usando o Bling[2],
do Benjamin Saller, e outra usando o KSS/Azax[3], do Balazs Ree e
do Godefroid Chapelle.

A idéia do Bling é fornecer 'primitivas' básicas para se usar Ajax
sem precisar escrever Javascript, de uma forma bem parecida como o
RubyOnRails faz, diretamente nos PageTemplates (basta conferir os
exemplos). Ele é agnóstico em relação ao toolkit, suportando
prototype e rico no momento, mas poderia suportar qualquer outro.

De uma forma semelhante, o KSS/Azax pretende ser independente de
framework, mas aplicado de uma forma diferente, não nos templates.
Os comportamentos seriam adicionados através de arquivos contendo
regras que se aplicam em cima de IDs e classes CSS. Recomendo 
também dar uma conferida nos exemplos que eles valem mais do que
mil palavras.

De qualquer forma, as idéias que ficam são:

- evitar escrever JavaScript na unha;
- evitar depender de um framework específico.

No sprint, em abril, surgiu a idéia de fazer uma fusão entre estes
2 produtos, mas não é algo muito simples de ser feito. Nós últimos
meses, ambos os produtos passaram a disponibilizar exemplos de como
efetuar as operações mais triviais, para o pessoal ir pegando as
manhas...

[1] http://plone.org/events/sprints/past-sprints/archipelagosprint
[2] http://plone.org/products/bling
[3] http://azax.ree.hu

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [zope-pt] Resultado ZSql com string ?

2006-09-15 Por tôpico Dorneles Treméa
Opa Fernando,

> Seguinte, eu tenho um cadastro onde gravo uma string em um SGBD.
> Ex:
>   string:${context/absolute_url}/meuzpt
> 
> Negocio é que ao colocar o retorno da zsql em tal:attributes não
> consigo fazer com que seja interpretado minha string.
> Ex:
>   tal:define="link resultadosql/meulink"
>   tal:attributes="href link"
> 
> Ao invés do Zope me trazer o endereco tipo
> (http://ip:8080/plonesite/meuzpt), ele me traz
> (string:${context/absolute_url}/meuzpt).
> 
> Alguma sugestão de como resolver isso ?

simples, usa uma das funções adicionais disponíveis para expressões
Python TALES: string, path, exists e nocall.

No teu caso, 'string' dá conta do recado:

  tal:define="link resultadosql/meulink"
  tal:attributes="href python:string(link)"

Mas tu tens que retornar '${context/absolute_url}/meuzpt' em 'link',
ou seja, sem o prefixo 'string:'... ;-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [zope-pt] problema com exportação em importação

2006-09-20 Por tôpico Dorneles Treméa
Oi Cleber,

> Alguém já teve algum problema parecido?

uma galera... tanto que ganhou até uma entrada na referência de
erros no plone.org, referência essa que é a #1 no Google quando
se procura por "AttributeError: _length"... ;-)

> Desenvolvi um site sobre a estrutura;
> 
> Python 2.1.3
> Zope 2.6.4
> Plone 2.0.5
> 
> Agora estou tentando migrar o site para as versões;
> 
> Python 2.4.1
> Zope 2.8.0-final
> Plone 2.1

Dica: nessa caso, usa as releases mais recentes do Zope 2.8.x e do
Plone 2.1.x.
 
> Mas ai tentar importar para a nova estrutura tenho um AttributeError com
> o valor _length, segue o traceback;
> 
> Traceback (innermost last):
>   [...]
>   Module Products.PluginIndexes.common.UnIndex, line 233, in _index_object
>   Module Products.PluginIndexes.common.UnIndex, line 189, in
> insertForwardIndexEntry
> AttributeError: _length

Seus problemas acabaram!™

http://plone.org/documentation/error/zope-upgrade-attributeerror-length

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Passando variavél de um zpt para um Script python

2006-09-25 Por tôpico Dorneles Treméa
Opa Carlos,

> eu estou passando para o script pelo hidden mesmo. na verdade eu queria
> colocar todos os valores q eu defino no ZPT em algum lugar onde eu possa
> pegar sempre(em alguma variavel, um objeto, sei lá tornar todas
> globais. naum sei se existe esta opção.

tudo o que estiver definido dentro do formulário no PageTemplate pode
ser acessado no PythonScript com context.REQUEST.form:

for key, value in context.REQUEST.form.items():
print key, value

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] Enviar email ao criar usuário

2006-09-27 Por tôpico Dorneles Treméa
Opa,

> Não, não ... me referia a enviar aos administradores que um novo usuário
> foi criado!
> 
> Seguindo a sugestão do Deo vou criar um script pra enviar o email e ter
> o auxilio do FormController para controlar o registro/envio.

só explicando um pouquinho melhor: a idéia é registrar uma nova ação
para quando o register.cpy finalizar com 'success', de forma a chamar
um outro cpy, que faz o que precisa ser feito, e por fim chama o que
o register.cpy chamaria.

Ou seja, estaremos adicionando algo novo no 'chain' de registro de
usuários, sem tocar nenhum template ou script do Plone, apenas
sobrescrevendo uma ação no portal_formcontroller.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [zope-pt] script para adição de conteúdo

2006-10-06 Por tôpico Dorneles Treméa
Opa Gustavo,

> Estou montando um script para adicionar conteúdo (migrando um site xoops
> para plone). No canal #plone recebi a sugestão de usar o método
> invokeFactory. Estou testando ele no ploneshell e parece funcionar bem.
> Um exemplo do uso seria:
> 
> pasta.invokeFactory("News item", id="noticia1", title="Titulo Noticia", 
> text="texto")
> 
> O problema é que eu não queria passar o "id" para este método. Quando
> adicionamos conteúdo via web o plone automaticamente gera um id baseado
> no titulo. Como fazer isso? Esta função exige que eu forneça um id.

a Tânia já deu uma sugestão, aqui vai mais uma.

Basta chamar o método 'processForm' no objeto criado, que ele se encarrega
de nomear o objeto conforme o título passado. Como bônus, ele ainda chama
o hook de criação de objetos e a mágica para desmarcar a flag de criação.
 
> Outra questão. Existe outra forma de adicionar conteúdo via script?

Existe. Usando o invokeFactory, você está sujeito às restrições impostas
pelo container (o local onde você está adicionando os objetos). Em algumas
situações é conveniente adicionar coisas onde depois usuários normais não
poderão mais fazer isso. Para tal, existe o _createObjectByType, e você
usaria da seguinte maneira (untested):

from Products.CMFPlone.utils import _createObjectByType
obj = _createObjectByType('News Item', pasta, 'noticia1', title="Titulo 
Noticia", text="texto")
obj.processForm()

HTH,
 
-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 




Re: [zope-pt] script para adição de conteúdo

2006-10-12 Por tôpico Dorneles Treméa
Opa Gustavo,

> Como faço para alterar o dono e a data de criação de objetos? Como é uma
> migração seria estranho várias noticias terem a mesma data e terem sido
> criadas pelo "admin".

# Data de criação
obj.setCreationDate(date)

# Data da última alteração
obj.setModificationDate(date)

# Criador do objeto
obj.setCreators((userid,))

# Dono do objeto (Onwer role)
obj.plone_utils.changeOwnershipOf(obj, userid, subobjects)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] [ off-topic ] Zope Freak Show - manipulando datas

2006-10-17 Por tôpico Dorneles Treméa
Opa Braga,

> Passei por uma situação curiosa envolvendo datas e estou relatando por
> dois motivos, pode auxiliar outras pessoas no futuro e pode também
> surgir uma solução mais interessante.
> 
> Ocorre o seguinte, eu gravo uma data no banco e depois ela é colocada em
> um textbox em uma janela de edição de dados e etc.
> 
> Ao carregar essa data (em um ZPT) o Zope simplemente subtrai um dia, sem
> perguntar religião, time que torce e etc., ele subtrai e pronto.

isso está seriamente cheirando a algo relacionado com a mudança de
timezone, ou seja, para nós o famigerado horário de verão...

> a solução sugerida foi a seguinte:
> 
> tal:attributes="value 
> python:DateTime(*MinhaData.parts()[:3]).strftime('%d/%m/%Y')"
> 
> onde eu "recrio a data" e posteriormente formato, ao tentar formatar
> diretamente a data é subtraída em um dia.
> 
> Caso alguém queira acrescentar algo naturalmente será deveras
> interessante :D

Seria interessante você tentar produzir um trecho mínimo de código
onde o problema possa ser reproduzido para darmos uma olhada.

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: Res: [zope-pt] [ off-topic ] Zope Freak Show - manipulando datas

2006-10-18 Por tôpico Dorneles Treméa
Opa Braga,

> Eu tenho ZSQL que traz a data do banco e não há qualquer manipulação e etc.

Hum... e qual o timezone dessa data que o banco está retornado?

Eu aposto que o furo está aqui...

> no zsql eu tenho o "select" ... tenho um script python que carrega esse
> SZQL e repassa ao ZPT (com a opção dictionaries) e no ZPT é extamente
> este trecho
> 
> tal:attributes="value 
> python:DateTime(*MinhaData.parts()[:3]).strftime('%d/%m/%Y')"
> 
> se eu tentar algo como:
> 
> tal:attributes="value python:DateTime(MinhaData).strftime('%d/%m/%Y')"

Opa, opa, porque cargas d'água você está criando um novo DateTime se
o MinhaData retornado já é um DateTime? :-)

Isso altera o timezone da data para o timezone usado no Zope, veja
uma explicação mais detalhada abaixo.

> Um dia é subtraído da data

Será? Eu diria que isso é tecnicamente *impossível*... ;-)

O que está acontecendo é que a representação do mesmo DateTime
em timezones diferentes é, como esperado, diferente. Porém a data
continua sendo a mesma, afinal quando já é zero hora de amanhã em
Londres, ainda são 21:00 aqui, na pacata Garibaldi, assim como
são 2:00 da matina na igualmente pacata Tønsberg, na Noruega.

Deixa eu tentar provar isso...

Se a data que estiver retornando do banco estiver num timezone
diferente do que é usado no Zope o que ocorre é o seguinte:

>>> # Criando uma data no formato ISO 8601[1] (timezone: GMT+0)
>>> UTC = DateTime('2006-10-18')
>>> UTC.parts()
(2006, 10, 18, 0, 0, 0.0, 'GMT+0')

Agora, se você passar esse DateTime como parâmetro para a criação
de outro DateTime (que é o que você está fazendo no PageTemplate
por uma razão que eu desconheço), o timezone dele muda para o do
Zope (que herda o que estiver definido pelo sistema operacional):

>>> DateTime(UTC).parts()
(2006, 10, 17, 21, 0, 0.0, 'GMT-3')

Note que mesmo a representação sendo diferente, eles continuam
sendo a mesma coisa:

>>> UTC == DateTime(UTC)
True
>>> UTC.timezone() == DateTime(UTC).timezone()
False

Ou seja, continua sendo a mesma 'data' só que em timezones
diferente. Esse é o problema comum quanso se usa datas sem um
timezone associado.

A solução para o seu problema é fazer com que a instância do
DateTime criada pelo banco esteja no mesmo timezone do que está
sendo usado no Zope. A forma mais simples é fazendo o banco
retornar uma string ISO 8601 ou, de forma mais simplificada,
"-MM-DD GMT±X" ou ainda algo mais simples, "AAAA/MM/DD",
detalhe para as barras no lugar dos traços.

Espero ter ajudado a entender a questão e, conseqüentemente,
a resolver o problema.

[1] http://www.w3.org/TR/NOTE-datetime

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] Novo Portal do Plenarinho

2006-10-25 Por tôpico Dorneles Treméa
Olá André,

> Lançado ontem o novo portal do infantil da Câmara do Deputados,
> desenvolvido em Zope/Plone.
> 
> Acesse: http://www.plenarinho.gov.br

quando acessado a partir do Firefox 2.0 (e provavelmente versões
anteriores também) no Linux, a única coisa que aparece na tela
é o movie flash com a coruja e as crianças, todo o resto da página
fica em branco... :-(

Isso está ocorrendo devido ao movie flash não ficar com o fundo
transparente. Eu lembro de ter visto tempo trás um banner com
forma arredondada flutuando num site, e o conteúdo era Flash,
mas não consigo lembrar onde foi.

Aparentemente fazer o flash ficar transparente no Linux é que
vai ser a parte mais complexa (isso se vocês tiverem interesse
em fazer funcionar no Linux, claro). Fora isso, o site tem
pequenos erros com marcação XHTML inválida.

Grande parte desses erros podem ser rapidamente identificados
e corrigidos com a ajuda do serviço de validação do w3.org:

http://validator.w3.org

Para manter o suporte à Flash válido (que é algo que muita gente
despreza), basta dar uma olhada no 'A list apart':

http://alistapart.com/articles/flashsatay

E para finalizar: as ilustrações ficaram show de bola, minhas
filhas aprovaram! :-)

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] Novo Portal do Plenarinho

2006-10-25 Por tôpico Dorneles Treméa
Opa Walter,

> Bom, vamos fazer uma mandinga pra ver se o flash 9 no linux passa a
> funcionar transparências :)

infelizmente ainda não... :-(

Pelo menos a versão 9.0.21.55[1] ainda não funciona com o wmode
definido como 'transparent'. Se bem que o problema parece ser mais
complexo do que isso, já que *nenhum* link abaixo do movie pode
ser clicado...

[1] http://labs.adobe.com/downloads/flashplayer9.html

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] acesso à lista via forum

2006-10-26 Por tôpico Dorneles Treméa
Opa luchannus,

> por acaso não tem como fazer igual ao pythonbrasil, cuja lista de
> discussão pode ser acessada como forum??
> 
> ai o link para vcs verem:
> 
> http://www.nabble.com/Python---Brasil-f13844.html

quem procura acha! :-)

http://www.nabble.com/zope-pt-f16083.html

Particularmente, eu prefiro via NNTP e uso o GMANE para isso:

http://dir.gmane.org/gmane.comp.python.zope.portuguese

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] Limitar qtd de caracteres

2006-11-08 Por tôpico Dorneles Treméa
Opa Mário,

> alguem sabe como posso restringir o numero de caracteres...
> 
> tipo assim, ao pegar a propriedade "Description" de um objeto "Document"
> retornar no maximo 30 caracteres, não teria problema cortar as palavras,
> pois devo incluir "..." ao fim para caracterizar a continuação do texto

o Plone já disponibiliza essa funcionalidade, inclusive com
tratamento para evitar corte de palavras, dá uma conferida em:

CMFPlone/skins/plone_scripts/cropText.py

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] Problemas em codificação

2006-11-08 Por tôpico Dorneles Treméa
Opa Marcos,

> Pessoal estou usando o plone 2.1 e zope2.8.8, e estou fazendo varias
> consultas em um banco mysql que está com a base codificada pra iso
> (latin1)
> 
> o portal em utf-8, funciona certinho, com excessão das consultas na
> base mysql que retornam no caracteres especias o erro de codificação.
> tentei alterar o site-properties a codificação de utf-8 para
> iso-8859-1 e retornou o seguinte erro:
> 
> UnicodeEncodeError: 'latin-1' codec can't encode character u'\u2122'
> in position 34: ordinal not in range(256) (Also, the following error
> occurred while attempting to render the standard error message, please
> see the event log for full details: 'latin-1' codec can't encode
> character u'\u2122' in position 34: ordinal not in range(256))

o caracter u'\u2122' é o trademark, ou mais conhecido como: ™... :-)

A muitas luas atrás ele estava presente no template colophon.pt,
mas conferi agora e não está mais lá, então aproveitei e removi[1]
ele do plone-pt-br.po também.

Se você não quiser atualizar o produto PloneTranslations, basta
editar o seu plone-pt-br.po também.

> pensei que fosse algo a ver com o meu BD, dai acesse um ZPT e retornou
> o mesmo erro, criei um novo plone site e novamente o mesmo erro...
> 
> tentei mudar algusn parametros no próprio zope.conf como vi no blog do
> fábio rizzo e o são surtiu em nenhum efeito...
> 
> alguém de voces sabe como resolver este problema?

Eu nunca tinha visto, mas agora está resolvido... ;-)

Uma outra forma de resolver o problema seria deixar o Plone em
utf8 (o que é altamente recomendado) e recodificar os dados do
MySQL antes de usá-los, algo como:

  dados.decode('latin1).encode('utf8')

Uma última solução inclui recodificar os dados direto no MySQL,
mas isso pode ficar inviável caso os dados sejam compartilhados
com outras aplicações.

[1] http://dev.plone.org/collective/changeset/33122

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 



Re: [zope-pt] como limitar o tama nho da foto postada com a notícia?

2006-11-15 Por tôpico Dorneles Treméa
Opa Cristiano,

> Enfim, existe algum meio de configurar uma resolução mínima para envio
> de fotos em anexo às notícias de um site Plone?

uma rápida busca no histórico da lista nos leva a:

http://thread.gmane.org/gmane.comp.python.zope.portuguese/2935

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Re: como mudar cor dos links dos portlets

2006-11-16 Por tôpico Dorneles Treméa
Opa Cristiano,

> Por exemplo, esse arquivo ploneCusto.css tá vazio, logo, como vou
> saber qual é o nome da classe CSS que o Plone usa para construir os
> links dos portlets?
> 
> :-)
> 
> Entendeu a dúvida aí qual é?

yep, e a resposta é mais uma da série 'o maravilhoso mundo do
histórico das listas de discussão'... :-)

Desta vez, ao invés do Gmane, vamos pelo Yahoo, para dar uma
variada:

http://br.groups.yahoo.com/group/zope-pt/message/9050

E para melhorar um pouco mais, alguns links que surgiram desde
então (especialmente o Firebug):

http://plone.org/documentation/how-to/firefox-tools
http://plone.org/documentation/tutorial/creating-plone-themes/toolchain

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Como aplicar determinadas customiza ções CSS somente a um determinado Portlet ?

2006-11-16 Por tôpico Dorneles Treméa
Opa jogibaab[1],

> Pessoal, tenho uma dúvida: preciso saber como aplicar determinadas
> customizações CSS somente a um determinado Portlet que está dentro do
> do site Plone, e não ao site inteiro. Como posso fazer isso? Agradeço
> qualquer ajuda.

confere o e-mail que eu enviei a pouco para o Cristiano, lá você
identifica qual o ID do portlet, depois disso, basta aplicar os
seletores[2] de CSS para restringir a atuação.

Para aplicar uma borda vermelha em todos os divs dentro do elemento
que possui o imaginário ID portlet-foo, podemos usar algo como:

  #portlet-foo div { border: 1px solid red }

Para aplicar uma borda vermelha apenas nos filhos diretos do tal
portlet-foo, a sintaxe é a seguinte:

  #portlet-foo > div { border: 1px solid red }

E por aí vai...

[1] Parece nome de personagem de Star Wars, provavelmente um primo
distante do jarjarbinks[3]... :-P

Não é de agora que eu reclamo, mas vocês poderiam *pelo menos* se
identificar nas mensagens? Posso estar parecendo muito chato, mas eu
realmente gosto de saber o nome das pessoas com quem eu compartilho
conhecimento.

[2] http://www.w3.org/TR/CSS21/selector.html

[3] http://www.starwars.com/databank/character/jarjarbinks

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] ferramenta de estatística para o Plone

2006-12-05 Por tôpico Dorneles Treméa
Opa Robson,

> Me interessei pelo assunto, instalando o Analytics for Plone...
> mas no fim das contas, não sei como usá-lo... O readme dele é
> muito superficial... Alguma dica de como usá-lo?

primeiro faça o cadastro do seu site no:

http://analytics.google.com

...em seguida, instale o produto no Plone e insira o ID gerado
na configuração do produto, dentro do painel de controle do
Plone.

Espere uns dois dias e as estatísticas começarão a aparecer
no site do Google.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


[zope-pt] Firebug 1.0 beta

2006-12-08 Por tôpico Dorneles Treméa
Olá pessoal,

quando o link para o site do Firebug[1] pipocou[2] pela terceira
vez no canal #plone hoje eu finalmente me dei por vencido e acabei
indo ver do que se tratava...

A versão anterior tinha seus méritos, mas a nova mata a pau!

Devo confessar que essa é uma das mais (isso se não for *a* mais)
fantásticas extensões já criada para o Firefox. Não é sempre que
aparecem coisas tão boas da noite para o dia.

Ela foi liberada na segunda-feira dessa semana e a divulgação
parece que está indo de vento em popa. Não sei como eu passei
4 dias sem ela... :-)

Siga meu conselho, pare o que você está fazendo nesse momento e
dedique 10 minutos para uma leitura atenta de tudo o que está
no site.

Garanto que esses 10 minutinhos vão economizar pelo menos uma
hora por dia durante todos os dias da sua vida daqui para frente.
Talvez bem mais, caso você seja um webdesigner que passa o dia
fazendo isso.

Se alguém reclamar daqui para frente que não sabe como alterar
o CSS ou o JS do Plone, que não entende como o LiveSearch é
feito ou qualquer coisa relacionada, esse alguém merece uma
havainada de pau muito bem dada!

Este é mais um software que entra para a seleta lista daqueles
que eu tive prazer de fazer uma doação... ;-)

[1] http://www.getfirebug.com

[2] meu cliente de IRC (XChat) está configurado para abrir
automaticamente qualquer link postado no Firefox, algo como:

http://hellocity.net/~iolo/moniwiki/pds/UploadedFiles/sangu.py.txt

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Ressaca de ZPT

2006-12-13 Por tôpico Dorneles Treméa
Opa Luciano, Hugo,

> > Pessoal, vamos combinar que tem algo de errado com uma linguagem que
> > produz um template como o document_byline.pt. Faz anos que eu explico
> > este código nos nossos cursos de Plone, mas ontem explicando ele pela
> > n-ésima vez caiu a ficha: 73 linhas para produzir uma linha de HTML é
> > ridículo.
>
> Eu digo isto faz varios anos... mas ninguem acreditou ainda!
> 
> Nao faz sentido usar uma linguagem de template para produzir HTML
> quando temos o proprio HTML para usar!
> Querem separar a apresentacao da logica? Simples... ha melhores formas
> de o fazer do que o ZPT.

permitam-me discordar de vocês... :-)

Luciano, visualmente, pode parecer apenas uma linha, mas realmente
há um bocado de informações sendo exibidas nela, sem contar que
algumas delas possume link, outras possuem imagens e tudo ainda
ainda passa por i18n.

O número de linhas exagerado é apenas para dar uma caprichada na
indentação. Esse capricho todo ainda pode ser aberto direto no
browser ou num editor visual e ser alterado por designers sem
destruir a lógica embutida.

Hugo, você poderia ser um pouco mais claro? Não entendi o que tu
quis dizer com temos o próprio HTML para usar.

Me mostrem uma forma mais elegante do que ZPT para fazer isso que
eu mudo de time... ;-)

PS: E a propósito, o Ministério Plone avisa: suco de maçã e ZPT
não causam ressaca! :-P

Abração.

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Anti-spam uol.

2006-12-13 Por tôpico Dorneles Treméa
Jean,

> Por favor Sr. [EMAIL PROTECTED], se você não desligar esse
> recurso em 24h, seremos obrigados a desativar sua conta nessa lista.

cata a stchopa e prega-lhe fogo! ;-)

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Ressaca de ZPT

2006-12-14 Por tôpico Dorneles Treméa
Fala Hugo,

> > Hugo, você poderia ser um pouco mais claro? Não entendi o que tu
> > quis dizer com temos o próprio HTML para usar.
> 
> Peco desculpa mas meu portugues do brasil esta mais enfraquecido estes
> dias... :-)

nah... ainda está *perfeicto*!

> Traduzindo... Para que usar uma linguagem pra produzir HTML se o HTML
> ja existe pra usar directo?

Cara, confesso que ainda não entendi... :-)

ZPT, como o nome diz, são apenas templates para gerar código HTML.
Esses templates, que nada mais são do que arquivos HTML com áreas de
marcação predefinidas, são então usados para gerar conteúdo dinâmico.

Como você geraria o mesmo HTML diretamente? Embutindo a lógica junto
com a apresentação, à la PHP, ou mesmo DTML? Como se usaria HTML
direto (ou mais direto do que com ZPT) nesse caso?

É isso que eu quero entender.

> Por outras palavras...
> Pra que sair de Porto Alegre de barco, chegar em Floripa, apanhar o
> busao ate curitiba, apanhar carona ate sao paulo, pegar uma bicicleta
> e rolar ate uberlandia e fazer o resto do percurso ate brasilia a
> pe... Se podemos apanhar o aviao de POA ate BSB directo?
> 
> A nao ser que me digam que, so pra ver as malucas em floripa torrando
> no sol, vale a pena toda a viagem por terra e mar... :-)

Acredito que a analogia não tenha relação direta com a geração de
HTML, mas mesmo assim ficou interessante de ler! ;-)

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Ressaca de ZPT

2006-12-14 Por tôpico Dorneles Treméa
Grande Hugo,

> > Cara, confesso que ainda não entendi... :-)
> 
> Meu... Pra que escrever 73 linhas de codigo para gerar uma linha
> Hello World
> 
> Se a gente pode agarrar na bosta do Hello World e colocar na
> pagina???

ah... mas aí que está! A questão é que para gerar esse hello world
simples com ZPT o código usado fica igual a fazer na mão, ou seja:

  Hello World

As coisas começam a ficar interessantes quando o conteúdo a ser
apresentado tem que ser dinâmico, onde em ZPT, como tu sabes,
bastaria alterar para:

  Hello World

Se isso fosse feito com Python puro, seria algo como:

  "%s" % contexto.getTexto()

Em DTML, deus me livre, assim:

  

Ou para ficar ainda pior... :-)

  &dtml-getTexto;

E por aí vai... Note que no caso acima temos apena o conteúdo
do parágrafo dinâmico. No caso daquelas 73 linhas, tem *muita*
coisa sendo feita no meio (imagens/links/...) e o HTML final
não fica muito longe das 73 linhas, apesar de, no browser, ela
aparecer visualmente apenas como uma linha.

Mostre esses 4 pedaços de código para um designer e peça para
ele alterar alguma coisa. No ZPT, que usa apenas um namespace
adicional, garanto que não haverá problemas, já em relação ao
resto...

Resumindo: *eu* ainda prefiro ZPT e só estou argumentando para
mostrar os motivos. É obvio que eu não preciso catequizar todo
mundo...

> > ZPT, como o nome diz, são apenas templates para gerar código HTML.
> > Esses templates, que nada mais são do que arquivos HTML com áreas de
> > marcação predefinidas, são então usados para gerar conteúdo dinâmico.
> 
> Precisamente!!! Qualquer dia temos uma porra de um PLT (Python
> Language Template) que vai gerar codigo Python...
> E a minha pergunta vai se repetir de novo... Pra que usar o PLT se
> podemos agarrar no vi e escrever Python directo???

Eu não exageraria tanto, afinal Python está intrinsicamente
relacionado à lógica da aplicação. A menos que fosse algo como
um Clipper da vida, que a propósito eu gostava muito... :-)

>> Como você geraria o mesmo HTML diretamente? Embutindo a lógica junto
>> com a apresentação, à la PHP, ou mesmo DTML? Como se usaria HTML
>> direto (ou mais direto do que com ZPT) nesse caso?
> 
> O Zope ja tem objectos muito bons pra separar logica de
> apresentacao... vide DTML Method vs DTML Document... Basta usar os
> recursos que ja temos!

Deixa eu confessar que eu já fui um super fã do DTML, sério. Levou
um bom tempinho até eu me acostumar com ZPT, mas foi um caminho sem
volta.

Hoje em dia eu pego *qualquer* ZPT feito por aí, bato o olho e já
altero o que eu preciso. De forma similar, eu bato o olho nos meus
próprios DTMLs e fico abismado com o que eu vejo... :-)

> 
> Doidas gostosas a torrar ao sol...
> 
> 
> Ou prefere escrever 73 linhas para gerar este HTML acima??? :-)

Não exagera Hugo, em situações simples como essa, praticamente
todo e qualquer método vai usar apenas *uma* linha.

Sendo sincero, a questão nem é o número de linhas, mas sim a
legibilidade e manutenabilidade da coisa, motivos pelos quais
todos nessa lista são amantes de Python.

Eu até ia converter aquelas 73 linhas para código DTML para te
mostrar que em DTML não fica melhor, mas acho que não preciso,
não é mesmo? ;-)

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Anti-spam uol.

2006-12-14 Por tôpico Dorneles Treméa
Hup!

> > cata a stchopa e prega-lhe fogo! ;-)
> 
> O prazo acabou se estendendo por bem mais que 24h, desculpem. Foi de
> trabuco mesmo! ;-)

mais um para o pelotão de fuzilamento: [EMAIL PROTECTED]

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Ressaca de ZPT

2006-12-15 Por tôpico Dorneles Treméa
Opa Castardo,

> Proponho um exercício entao!
> 
> Todos poderiam falar alguma coisa que pensam ser complicada usando ZPT e
> nos mesmos sugerimos melhorias, ou justificar a implementação ... daí
> podemos implementá-las tbm e ainda fazer exemplos de codigos em DTML,
> PHP, ASP enfim ... comparar e chegar a uma conclusão final mais sóbria
> do que essa nossa.
> 
> Acho mto mais útil e produtivo :)
> 
> Alguém topa?

temos algumas comparações entre DTML e ZPT em:

http://www.zope.org/Members/peterbe/DTML2ZPT

Daria para acrescentar mais situações, mas acredito
já ser um ótimo começo.

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Evento sem classificação

2007-01-04 Por tôpico Dorneles Treméa
Opa Thiago,

> Deixa eu estrear o ano com uma pergunta, que espero seja fácil de
> resolver. Bom fácil eu sei que não é porque já estou tentando por um tempo.
> 
> Como eu faço para não ter que selecionar o “Tipo de Evento” ? Work,
> Social Event, etc...
> 
> Detalhe, não tenho acesso ao file system :(

essa frase é algo semelhante ao paciente pedindo ao médico:

"Como eu faço para não ser operado num transplante de rim?" :-)

De qualquer forma, acredito que dê para usar uma solução
alternativa, caso você considere que a seleção de uma opção
em branco para o tipo do evento resolve o problema.

Se resolver, então siga os passos:

 - acesse o portal_metadata;
 - clique na aba Elements, depois em Subject;
 - no vocabulário do tipo Event, adicione uma nova linha com
   um espaço em branco (o espaço é importante).

Agora a opção em branco passará a aparecer quando você criar
um novo evento, basta selecionar ela.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 


Re: [zope-pt] Equipe de moderacao - Bem vindos Dorneles e Luciano

2007-01-09 Por tôpico Dorneles Treméa
[Alguns dias offline depois...]

Opa,

> Caro Hugo e outros honoráveis moderadores, muito grato pelo convite.

aproveito a oportunidade para também agradecer o convite, espero
corresponder às expectativas, sejam elas quais forem... :-)

> É muito bacana fazer parte deste grupo e ainda ter o privilégio de ser
> convidado junto com o grande Dorneles, um guru hoje reconhecido até
> nos fiordes da Noruega mas que mantém a simpatia e a simplicidade
> daquele jovem e talentoso web designer que conhecemos há não sei
> quantos anos num FISL.

Na verdade o privilégio é meu e o 'guru' fica por sua conta Ramalho,
'guri' já está mais do que bom! :-)

> Quanto a Rafahela e Jean, Marta (minha esposa) e eu estivemos no
> casamento deles em Iraí, RS, no último dia 30. Karla e Xiru também
> compareceram. Ficamos muito felizes de poder viajar os mil e poucos
> quilômetros para estar com Rafa e Jean na cerimônia e no Reveillon,
> pois são amigos para a vida inteira.
>
> Um grande abraço e um Feliz 2007 para todos os amigos da nossa comunidade!

Mais uma vez aproveitando o gancho, muitíssimas felicidades ao nosso
(agora) oficial casal 20 e um 2007 de grandes realizações para todos
nós!

-- 

Dorneles Treméa
X3ng Web Technology


Re: RES: [zope-pt] Evento sem classificação

2007-01-09 Por tôpico Dorneles Treméa
Opa Thiago,

> Se eu tivesse acesso ao file sytem, o que eu teria que fazer então para
> o ""Tipo de Evento" não ser um item obrigatório?

se for isso e *apenas* isso o que você precisaria alterar, eu nem
perderia muito tempo, alteraria diretamente o campo 'eventType'
no schema do ATContentTypes/content/event.py, removendo o 'required'
e adicionaria uma nota na documentação do projeto, para que isso não
se perdesse em futuras atualizações.

Entretanto, caso o conjunto de alterações seja algo substancial
eu já partiria para criar um novo Produto, com um tipo de conteúdo
baseado no Evento original e mais todas as customizações necessárias.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] debug??

2007-01-12 Por tôpico Dorneles Treméa
Opa Luis,

> Pessoal, alguém sabe como inicializo o Plone/Zope, no Linux, no modo
> debug??? (Plone 2.5)

vou tentar complementar o que o pessoal já falou...

Quando se fala em modo debug, duas coisas passam pela minha cabeça:

a) rodar o Zope com a flag debug ativada (o que permite alterar
pythonscripts e pagetemplates e ver os resultados diretamente
sem precisar restartar o Zope)

b) rodar o Zope e cair no prompt de debug (onde podem ser executados
comandos como se você estivesse num PDB da vida, só que dentro do
Zope, com acesso a tudo o que está no ZODB)

Para o primeiro caso, geralmente se custuma alterar o etc/zope.conf
e alterar a opção 'debug' para 'on'. O que muita gente não sabe é
que ao invés de ficar alterando sempre entre on/off dá para fazer
o seguinte para iniciar com o debug ativado, mesmo que ele esteja
desativado no zope.conf:

$ $INSTANCE_HOME/bin/zopectl fg

Para o segundo caso, o comando a ser executado é:

$ $INSTANCE_HOME/bin/zopectl debug

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Como retirar o auto r/data/hora de criação na pag. do Plone ?

2007-01-12 Por tôpico Dorneles Treméa
Opa Joao Paulo,

> Gostei dessa dica... mas por exemplo no search, eu continuo tendo que
> customizar para sumir com mensagens do tipo [100%] by jpcarusi,
> 2006-12-28 08:06
> 
> esse allowAnonymousViewAbout nao foi pensado para o search?

provavelmente ele passou em branco até agora... :-)

Abra um ticket no http://dev.plone.org/plone dessa forma você garante
que o problema *será* solucionado, ou ao menos discutido.

Essa é uma ótima oportunidade para interagir com a comunidade.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


[zope-pt] Mais um site Plone que não tem cara de Plone

2007-01-16 Por tôpico Dorneles Treméa
Opa,

esse site já apareceu 3 vezes no #plone hoje, então acho
que vale um menção aqui na lista também...

http://www.belleviewclothing.com/

A página do evento cadastrado lá ficou bala... :-)

A propósito, eles estão testando um novo produto de
commerce que ainda não está no Collective, mas que
deve ir para lá em breve, segundo o que falou o autor
do site.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Permissão recursiva

2007-01-19 Por tôpico Dorneles Treméa
Opa Samuel,

> Eu criei uma pasta privada no plone, onde somente um grupo podia
> acessá-la. Através do ftp, dentro desta pasta, criei outra.
> 
> HOME -> PASTA PRIVADA -> NOVA PASTA
> 
> O problema é que um usuário, não pertencente ao grupo (até mesmo
> anônimo), consegue acessar a subpasta criada (NOVA PASTA), via a url
> dela. Como faço aplicação recursiva das configurações da pasta raiz
> (PASTA PRIVADA) ?

este howto é exatamente o que você precisa:

http://plone.org/documentation/how-to/make-folder-hierarchy-private

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] PloneFormGen + mySQL + relações m:n

2007-01-19 Por tôpico Dorneles Treméa
Olá Paul,

> Portanto, o problema que me resta é a lógica para colocar os dados do
> formulário no mySQL. Me aconselharam a tentar o Alchemist (
> http://plone.org/products/alchemist, mas não encontrei nenhum
> tutorial :( Alguém tem experiência com esse produto?
> 
> Quero reduzir código próprio ao máximo, pois fica mais fácil manter assim :)

você pode fazer isso sem usar um produto adicional. Confere o
tutorial do próprio PloneFormGen:

http://plone.org/products/ploneformgen/documentation/tutorial/sql-crud/tutorial-all-pages

Até eu me surpreendo com a quantidade de documentação existente
no http://plone.org... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] erro "

2007-01-23 Por tôpico Dorneles Treméa
Opa Oradoriun,

> Estou tentando fazer uma simples consulta de atributos em um objeto
> simpleitem e simplesmente parece ser impossível...
> 
> Estou usando o zope 2.6.rc4 por motivos de compatibilidade de produtos.
> Vale resaltar que estou criando as classes de um python product
> manualmente, com classes de negócios de projeto e uma interface em html.
> 
> Se alguém puder ajudar agradeço desde já, e se precisar de mais código
> basta avisar.

a princípio acredito que você postou o suficiente... :-)

> As linhas que me tiram o sono são stas:
> ___
> ### Problem domain pure Python classes
> from TInstituicao import TInstituicao
> 
> ### Constructor
> 
> manage_addInstituicaoForm = DTMLFile('html/addInstituicao', globals())
> 
> def manage_addInstituicao (self, id, Nome, UnidadeEscolar,
>ModalidadeEnsino, Classificacao, Diretor, Cnpj, 
> REQUEST=None):
> """ Create Instituição and add to Destination """
> objeto = Instituicao (id, Nome, UnidadeEscolar, ModalidadeEnsino,
>   Classificacao, Diretor, Cnpj)
> self._setObject(id, objeto) #Destination().
> if REQUEST is not None:
> ### return self.Projeto_final.Projeto (self,REQUEST)
> ### return objeto.consulta(self,REQUEST)
> return objeto.consulta
> ### return self.Projeto_final.Projeto.confirmaInstituicao 
> (self,REQUEST)

Neste ponto você está retornando o método 'consulta' e *não* o que
ele retorna após ser executado, para tal, bastaria usar algo como:

    return objeto.consulta()

Ou, se você precisar da aquisição, seja para o que for:

return self[id].consulta()

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] CSS em uma página Plone

2007-01-29 Por tôpico Dorneles Treméa
Opa Paul,

> Fiz um Page Template em ZPT e gostaria de incluir um CSS específico para
> esta página.
> * Criei um DTML Method e fiz meu CSS lá.
> * Entrei em portal_css para registrar a nova folha de estilos, mas não
> estou conseguindo criar a regra de condição para que seja usado apenas
> naquela página específica.
> 
> Sem definir a condição está funcionando ok, mas alterando páginas onde
> não quero que o CSS seja aplicado.
> 
> Tentei regras do tipo:
> python:"minha_pagina" in here
> 
> Funciona, mas causa erros de TypeError em outras partes do site, como
> quando vou acessar as configurações do site.
> 
> De que outra maneira posso conseguir isso?

untested:

  python:template.getId() == 'o_nome_do_seu_template'

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] CSS em uma página Plone

2007-01-29 Por tôpico Dorneles Treméa
Paul,

> Infelizmente template não está definido nesse contexto e causa erro. :(
> 
> Tentei pegar com here.getId() mas retorna o ID da pasta...
> 
> hm, complicado isso :P

infelizmente o ResourceRegistries usa o método createExprContext
definido no CMFCore/Expression.py e este por sua vez não define
uma chave com o valor 'template'... :-(

Falei com o Florian Schulze e ele está com planos de reescrever
o ResourceRegistries para o Plone 3.0, usando viewlets e resources
do Zope3, então adicionar isso não estaria nos planos dele para a
versão atual...

Entretanto, isso não quer dizer que isso não possa ser feito...
fica meio feio, mas deve funcionar:

python:object.REQUEST.PUBLISHED.getId() == 'foo'

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] como usar vários skins

2007-01-31 Por tôpico Dorneles Treméa
Olá Jean,

> Preciso saber se há uma outra forma de alterar os skins ao clicar em
> cada pasta do site.

nesse tutorial deve ter tudo o que você precisa saber a
respeito desse assunto:

http://plone.org/documentation/tutorial/switching-skins

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Dúvidas sobre o Kupu !!!

2007-01-31 Por tôpico Dorneles Treméa
Opa Perallis,

> Seleciono a opção para vizualizar em Html no Kupu,
> faço modificações, como colocar uma cor de fonte dirente, ai quando saio
> para o modo visual do Kupu, ele me mostra as modificações corretas.
> Porém, quando clico em salvar eu perco estas modificações,
> o conteudo é o mesmo, mas a formatação não.
> 
> Eu já tentei alterar as configurações do Kupu, mas não achei nada que
> resolvesse meu problema.
> 
> Alguém tem alguma dica?

esse assunto rola com uma certa freqüência por aqui e pelas
listas internacionais também... :-)

Dá uma conferida nesse link, ele tem a solução para você:

http://plone.org/documentation/how-to/filteringhtml

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Como redimensionar o tamanho da imagem exibida

2007-01-31 Por tôpico Dorneles Treméa
Opa Luis Paulo,

> Estou exibindo fotos utilizando o seguinte código no meu template:
>  
> 
>  
> 
>  
> Mas estas imagens são exibidas no seu tamanho original. Gostaria de
> formatar isso, de forma a exibi-las todas num mesmo tamanho que eu
> definir... Alguém sabe como fazer isto??

a última mensagem do Zé Henrique resolveu a questão, mas só para
não deixar a dica do Ramalho em branco, aqui vai um adendo... :-)

Usando o método tag, a solução ficaria assim:





Você pode passar qualquer keyword no método tag que ele gera um
atributo homônimo no HTML, exceção para o 'class', que é uma
palavra reservada do Python, mas nesse caso pode ser usado o
keyword 'css_class', com o mesmo efeito.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Como pegar Link Externo armazenado num objeto Event

2007-02-01 Por tôpico Dorneles Treméa
Opa Fabio,

> Estou tentando fazer um template para gerar uma saída xml com as
> informações guardadas em um objeto do tipo Event. Eis o código:
> 
> [snipped code]
> 
> Quando eu dou "evento/Title", aparece o título do evento. Agora
> "evento/event_url" dá erro. Eu olhei lá no arquivo 'event.py' e existe
> lugares onde 'event_url' aparece. No template 'event_view' ele chama a
> Url externa como 'here/event_url'.

funciona no template pois 'event_url' é um método presente nos
objetos do tipo evento e 'here/event_url' nada mais é do que a
chamada no método event_url em here, no caso o próprio evento.

> Alguém sabe como tirar o link externo armazenado no objeto 'Event'?

Considerando que o seu código faz uma busca no catálogo e que o campo
'eventUrl' (cujo accessor é o tal event_url) presente no schema do
ATContentTypes/content/event.py não define um índice no catálogo para
este campo, você tem duas opções:

a) sendo 'evento' uma referência a um dos itens retornados pela busca
no catálogo, acessar o objeto que o item referencia e então a partir
do objeto, chamar o método accessor (event_url):

  python:evento.getObject().event_url()

b) adicionar um nova coluna de metadados (metadata) no catálog, com o
nome de 'event_url' e atualizar o catálogo, então você poderia usar
simplesmente:

  evento/event_url

Nesse caso, ele estaria acessando o atributo event_url presente no
item do catálogo que referencia o evento em questão e não o próprio
evento.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Manual de SelectionWi dget para Vocabulários

2007-02-01 Por tôpico Dorneles Treméa
Opa Fabio,

> Eu precisava de algum manual (completo) sobre SelectionWidget para
> trabalhar com vocabulários. O ArcheType seria o ATVocabularyManager ou
> outro que vocês possam recomendar. Já procurei na documentação que vem
> junto com esse Archetype e ele só ensina até uma parte e no google não
> obtive resposta satisfatória.

vocabulários não são um mistério tão grande assim... :-)

A princípio existem dois tipos básicos de vocabulários que podem
ser atribuídos a um field de um schema de um content-type qualquer:
estáticos e dinâmicos.

Os vocabulários *estáticos* são aqueles onde você passa uma relação
fixa de elementos e eles não variam. Exemplos:

a) Uma tupla/lista:
   vocabulary=('maçã', 'kiwi', 'uva')
   vocabulary=['maçã', 'kiwi', 'uva']

   Neste caso, cada valor será usados tanto para exibição na tela
   como para armazenamento.

b) Uma tupla/lista de 2-tuplas:
   vocabulary=(('0', 'maçã'), ('1', 'kiwi'), ('2', 'uva'))
   vocabulary=[('0', 'maçã'), ('1', 'kiwi'), ('2', 'uva')]

   Neste caso, o primeiro valor de cada tupla será usado no
   armazenamento e o segundo valor é o que será exibido na tela.

c) Uma DisplayList:
   vocabulary=DisplayList((
   ('0', 'maçã', 'label_maca'),
   ('1', 'kiwi', 'label_kiwi'),
   ('2', 'uva', 'label_uva'),
   ))

   Neste caso, o primeiro valor de cada tupla será usado no
   armazenamento, o terceiro valor será usado como msgid no
   processo de internacionalização (i18n) e o segundo valor
   será usado apenas se uma tradução para o terceiro valor
   não for encontrada.

Vale lembrar que os casos (a) e (b) são internamente transformados
para uma DisplayList, mas sem usar i18n (sem o terceiro valor).

O segundo tipo de vocabulário é o *dinâmico*, onde como o nome diz,
a relação dos items não é fixa, podendo ser alterada. Similarmente
aos vocabulários estáticos, os dinâmicos devem retornar um dos 3
tipos já descritos, ou seja, uma tupla/lista ou uma tupla/lista de
2-tuplas ou ainda uma DisplayList. Exemplos:

d) Uma string:
   vocabulary='getFrutasDisponiveis'

   Neste caso, o valor da string é usado como nome do método
   a ser chamado numa instância do objeto. Além de poder ser
   um método na classe, ele pode ser também um PythonScript e
   ficar dentro de uma das skins do portal.

   Um exemplo de implementação do nosso getFrutasDisponiveis
   (como um método da classe) poderia ser:

   def getFrutasDisponiveis(self, content_instance, field):
   frutas = DisplayList()
   for fruta in content_instance.listaFrutas():
   if fruta.quantidade > 0:
   frutas.add(fruta.codigo, fruta.nome)
   return frutas

   Note que o método recebe dois parâmetros, content_instance e
   field. O primeiro é a instância a partir da qual o método está
   sendo chamado e o segundo é o nome do field. Isso é útil quando
   o mesmo método é usado como vocabulário de campos diferentes.

   No exemplo, considerei que existe um método listaFrutas que nos
   retorna a relação de todas as frutas. As frutas ainda possuiriam
   3 atributos: quantidade, codigo e nome. Apenas as frutas com uma
   quantidade maior do que 0 seriam retornadas no nosso vocabulário
   dinâmico. Vale lembrar que a implementação ao invés de considerar
   objetos presentes no ZODB, poderia fazer uma chamada SQL, pegando
   a relação de frutas disponíveis em um banco de dados qualquer.

e) Uma instância de uma classe que implementa a interface IVocabulary:
   vocabulary=NamedVocabulary("frutas")

   Nesse caso, usamos a classe NamedVocabulary do ATVocacularyManager
   (ATVM) que implementa a IVocabulary. Considerei que já existe um
   vocabulário 'frutas' dentro da tool portal_vocabularies, ou seja,
   bastaria adicionar novos objetos (de um tipo de conteúdo qualquer,
   configurável) dentro daquele vocabulário para que eles se tornem
   imediatamente disponíveis.

   O ATVM é razoavelmente complexo, mas fornece alguns recursos
   interessantes, como vocabulários hierárquicos e também suporte
   ao LinguaPlone, para i18n do conteúdo.

Bom, 'resumindo' era isso... ;-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] ZPT passando variáveis/objetos po r link

2007-02-02 Por tôpico Dorneles Treméa
Olá Paul,

> Tenho uma página que mostra diversos dados que são buscados de um
> banco de dados relacional (mysql). Funciona tudo ok.
> 
> O que quero aqui, é ter um link que exporte os dados para o usuário
> abrir em uma planilha no seu computador. (já criei o python-script que
> faz isso)
> 
> Para isso, quero repassar os dados que foram buscados para criar a
> página para que o script python possa reutilizá-los, assim evitando
> precisar fazer uma segunda busca idêntica no mysql.
> 
> Como posso criar um link assim? Como são muitos dados, seria
> interessante passar sem usar o método GET, que exigiria uma construção
> muito grande no link.
> 
> Legal mesmo seria passar os objetos/variáveis criados que representam
> os resultados diretamente. Isso é possível?

eu acredito que você não precise se preocupar com essa questão de
evitar uma segunda busca idêntica no MySQL. Se não me falha a memória
tanto o MySQL quanto o conector Zope ao banco implementam mecanismos
de cache, o que faria a segunda consulta retornar instantâneamente...

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Re: [ZPT] Como pegar o caminho do objeto -1?

2007-02-07 Por tôpico Dorneles Treméa
Grande Lincoln!

> Amigão, acho que o getPhysicalPath resolve teu problema
> 
> 
> Parent
> 

dá para simplificar um pouco isso... ;-)


Parent


HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Licença

2007-02-08 Por tôpico Dorneles Treméa
Opa Jacson,

> Quando editamos um arquivo, se clicarmos na aba Propriedades, lá possui
> várias propriedades do arquivo bem como, Contribuidores, Autores, Data
> da Efetivação, Direitos Autorais e etc.
> 
> Preciso criar um portlet que sempre que o arquivo esteja sendo exibido,
> mostre no portlet ao lado, alguns destes campos como autor e direitos
> autorais.
> 
> Alguem já fez algo parecido?
> Ou tem idéia de como fazer?

é mais simples do que você imagina... :-)

Basta usar um dos portlets existentes como base e acessar o
conteúdo dos campos dessa forma:

   context/accessorDoCampoDesejado

Para saber o accessor de cada campo, basta uma sapeada pelo
Archetypes/ExtensibleMetadata.py...

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: Res: [zope-pt] PloneSoftwareCenter

2007-02-15 Por tôpico Dorneles Treméa
Opa,

> > > Baixei o PloneSoftwareCenter e instalei correntamente,
> > >
> > > Mas Quando fui adicionar um o PSC deu o seguinte erro.
> > >
> > > Tipo de Erro
> > >   AttributeError
> > >
> > > Valor do Erro
> > >@@softwarecenter_view
> > >
> > > Alguem já passou por este problema ou sabe como resove-lo.
> >
> > Teria como você passar a versão de zope e plone que você está usando
> > para a lista?
>
> Plone 2.1.3,
> Zope (Zope 2.9.6-final, python 2.4.4, linux2),
> Python 2.4.4 (#2, Oct 20 2006, 00:23:25)

eu diria que as views introduzidas recentemente[1] no PSC quebraram
a compatibilidade com o Plone 2.1. Se você tentar com o Plone 2.5,
deve funcionar corretamente.

Se precisares mesmo do Plone 2.1, talvez valha a pena tentar corrigir
o problema, ou usar uma versão anterior à adição das views.

[1] http://dev.plone.org/collective/changeset/35228

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] charset PloneChat

2007-02-15 Por tôpico Dorneles Treméa
Opa jccfilho,

> Estou usando o Plonechat e num servidor de desenvolvimento a janela
> com as mensagens aparece normal. Em outro servidor a mesma janela não
> reconhece caracteres acentuados e cedilhados. Os dois servidores
> possuem o arquivo sitecustomize.py com o charset configurado para utf-8.
> O que mais poderia ser?

interessantemente, ontem a tarde dois colegas estavam conversando
no #zope-pt a respeito disso e eles resolveram(?!?) o problema
instalando o PloneLanguageTool.

Eu não vejo como isso poderia resolver o problema, mas se você
testar e funcionar, por favor, tente isolar a causa do problema
para que possamos corrigir isso.

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] ArchGenXML - Geração incorret a de código do workflow

2007-02-15 Por tôpico Dorneles Treméa
Opa Marcon,

> Atualizei a versão do meu ArchGenXML da tag 1.5.0 do svn para a versão
> recomendada do branch 1.5 e alguns do arquivos gerados do workflow
> "indesejavelmente" são convertidos de utf-8 para iso-8859-1.
> 
> Voltando para a a versão da tag 1.5.0 é gerado corretamente, mas queria
> utilizar a última versão recomendada, que é a branch 1.5
> 
> Estou utilizando o Poseidon Professional 4.1-0 e python 2.3.4 para
> executar o AGX.
> 
> Alguém já passou por isso e tem uma dica para que não aconteça isso?

dei uma olhada rápida agora e encontrei algo suspeito, que pode
estar relacionado com a troca de encoding.

Mas pelo que eu entendi só ocorreria o contrário, ou seja, todos
os iso-8859-1 seriam convertidos para utf-8:

http://dev.plone.org/archetypes/changeset/7214

Tens certeza que os arquivos eram utf-8 e foram transformados em
iso-8859-1?

-- 

Dorneles Treméa
X3ng Web Technology


Re: Res: [zope-pt] PloneSoftwareCenter

2007-02-15 Por tôpico Dorneles Treméa
Opa Jacson,

> Mas preciso mesmo no 2.1, pois vou colocar em vários portais.

death to 2.1! :-)

> Já estamos pensando numa migração para o 2.5... Mas não agora.

Menos mal... mas se demorar muito essa decisão, vão acabar migrando
direto para o 3.0... :-D

> Qual seria o processo para corrigir o problema?

A única informação que o traceback nos dá é que a view não pode
ser encontrada. É pouco, mas já é um começo.

Tem que verificar a versão do Five e do Archetypes que estão em uso.
Lembro de ter tido problemas com uma mudança no Five em relação a
ordem da resolução durante o processo de traverse:

http://dev.plone.org/plone/ticket/5761

> E qual é a versão anterior à adição das views??

A revisão 32541, que, se não me falha a memória, é a mesma que
está rodando no plone.org.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Migrando conteúdo archetypes quebrado

2007-02-23 Por tôpico Dorneles Treméa
Opa Diego,

> Prefiro a primeira opção, rs.
> eu to fazendo o seguinte: ao instalar o produto alterado através do
> portal portal_quick_installer eu converto pela função migratePortalType
> do módulo ATContentTypes/migration/common.py .
> Existe outra forma de fazer isso melhor ? ( é apenas uma curiosidade )

existe... você pode fazer um simples alias de módulo e não
esquentar mais a cabeça... :-)

Alguma coisa parecida com isso no __init__.py do seu produto:

import sys
from Products.SeuProduto import CadastrodeFontes
sys.modules['Products.SeuProduto.Cadastro'] = CadastrodeFontes

Acho que deu para pegar a idéia.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Ser ou não ser ?

2007-03-08 Por tôpico Dorneles Treméa
Opa Joel,

> Colegas, baixei o arquivo kinterbasdb-3.2.win32-FB.1.0-py2.4.exe para
> instalar no zope que está instalado em minha máquina no sistema windows.
> Este instalador exige que a pasta c:\python24 exista.
> Acontece que o instalador coloca os arquivos do kinterb na pasta
> c:\python24, e por isso não funciona no meu zope que está em c:\zope.
> O instalador do Kinterb... não permite, na instalaçao, que a pasta
> destino seja mudada.
> Alguém já passou por este problema ? Alguma sugestão ?

ok, vamos tentar uma técnica POG aqui... :-)

Resumo da ópera: ele não instala por que a pasta 'c:\python24' não
existe e se você criar a pasta ele só instala lá, não permitindo
mudar.

Não fui atrás para ver que é que faz o empacotamento dessa extensão
no Windows, mas acredito que dê para resolver a questão simplesmente
movendo o conteúdo que for instalado no 'python do sistema', ou seja,
o que está em 'c:\python24' para o 'python do zope', ou seja, o que
estiver dentro de 'c:\zope'.

Faz o teste aí e nos diga se POG se aplica a mais esse caso... :-)

[]'s

-- 

Dorneles Treméa
X3ng Web Technology


Re: [zope-pt] Dúvida de iniciante (orei a)

2007-03-08 Por tôpico Dorneles Treméa
Opa Fred,

> Pessoal, passei um longo tempo sem mexer com PZP e voltei a mexer esses
> dias atrás, to querendo saber o seguinte.
> Tenho um z sql method que faz a pesquisa pelo id, chamo esse cara na
> page template, porém não está certo, dá erro a todo momento, pois quero
> pegar o objeto de retorno e jogar num formulário para a alteração de dados.
> Gostaria de saber se tem como eu jogar na session e buscá-la através do
> python e pegar na page template, ou fazer direto na chamada da z sql
> method na page template.

não esqueça que o resultado do ZSQLMethod é uma lista onde cada
elemento contém o conjunto dos campos envolvidos. Dessa forma,
para acessá-los num PageTemplate, bastaria algo como:

  
    

  

HTH,

-- 

Dorneles Treméa
X3ng Web Technology


[zope-pt] Re: Plone 2.5 com Zope 2.10

2007-03-21 Por tôpico Dorneles Treméa
Opa Leandro,

> Alguém sabe ou já testou se o Plone 2.5 do svn collective funciona
> bem com o Zope 2.10.2 ?
>
> Estou utilizando com Zope 2.9.6 e funciona bem, alguém ja instalou
> na versão 2.10 do Zope?

não funciona e provavelmente nem funcionará (a menos que alguém
se disponha a corrigir o que está quebrando...).

Com o Zope 2.10 só mesmo o Plone 3, que deve entrar em beta
nesse fim de semana.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



Re: Res: [zope-pt] ZopeScheduler 0.2 + Zope2.9 - Não Funciona!

2007-03-21 Por tôpico Dorneles Treméa
Opa Breno,

> [...]
> 2007-03-15T07: 44:16 WARNING Init Class Products.ZopeSchedu
> ler.ZopeSchedule r.ZopeScheduler has a security declaration for
> nonexistent method 'formatTasks'
> [...]
>
> Mas este WARNING, que apareceu no log, deixou-me preocupado, pois este
> produto, para mim, deve funcionar perfeitamente.
> 
> Caso alguém poderia me explicar este WARNING, ficarei agradecido!

esse warning é apenas um 'typo' na definição de segurança do método
'formatTask' que está sendo usado como se fosse 'formatTasks'...

Esse patch corrige o problema:

> --- ZopeScheduler.py.old2007-03-21 19:52:16.869674910 -0300
> +++ ZopeScheduler.py2007-03-21 19:52:29.434390932 -0300
> @@ -328,7 +328,7 @@
>  """ list available tasks """
>  return self._tasks.items()
>
> -security.declareProtected( ScheduleTasks, 'formatTasks' )
> +security.declareProtected( ScheduleTasks, 'formatTask' )
>  def formatTask(self, task_date):
>  """ format task properties for ZMI """
>  _minute, _hour, _dom, _dow, _month = task_date

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Attribute error allow_sorting

2007-03-21 Por tôpico Dorneles Treméa
Opa Fernando,

> Tenho em uma instância o plone 2.4 e enfrentamos um problema onde
> notícias publicadas de uma certa data para trás estão exibindo um erro
> no atributo allow_sorting.
> Customizei o referencebrowser.pt e comentei o trecho do código que
> tem uma div com condição tal:condition="field/widget/allow_sorting"
> (mais precisamente das linhas 155 à 185) e ao menos aparentemente
> solucionou meu problema. Como também tenho uma instância com plone
> 2.1.3 copiei o referencebrowser fiz um teste e obtive o mesmo resultado.
> Gostaria de saber se a "solução" encontrada corrige meu problema
> sem efeitos colaterais ou se existe uma solução mais indicada para
> esse caso

isso foi corrigido no ATReferenceBrowserWidget há 10 meses atrás:

http://dev.plone.org/archetypes/changeset/6576

Está na hora de atualizar os seu produtos... ;-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Vulnerabilidade ZOPE

2007-03-21 Por tôpico Dorneles Treméa
Opa Tom,

> foi anunciado um hotfix para zope devido a vulnerabilidade de segurança.
> Postado na lista internacional:
> http://www.zope.org/Products/Zope/Hotfix-2007-03-20/announcement

o Limi pediu e a PloneSolutions 'cedeu' o Martijn Pieters (MJ no
#plone) para corrigir o problema... :-)

Ele passou a segunda inteira em cima disso e de acordo com suas
palavras:

"I had fun with decorators, decorator factories, nested namespaces
and exec, code generation, and ZopeTestCase functional tests..."

Nada mal... poderia até ser incluído como o 34º nível do Python
Challenge[1]... :-D

[1] http://pythonchallenge.com/

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Ubuntu troca Plone por Drupal

2007-03-21 Por tôpico Dorneles Treméa
Opa,

> |No final do post, o Matt Nuzum diz que escolheram Drupal para o novo
> |site do Ubuntu, que já está no ar. [2]
> |
> |Peguei a notícia na lista plone-dev, onde o John Stahl (organizador da
> |PloneConf 2006), postou perguntando se alguém sabia o que se passou
> |[3]
> |
> |O Wiggy respondeu dizendo que na época em que ocorreram os problemas o
> |pessoal do Ubuntu disse para ele que simplesmente não tinham nenhum
> |expert em Plone na equipe, e por isso decidiram abandonar a
> |plataforma.
> 
> Bom, li a thread em plone-dev até o ponto em que Justizin foi ameaçado
> de ser banido por uso de linguagem de baixo calão e ataques a Canonical.

hehehe... ele vai ser a primeira figura a ser banida duas vezes das
listas do Plone... :-)

> Segundo o Limi, a escolha do Plone (pela Canonical) sempre foi temporaria.
> Na época serviu para apagar um incêndio usando Plone 2.0 e com a ajuda
> do próprio Limi.

Exato e isso ainda na metade de 2004, pouco antes da Plone Conference
em Viena. Foi um período de 2 ou 3 meses onde o Limi passava 2 semanas
em Londres ajudando a Cononical e um fim de semana em casa...

Logo após a conferência tiramos uns 30 quilos de lixo da sala da casa
dele para podermos fazer um mini-sprint por lá... :-)

> Em suma, aparentemente não houve nenhum demérito específico para o Plone,
> apenas uma decisão estratégica interna da Canonical de escolher ferramentas
> cuja equipe interna já domina.

Vale lembrar também que no anúncio eles falam sobre a troca do Moin
Moin pelo Drupal, afinal o Plone já saiu de lá a muito tempo...

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Dúvida para adicionar conteúdos

2007-03-21 Por tôpico Dorneles Treméa
Opa Luis Paulo,

> Mas ainda não resolvi (nem consigo entender) o por quê do Plone não me
> permitir que um anônimo adicione um conteúdo, mesmo depois que lhe dou
> as devidas permissões!! Seria algum erro do Plone?

dá uma lida nesses dois documentos, se ainda tiveres dúvida depois
disso, manda um outro email para a lista:

http://plone.org/documentation/how-to/allowing-anonymous-users-to-add-content
http://plone.org/documentation/tutorial/anonymously-adding-custom-content-types-with-argouml-and-archgenxml/anonymous-content-submission

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: escopo do admin

2007-03-21 Por tôpico Dorneles Treméa
Luis Paulo,

> Sobre a permissão de usuários, com o privilégio de admin, eu não teria
> acesso a TUDO o que está no portal Plone?? Surgiu esta dúvida quando um
> admin criou um fórum e eu, que tb tenho permissão de admin, não pude
> alterar o status do fórum para publicado...Somente quem o criou pode
> alterar...Pq?

considerando que 'privilégios de admin' é o mesmo que ter o role
Manager, nada impede que em algum estado do workflow que o tipo
de conteúdo estiver usando (por exemplo, o estado 'visible' do
folder_workflow) restrinja alguma permissão para esse role.

Então, para aquele estado específico (visible) mesmo usuários
como o role Manager não teria a permissão que lhe foi retirada.

Além disso, algumas transições entre estados podem verificar se
o usuário atual possui um role específico e só então permitir
que a transição seja executada. Se o usuário possuir Manager e
a 'guarda' estiver sendo feita para usuários com o role Moderator
então a transição não será exibida para o usuário com Manager.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Template do Form Gen!

2007-03-21 Por tôpico Dorneles Treméa
Opa Jacson,

> Sobre o PloneFormGen.
> Criei um formulario, e escolhi salvar o Formulario em um SaveDataAdapter.
> O que quero fazer é criar um template que exiba os dados salvo no
> SaveDataAdapter.
> O que o SaveDataAdapter faz é gerar um arquivo CSV.
> 
> O que quero é mostrar os dados tabulados numa página no proprio Plone!
> 
> Não sei como acesso os valores salvos nele.?
> 
> Alguem tem alguma dica pra dar?

eu não fazia a menor idéia, mas dei uma olhada agora no
PloneFormGen/content/saveDataAdapter.py e lá tem um método
que pode ser muito útil: InputAsDictionaries.

Dessa forma, basta que o seu PageTemplate use algo da seguinte
forma para exibir todos os dados salvos:


  
  
  
  


HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Horário Incorreto

2007-03-23 Por tôpico Dorneles Treméa
Opa,

> Estou com um problema: o horário mostrado nos conteúdos do plone está
> com 3 horas de defasagem. O horário do servidor está correto. O
> engraçado é que o horário na ZMI aparece corretamente. Até mesmo as
> informações de histórico de mudanças de estado aparecem com os horários
> corretos.
> 
> Isso começou a acontecer depois que houve uma atualização acidental do
> zope para a versão 2.9.6.
> 
> Alguém tem alguma idéia do que pode ser isso?

caraca, só eu já respondi isso meia dúzia de vezes nessa
semana... :-(

http://thread.gmane.org/gmane.comp.web.zope.plone.setup/1929

A propósito, essa 'atualização automática' foi em qual distro?

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: ZODB Pack KeyError

2007-03-29 Por tôpico Dorneles Treméa
Opa Fabricio,

> Python 2.4
> Zope 2.9.6
> Plone 2.5.1
> Cluster:
> 14 Instancias Zope
> 02 Zeo Servers
> 04 Arquivos Data.fs, 2 em cada Zeo Server

a UCS parece estar levando a sério esse tal de Zope hein? :-)

> Hoje quando fui rodar o Pack em um Data.fs ele retornou o seguinte erro
> para mim:
>
> [snipped traceback]
> 
> Alguma dica do que está acontecendo? Esse problema foi enc ontrado em
> outro Data.fs, no mesmo servidor.

Uma dica seria usar o Zope/bin/fsrefs.py para verificar onde o
bicho pega e/ou o Zope/lib/python/ZODB/fsrecover.py para ver se
ele resolve.

Interessantemente, teve algo bem parecido com isso recentemente:

http://www.nabble.com/KeyError---POSKeyError-t3454779.html

Nessa thread, o Dieter dá mais alguns conselhos (black magic,
mas está valendo...), tem um que pode ajudar também do Laurence
Rowe.

Se tudo der errado, poste o seu traceback naquela thread com
os resultados que você obteve com os scripts acima que com
certeza o povo acha o furo da bala... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: ZODB Pack KeyError

2007-03-31 Por tôpico Dorneles Treméa
Opa Fabricio,

> Muito a sério mesmo, esse projeto tem 9 máquinas no Cluster, todas
> máquinas de alto desempenho, com Alta Disponibilidade, mesmo no Zeo,
> sem o software pago da Zope. :)

parece um case e tanto, não esqueçam de divulgar depois de concluído,
afinal isso dá um ótimo crédito ao Zope/Plone e a vocês, claro.

> Valeu pelas dicas, mas o furo foi um pouco mais em baixo.
> 
> Tenho aula com o Sidnei na quinta de noite, e aproveitei e falei com ele. :)

Hehehe, a pessoa certa, no lugar certo, na hora certa... difícil
disso acontecer. Mais impressionante é que esse cara certo ainda
não concluiu sua a graduação, um fenômeno!

> Mechendo, vendo os logs e vendo a nossa estrutura acabamos descobrindo
> que o problema é referencia cruzada entre Data.fs, como nós usamos um
> Data.fs para o portal, e 2 Moint Points dentro, 1 para histórico e 1
> para material, houve, não sei como uma referencia entre arquivos destes
> Moint Points. O Pack usa a classe serialize.py e la dentro
> 'n'(Multi-database reference) é tratada como referencia fraca, e
> ignorada, mas acaba estorando quando se dá um Pack.
> E se eu der um Pack no Data.fs do material, vou ter um PosKeyError e
> perco os objetos do Data.fs histórico.

Eu li a thread do Sid com o J1m... incrível que isso está quebrado
desde sempre! Incrível também como o problema se manifestou em dois
lugares diferentes quase ao mesmo tempo, depois de tantos anos...

> Já foi disparado um e-mail para zope-dev, o Sidnei e o Jim estão vendo
> como tratar isso, talvez ampliando o Pack para que ele possa ser entre
> Data.fs, ou melhorando o produto Mount Point, ou criando um patch de
> correção para essas referencias cruzadas.

É muito possível que o Sid corrija isso ainda no fim de semana, só
para dar mais uma estucadinha no J1m... ;-)

> O fsrecovery.py não faz nada.
> O fsrefs.py acusa mais de 300 obj, quando o problema foi só em 4 obj.

Uma possibilidade é que sejam 300 versões(!) anteriores dos tais 4
objetos, mas dicífil de afirmar...

[]'s

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Eventos javascript (onchange) no SelectionWidget

2007-04-06 Por tôpico Dorneles Treméa
Opa Leonardo,

> Opa Wesley, pois eu estou tendo que customizar o meu edit mesmo, preciso
> deste evento por causa do ajax. Mais a minha duvida era se tinha como
> colocar dentro do meu widget do meu AT, entendeu?
> tipo:
> 
> StringField(
> name='meuAT',
> index="FieldIndex",
> serchable="1",
> required=1,
> vocabulary='getMeusValores',
> enforceVocabulary=1,
> widget=SelectionWidget(
> label="Valores Qualquer",
> description="Informe o(s) valores.",
> attributes={"onchange"="listaSubValores()"},
> format="select",
> i18n_domain='QUALQUER',
> )
> ),
> 
> Mais em quanto eu nao achei esta solução eu implementei isto dentro do
> meu edit mesmo.

dá uma olhada nessa thread da plone-dev de novembro passado:

http://thread.gmane.org/gmane.comp.web.zope.plone.devel/13239

Ele referencia outra thread, na at-general, ainda mais antiga:

http://thread.gmane.org/gmane.comp.web.zope.plone.archetypes.general/228

Resumindo: a idéia é velha, tem gente interessada nisso, mas ninguém
nunca parou para polir o código existente e integrar no Archetypes.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Re: Guard Expression no WorkFlow

2007-04-06 Por tôpico Dorneles Treméa
Opa Renato,

> Tenho uma transicao do workflow com guard:expression que retorna False.
> Os usuário normais não conseguem vê-la pelo portal (o que está correto)
> mas o manager consegue. Alguém sabe por quê ?
> 
> OBS: Estou com o plone 2.1.2, zope 2.8.5 e python 2.3.5

tirado do DCWorkflow/Guard.py do CMF 1.5.x:

 47 def check(self, sm, wf_def, ob, **kw):
 48 """Checks conditions in this guard.
 49 """
 50 u_roles = None
 51 if wf_def.manager_bypass:
 52 # Possibly bypass.
 53 u_roles = sm.getUser().getRolesInContext(ob)
 54 if 'Manager' in u_roles:
 55 return 1

Ou seja, caso a opção "'Manager' role bypasses guards" esteja marcada
no seu workflow dentro do portal_workflow, então as restrições não
valem para quem tem o role Manager. Dá uma conferida.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology



[zope-pt] Proxy Roles (era Re: Métodos Públicos e Privados)

2007-04-26 Por tôpico Dorneles Treméa
Opa Luis Paulo,

> Ainda não consegui sanar este problema... Alguém sabe de algum bom
> material de estudo que fale sobre como trabalhar com estes proxy roles e
> chamadas de scripts python a partir do meu template?
>  
> Fiz um script contendo apenas isto:
>  
> from Products.CMFPlone import MembershipTool
> return context.listMemberIds(self)
>  
> Daí eu teria que chamá-lo do template e alterar o proxy role, correto?

hum... está muito estranho esse script... ao invés de importar
o MembershipTool e não usar ele para nada, tu poderias usar algo
como:

  return context.portal_membership.listMemberIds()

Uma vez que o objeto portal_membership é uma instância da classe
Products.CMFPlone.MembershipTool.MembershipTool.

Além disso, o portal_membership pode ser pego com o getToolByName,
se quiseres.

> Queria saber se tem alguma função já pronta que altere pra mim o proxy
> role de exucucao deste script..

Isso é mais simples do que parece...

Supondo que o seu_script.py já esteja dentro de algum lugar do
diretório skins do seu produto, basta criar um arquivo com o nome
seu_script.py.metadata, no mesmo diretório, contendo:

  [default]
  proxy = Manager

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



Re: Res: [zope-pt] tradução de error_re quired no Plone 2.5

2007-05-01 Por tôpico Dorneles Treméa
[ Dois meses depois... ]

Opa Ivo,

> > Quando crio um plone site padrão no plone 2.5, ao inserir um archetype
> > qualquer (arquivo, por exemplo), deixando um campo obrigatório vazio, a
> > mensagem "Arquivo is required, please correct." não está vindo
> > traduzida, já a mensagem do portal_status_ message vem traduzida ( Favor
> > corrigir os erros indicados.).
> > Testei no Plone 2.1.2 e funciona.
> > 
> > Esta é uma falha do 2.5? Já testei também no 2.5.1 e 2.5.2, também não
> > traduz.
> > 
> > Detalhe: no plone 2.1.2, existe um arquivo i18n com a chave (msgid)
> > "error_required" , já no 2.5 não existe. Acrescentei tal chave no
> > arquivo Archetypes-pt- br.po mas mesmo assim não traduz.
>
> Achei o erro.
> 
> No arquivo \Archetypes\Field.py tem uma função validate_required que
> chama um método translate do arquivo \Archetypes\generation\i18n.py,
> cujo domain utilizado é "archetypes". Só que não existe nenhum arquivo
> i18n com esse domain.
> Portanto, basta criar um arquivo i18n com o domain archetypes e
> adicionar a tradução para o msgid error_required.

só para deixar um registro: o problema é antigo... ele aconteceu
quando os arquivos de i18n do Archetypes foram movidos para o
produto PloneTranslations.

Naquela ocasião, que completa dois anos em duas semanas, foi
esquecido de alterar o Archetypes em alguns lugares para usar
apenas o domínio 'plone'.

Nos últimos meses, alguns commits corrigiram aos poucos estes
pequenos probleminhas que ficaram ocultos durante todo esse
tempo:

http://dev.plone.org/archetypes/changeset/
http://dev.plone.org/archetypes/changeset/7376
http://dev.plone.org/archetypes/changeset/7994
http://dev.plone.org/archetypes/changeset/7923
http://dev.plone.org/archetypes/changeset/7996

Em particular, o ante-penúltimo commit feito na semana passada
que corrige o msgid error_required desta thread, e os 2 últimos,
feitos alguns minutos atrás que corrigem a última ocorrência e
fazem o backport das correções para o branch usado no Plone 2.5.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com


[zope-pt] Re: Busca sem um path específico

2007-05-16 Por tôpico Dorneles Treméa
Opa,

> |Blz.. funciona legal na console, tanto meu teste abaixo[1] quanto a
> |sugestão do Senra. Só que no script python dá os respectivos erros:
> |
> |b) global name 'set' is not defined
> 
> o lance é o seguinte. Para permitir o uso do módulo no Zope,
> vc pode adicionar o código abaixo a qualquer produto.
> Ou até mesmo criar um produto encarregado apenas da autorização.

lembrando que a partir do (ainda distante) Zope 2.11, o módulo
sets já estará liberado por padrão:

http://www.zope.org/Collectors/Zope/1918
http://svn.zope.org/Zope/trunk/lib/python/RestrictedPython/Utilities.py?rev=72009&r1=71997&r2=72009

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Alterando "Próximos ítens"

2007-05-16 Por tôpico Dorneles Treméa
Oi Bruna,

> Opa... consegui.
> Não mexi na Instancia, mas mexi em:
> plone_templates/batch_macros
> 
> é o arquivo que gera essa opção das páginas.
> 
> Aqui não temos acesso à instalação. Tive que mudar direto no
> template... quem tiver o mesmo problema, aí esta o caminho.

não exatamente... o caminho é sempre corrigir na origem, nada
de tentar dar um 'jeitinho' no problema... ;-)

Entendo que no seu caso você não tinha acesso ao sistema de
arquivos, para poder alterar diretamente o produto, então
tiveste que fazer dessa forma.

Entretanto, depois disso poderias ter criado um novo ticket
no bug tracker para que o problema fosse corrigido direto
no PloneTranslations. Ok, esse seu e-mail para a lista também
tem valor, porém o correto mesmo é criar o ticket, pois muitas
mensagens para as listas se perdem (o pessoal lê e esquece),
mas os tickets ficam registrados para sempre, mesmo depois de
fechados...

O que eu quero dizer com isso tudo? Muitas vezes a gente tenta
resolver o problema da forma mais rápida no momento, mas com
isso a gente acaba esbarrando no mesmo problema no futuro, e
em função de não ter resolvido da forma certa desde o início,
acabamos perdendo ainda mais tempo...

Se você quisesse acumular alguns 'karma points', também poderia
ter anexado um patch! :-)

> O ruim é que fica sem tradução... mas...

Ah... e só complementando, na verdade 'ítens' estava sendo
empregado incorretamente em 45 lugares, mas agora isso já
está resolvido:

http://dev.plone.org/collective/changeset/42217

O resto da tradução vem em breve... ;-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Problemas de permissão/acesso

2007-06-15 Por tôpico Dorneles Treméa
Opa Alexandre,

> Bom esse é o problema mais esquisito que eu ja vi em PZP! é o seguinte:
> Tenho um site em Plone com as seguintes configuracoes:
> Python 2.5
> Zope 2.9.5
> Plone 2.5.1

o Python 2.5 está estranho nessa lista... pois o Zope 2.9.x ainda
não tem suporte a essa versão.

> O que acontece é que o cliente ficou sabendo que um jornal local
> estava conseguindo visualizar a edição de noticias mesmo sem estar
> logado! Detalhe: ninguem nunca logou la!

Será? :-)

> Porém nao consigo reprodizir essa situação porque ao tentar acessar a
> opcao digitando /edit na url da noticia o plone nega pedindo login e
> senha oq eh o natural.
> 
> Fui ate esse jornal (a pedido do cliente) e constatei realemente o
> problema, em todos os computadores do jornal nao esta pedindo login e
> senha e exibe a tela de edição, porem nao consegue salvar nenhuma
> alteracao. Em alguns casos ao clicar na notícia era redirecionado
> diretamente para página de edicao!

Isso está me cheirando a um cache agressivo de mais lá na rede
do tal jornal...

Eu apostaria que alguém logou no site a partir da rede do jornal
e editou alguns conteúdos normalmente. Agora, quando os tais
conteúdos tentam ser acessados, o que está sendo exibido é a
página local de cache e não a que está no site.

Um teste simples ajuda a comprovar/refutar essa minha teoria:
fora da rede do jornal, crie um conteúdo novo ou edite qualquer
um dos existentes. Depois volte ao jornal e tente acessar esse
mesmo conteúdo novamente. Tenho certeza que:

a) caso tenhas criado um novo conteúdo, a tela de autenticação
será exibida;

b) caso tenhas editado um dos conteúdos existentes, provavelmente
o que será exibido é a versão anterior à sua edição, isso caso
ela havia sido acessada e cacheada anteriormente, senão o que vai
aparece é a tela de autenticação também.

> Esse detalhe é que esta me pertubando o juízo: somente nos
> computadores desse jornal que esta acontecendo isso! Já testei em
> vários outros computadores com vários browsers diferentes e nenhuma
> vez aconteceu o mesmo que lá.
> 
> O que vcs acham? será problema nos computadores ou é uma falha de
> seguranca no zope/plone?

Provavelmente é apenas alguma configuração incorreta de cache,
já vi isso acontecendo antes... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Relevância (era: Re: SlideShow)

2007-06-15 Por tôpico Dorneles Treméa
Opa Cleber, Natalia, povo,

> > Oi Cleber, agora deu certo! Muito Obrigada...
> > e parabéns pelo produto.
>
> Uffa :D
> 
> Bem, qualquer dúvida posta ai ;)

aproveitando que o assunto chegou ao fim, gostaria de pedir
a todos, que nas próximas vezes fosse usado um pouco mais de
bom senso na hora de responder as mensagens... :-)

Sério, receber uma mensagem com 2554 linhas de texto, onde
apenas 4 delas são relevantes é meio complicado... :-(

Responder um e-mail não é apenas escrever o que você quer,
exige limpar as partes que são irrelevantes para deixar
mais claro o que se quer dizer e evitar o desperdício
desnecessário de bytes e de tempo para ler a mensagem... ;-)

Fica o toque...

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Z2.log / Data.fs

2007-10-02 Por tôpico Dorneles Treméa
Opa,

> > 1 - Alguém sabe como zerar o z2.log?
> 
> cat /dev/null > Z2.log

ou mais simples ainda: '>Z2.log'... :-)

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Bug Eventos Plone 2.5.3

2007-10-19 Por tôpico Dorneles Treméa
Opa Davi,

> Pessoal, encontrei um bug tão simples que queria que alguém me
> confirmasse.
> 
> Ao adicionar um item Evento, o que insiro como "nome dos
> participantes" é exibido na VIEW como "contato", enquanto o campo
> "nome do contato" aparece em "nome", abaixo de "onde". Por sua vez o
> que aparece em "nome" deveria aparecer em "o que", que é justamente o
> Título do evento!

ou alguém já customizou o template ou você está fazendo uma
tremenda confusão... :-)

Se você preencheu todos os campos, essa é a ordem que aparece
na tabela que mostra o resumo de um evento e os respectivos
campos de onde vem o conteúdo:

o que: 
quando: 
onde: 
nome do contato: 
e-mail do contato: 
telefone do contato: 
participantes: 

O título, a descrição, texto e a url já aparecem no corpo do
evento, então não estão naquela tabela.

> Que bagunça!

Pergunta: o que você acha que está errado?

> Como posso arrumar isso?

Mesmo assim, se você quiser mudar algo, basta customizar o
template: plone_content/event_view.pt

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Bug Eventos Plone 2.5.3

2007-10-20 Por tôpico Dorneles Treméa
Opa Davi,

> Desculpe, não fui claro o suficiente, mas o bug existe!
> 
> No div class=eventDetails, o campo "o que" refere-se ao tipo do evento
> e este é adicionado via palavras-chave. Descobri isso pq vc falou
> "convencao, reuniao etc" e como eu nunca vi isso no Plone deduzi q
> podiam ser palavras-chave. Realmente seria descabido repetir o título.
> 
> Já o campo "nome do contato" é reduzido para "nome", o q gera uma
> inconsistência taxonômica daí eu não entendi que se referia ao nome
> dos contatos - falha minha tb. É um bug de usabilidade.
> 
> E o bug mesmo é q existe um campo "contatos" quando deveria ler
> "participantes", pois é essa a informação q ele apresenta. Incrível
> ter passado, faça um teste!

aí é que está... eu testei! :-)

Mas descobri o porquê de ter funcionado para mim e não para você.

No Plone 2.5.3, que você está usando, a versão do PloneTranslations
era a 3.0.2[1] e realmente a tradução[2] não estava fechando muito
bem... :-/

Porém, isso foi corrigido[3] no PloneTranslations a partir da
versão 3.0.3. Eu havia testado com o Plone 2.5.4, que inclui a
versão 3.0.6[4], já com as correções.

> Vou tentar corrigir no meu event_view

Na verdade tudo que que você precisa fazer é instalar uma versão
do PloneTranslations que seja mais recente que a 3.0.2:

http://plone.org/products/plonetranslations/releases

Outra possível solução é apenas substituir o arquivo da tradução
em pt-br[5]... :-)

Então fica a dica, sempre teste com as versões mais recentes
antes de reportar um possível problema, pois a possibilidade
de ele já ter sido corrigido é grande... :-)

[1]
http://dev.plone.org/plone/browser/Installers/dist_plone/tags/2.5.3/platforms/independent.py
[2]
http://dev.plone.org/collective/browser/PloneTranslations/tags/3.0.2/i18n/plone-pt-br.po#L1871
[3] http://dev.plone.org/collective/changeset/45515
[4]
http://dev.plone.org/plone/browser/Installers/dist_plone/tags/2.5.4-2/platforms/independent.py
[5]
http://dev.plone.org/collective/browser/PloneTranslations/trunk/i18n/plone-pt-br.po

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Exclusão de usuário.

2007-10-20 Por tôpico Dorneles Treméa
Opa Sandro,

> estou tendo um problema com exclusão de usuários num portal que desenvolvo:
> 
> Se o criador de um Grupo for excluído, todos os outros usuários
> membros deste grupo recebem "Insufficient Privileges" quando tentam
> acessar o GroupArea do grupo excluído.
> 
> Já tentei atribuir o Owner do grupo para outro usuário, mas, ainda
> assim, ninguém mais acessa a área deste grupo.

esse é um problema antigo do Zope, inclusive foi abordado na palestra
do Stefan Holek na conferência do ano passado, Top 20 Plone Pitfalls:

http://plone.org/events/conferences/seattle-2006/presentations/top-twenty-plone-pitfalls.pdf

Existe uma PLIP discutindo isso, a fim de futuramente incluir
algo no Plone para que a coisa certa seja feita quando for
necessário excluir usuários:

http://plone.org/products/plone/roadmap/185

Para resolver o seu problema, você pode fazer o seguinte, logado com
o usuário que vai ser o novo dono dos objetos, via ZMI:

a) localize o objeto que tenha sido criado pelo usuário que foi
removido

b) clique na aba 'Security'

c) clique em 'local roles'

d) remova o role 'Owner' do usuário antigo, caso ele ainda apareça

e) adicione o role 'Owner' para o seu usuário

f) clique na aba 'Ownership'

g) clique no botão 'Take ownership'

Isso deve resolver... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Deja vu Plonista

2007-10-22 Por tôpico Dorneles Treméa
Opa Jean,

> Agora as coisas já aconteceram, não voltarão. Por isso discordo de você
> com relação ao fork, às vezes é uma solução plausível, desde que hajam
> pessoas interessadas por esta nova direção.

IMHO, o trabalho para manter um fork do Plone vai ser muito *pior* do
que o parto que costuma ser uma migração... :-/

No momento, pode parecer simples ir mantendo esse fork, mas quando
alguém tiver a brilhante idéia, ou pior, a *necessidade* de usar algo
que só funcione no Plone 3.x, então tudo vai ir por água abaixo.

A resposta será simplesmente: 'não pode ser usado pois isso não é
compatível com a nosso fork'. Talvez funcione nas primeiras vezes,
mas duvido que por muito tempo.

Só espero que todo o trabalho para manter o fork não esteja apenas
no teu colo Jean! ;-)

[]'s

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Plone 3.0 em livro...

2007-10-22 Por tôpico Dorneles Treméa
Opa Robson,

> Vi que foi lançado o tão esperado livro "Professional Plone
> Development" de Martin Aspeli, que fala só tudo sobre o Plone 3.0.
> 
> Alguém tem alguma idéia se já tem algum lugar do Brasil que o venda?

para a venda direta no Brazil ainda não está disponível, mas podes
comprar pelo site da editora[1] ou ainda pela Amazon[2].

Com o Real super valorizado e sem os impostos de importaçãp, com
certeza vale a pena.

Pela entrega normal, em pouco mais de uma semana o livro chega na
sua porta.

[1] http://www.packtpub.com/Professional-Plone-web-applications-CMS/book
[2]
http://www.amazon.com/Professional-Plone-Development-Martin-Aspeli/dp/1847191983

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Plone 3.0 em livro...

2007-10-22 Por tôpico Dorneles Treméa
Ops...

> para a venda direta no Brazil...
 ^^
é a força do hábito, sorry... :-/

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Problemas com Horário de Verão

2007-10-25 Por tôpico Dorneles Treméa
Fala Marcon,

> Utilizo a combinação Zope-2.9.6 e Plone 2.5.3 bundle, revisão 12939.
> A um tempo atrás, observamos um problema na data do plone, onde a hora
> estava sendo adicionada de 3, ou seja, nosso fuso não era reconhecido,
> estava como GMT-0. Googleando encontrei esta thread[1] e foi resolvido.
> 
> Hoje observamos um comportamento muito estranho sobre a informação da
> hora no plone, ele está adicionando uma hora a mais que o horário normal
> de verão(está em GMT-1), porém na ZMI é exibida a hora correta.
> 
> Alguém tem alguma dica?

interessante, semana passada eu havia comentado com o Sidnei que
esse havia sido o único ano que não tinha dado problema com o
horário de verão no Zope da UCS... :-P

Buenas, vamos ver se é o mesmo problema dos outros anos, faz o
seguinte, usando o python do Zope:

>>> import time
>>> time.tzname
('BRT', 'BRST')

Se no teu caso aparecer ('BRT', 'BRT') é porque o Python não está
conseguindo reconhecer/identificar o horário de verão.

Detalhe, mesmo que outras partes do sistema já reconheçam o BRST,
pode ser que o Python não reconheça em função de alguma pequena
inconsistência no arquivo .zic que gerou a zona.

Num sistema Debian-like (como o Ubuntu, por exemplo) basta instalar
o pacote 'tz-brasil', que ele atualiza o arquivo da timezone.

Em outros sistemas, basta seguir as instruções do alerta do CAIS:

http://www.rnp.br/cais/alertas/2007/cais-alr-20071005.html

Se não for nada disso, então é um novo problema que eu ainda não
tinha visto... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Dicionario

2007-10-30 Por tôpico Dorneles Treméa
Opa Bruno,

> Estou tentando mudar o nome q aparece quando se faz uma pesquisa na
> busca rapida.
> Criei e modifiquei o arquivo livesearch_reply do meu produto.
> Criei um arquivo dicionario para meu produto chamado modelo-pt-br.po.
> Quando vou testar o zope sempre dar preferencia para o arquivo
> plone-pt-br.po que esta na pasta PloneTranslations.
> Alguem sabe onde alterar a ordem de prioridades ou tem uma nova ideia !!!

tu podes criar uma pasta $INSTANCE_HOME/i18n e colocar o teu
.po nela, pois o que estiver nela têm precedência sobre os
outros catálogos.

O seguinte comentário foi extraído do arquivo
PlacelessTranslationService/PlacelessTranslationService.py
e confirma isso:

# move global catalogs to the beginning to allow overwriting
# message ids by placing a po file in INSTANCE_HOME/i18n

Para o Plone 3 está sendo preparado uma funcionalidade onde
você poderá customizar uma tradução pela interface do Plone
mesmo, sem precisar ter acesso aos sistema de arquivos.

Isso está sendo feito em:

http://dev.plone.org/plone/browser/plone.app.i18n/branches/barcelona-sprint

Além disso, existe um backport disso para funcionar a partir
do Plone 2.5. que recebeu o nome de CustomizableTranslations:

http://dev.plone.org/collective/browser/CustomizableTranslations/trunk

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Tentando copiar um Plone Site..

2007-10-30 Por tôpico Dorneles Treméa
Opa Bruna,

> estou tentando copiar um Plone Site e dá p seguinte erro:
> 
> "Site Error
> 
> An error was encountered while publishing this resource.
> 
> Error Type: AttributeError
> Error Value: _cloned_object_path"
> 
> Já tentei copiar pra dentro de uma pasta, pra dentro de outro Plone
> Site.. enfim..
> 
> alguém uma idéia do que mais o que posso fazer?

o Tom já comentou, existe uma porção de referências a esse erro
no Google, mas eu começaria tentando o seguinte:

a) caso o Plone site tenha sido importado na instância do Zope
atual ou caso ele tenha sido atualizado no sistema de arquivos,
você precisa migrar o site (portal_migrations) antes de tentar
copiá-lo.

b) se o item anterior não adiantou, dê uma olhada nesse ticket:
http://dev.plone.org/plone/ticket/3875

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: i18n e metadata

2007-10-30 Por tôpico Dorneles Treméa
Opa,

> sou iniciante no ZOPE e estou com 2 problemas que parecem ser muito
> simples. Vejam se vcs podem me ajudar:
> 1) Tenho um arquivo teste.po dentro de um produto mas mesmo que mude o
> para i18n:domain="teste", o site continua a utilizar o .po padrão do
> PloneTranslations.

dá uma olhada na outra mensagem que eu respondi agora a pouco... ;-)

> 2) Uso de acentos em arquivos .metadata. Quando uso acento em
> arquivos.metadata, não reconhece dentro do ZOPE.

Certifique-se que o .metadata esteja codificado em UTF-8. Isso deve
resolver.

> "Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO),
> empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é
> enviada exclusivamente a seu destinatário e pode conter informações
> confidenciais, protegidas por sigilo profissional. Sua utilização
> desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a
> recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente,
> esclarecendo o equívoco."
> 
> "This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) --
> a government company established under Brazilian law (5.615/70) -- is
> directed exclusively to its addressee and may contain confidential data,
> protected under professional secrecy rules. Its unauthorized use is
> illegal and may subject the transgressor to the law's penalties. If
> you're not the addressee, please send it back, elucidating the failure."

Hum... Luis, esse disclaimer é completamente desnecessário para
qualquer mensagem enviada a uma lista de discussões pública... :-/

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: i18n e metadata

2007-10-31 Por tôpico Dorneles Treméa
Opa Gustavo,

> Precisamente Luis.
> Mas de qq forma mudei pro gmail que é mais fácil para meu gerenciamento.

ouch... o SERPRO tem *ótimas* iniciativas, mas também tem horas que
ele parece um dinossauro perdido no mundo dos Jetsons... :-/

> E em relação a dúvida: Vi o outro e-mail. Já possuía um arquivo
> "produto-pt-br.po" no meu produto como vocè sugeriu mas apesar de
> aparecer listado no Placeless Translations, ele não é reconhecido pelos
> scripts. Está usando sempre o do PloneTranslations.

Hum... você leu muito rápido a minha mensagem... :-)

O que eu disse é que os .POs que estiverem em $INSTANCE_HOME/i18n
tem precedência.

Note que essa pasta por padrão não existe numa instalação normal
do Zope. Ela precisaria ser criada no mesmo diretório onde existe
as pastas 'Products', 'bin', 'etc', ... mais claro agora?

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Macros de Configuração

2007-12-16 Por tôpico Dorneles Treméa
Opa Marcelo,

> Gostaria de saber se no zope/plone é possível fazer com que as
> configurações feitas diretamente na interface web de gerenciamento
> podem ser armazenadas em macros, ou seja, algo parecido com a função
> "gravar macro" dos aplicativos ms-office.

o termo 'macro' no Zope/Plone tem um significado diferente
do que o dos aplicativos do MS-Office... :-)

Ao invés de uma seqüência de comandos a serem executados,
podemos dizer que ela signifique algo como 'um padrão de
entrada que deve ser substituído por um padrão de saída',
isso pelo menos no contexto dos PageTemplates.

> Minha preocupação
> reside em dois aspectos: como saber todos os passos seguidos até chegar
> à configuração atual, acaso seja necessário reconfigurar tudo "do zero"
> e também para ter um "script" dessa configuração para facilitar o trabalho.

O nome disso é 'configuração', propósito central do
GenericSetup (primeiro link no Google).

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Manage viewlets no Plone 3

2007-12-17 Por tôpico Dorneles Treméa
Opa Clayton,

> Essa dica é para o aqueles que estão começando a trabalhar com o Plone 3.
> 
> Existe uma interface para a customização de viewlets modo gráfico,
> basta acrescentar na URL do seu portal @@manage-viewlets [1].
> 
> [1] http://localhost:8080/plone/@@manage-viewlets

bem, isso poderia ser novidade a 5 meses atrás[1], mas depois do
livro do Martin[2] e de ser documentado[3], mesmo quem estiver
começando com o Plone 3 já deve ter topado com isso um bocado de
vezes... :-)

[1]http://nosleepforyou.blogspot.com/2007/07/content-providers-e-viewlets-no-plone-3.html
[2]http://www.packtpub.com/Professional-Plone-web-applications-CMS
[3]http://plone.org/documentation/tutorial/customizing-main-template-viewlets/overriding-a-viewlet

Abraço.

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Migração Plone 2.5.1 -> 3. 0.3

2007-12-17 Por tôpico Dorneles Treméa
Opa Rodrigo,

> Traceback (innermost last):
> [...]
> * Module ZODB.ExportImport, line 143, in _importDuringCommit
> * Module None, line 12, in ?
> * Module None, line 3, in ?
> 
> ImportError: No module named CMFCorePermissions

isso está com cara de ser algum módulo compilado (.pyc) perdido
em algum produto, sem o respectivo módulo fonte (.py)

Tenta apagar todos os arquivos .pyc do seu diretório Products
para ver se resolve.

Se não resolver, coloca um set_trace na linha 142 do módulo
ZODB.ExportImport para ver o que está sendo importado e com
isso matar a questão... :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Mudando a view de um "generic plone content"

2008-01-03 Por tôpico Dorneles Treméa
Opa Robson,

> Para a criação de conteúdos personalizados de forma extremamente
> rápida, estou usando o produto "generic plone content"
> (http://plone.org/products/genericplonecontent) na versão 0.6.
> 
> Criei um conteudo chamado "catalogo" sob o schemata default, com os
> seguintes campos: 'fabricante'(StringField), 'logotipo'(ImageField) e
> 'texto'(TextField --> text/html).
> 
> Até aí, tudo bem. No Plone, adiciono normalmente um item "catalogo"
> novo, edito tudo... mas como faço para alterar a visualização padrão
> desse item?
> 
> Sei que eu preciso criar um template e referenciá-lo em "Default view
> method" deste conteúdo, mas como faço para capturar esses campos,
> tipo... dar um 'get' neles, visto que são dinâmicos?

eu nunca usei esse produto, mas vi a apresentação do Fabrizio na
conferência de 2005 e posso dizer que ele apenas extende o schema
com os campos extras.

Dessa forma, ele herda o mesmo comportamento de qualquer campo
normal de um Archetype, ou seja, são criados accessors e mutators
com os prefixos get/set e o nome do campo capitulado.

Exemplo, para o teu campo 'fabricante', tu poderias acessar o valor
armazenado com getFabricante e, da mesma maneira, modificar com o
setFabricante.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: ordenar objetos dentro de um Folder

2008-01-11 Por tôpico Dorneles Treméa
Opa Walter,

> Há uns meses atrás, eu migrei as noticias de um mambo para o plone.
> 
> Ontem, migrei o resto das notícias.
> 
> Porém, a ordenação delas ficou errada dentro da pasta.
> 
> Dá pra arrastar e soltar, mas isso é contraproducente.
> 
> Tem alguma API do zope pra reordenar o conteúdo da pasta, baseado nos
> atributos dos objetos dentro dela?

tem sim, desde que implemente a interface IAutoSortSupport, que
é o que o Folder padrão do Plone faz. Confere a API da coisa:

http://dev.plone.org/collective/browser/ATContentTypes/trunk/lib/autosort.py#L41

Se quiseres ordenar manualmente, mas por código, confere:

http://dev.plone.org/archetypes/browser/Archetypes/branches/1.5/interfaces/_orderedfolder.py#L36

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: ordenar objetos dentro de um Folder

2008-01-11 Por tôpico Dorneles Treméa
Opa Walter,

> Segui o procedimento: zopectl debug
> 
> lá dentro, alkgo do tipo: pasta.setDefaultSorting('atributo')
> 
> Mas não é ordenado ainda na visualização.
> 
> Precisa reindexar ou algo a mais?

3 perguntas:

- qual o nome do atributo que passaste para o setDefaultSorting?

- verificaste com o pasta.getSortAuto() para ver se o autosort
  está ativo (e caso não estiver: pasta.setSortAuto(True))

- por acaso não esqueceste de comitar a transação pelo zopectl
  debug (import transaction; transaction.commit())? :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: ordenar objetos dentro de um Folder

2008-01-11 Por tôpico Dorneles Treméa
Opa Walter,

> >>> import transaction
> >>> from AccessControl.SecurityManagement import newSecurityManager
> >>> t = transaction.get()
> >>> portal = app.cidades
> >>> admin= app.acl_users.getUser('admin').__of__(app.acl_users)
> >>> newSecurityManager(None, admin)
> >>> portal['ministerio-das-cidades']['destaques'].getSortAuto()
> True
> >>>
> portal['ministerio-das-cidades']['destaques'].setDefaultSorting('Title',True)
> >>> t.commit()
> 
> Mas ao acessar a pasta, continua a ordem B,C,A

pelo que eu percebi, aparentemente em algum lugar do Plone está
faltando uma chamada ao método autoOrderItems:

http://dev.plone.org/collective/browser/ATContentTypes/trunk/lib/autosort.py#L113

E mesmo se você chamar manualmente ele dentro do zopectl debug,
a pasta ainda não ficará ordenada, pois esse método não está
atualizando o cátalogo, você teria que fazer isso também...

Resumindo: aparentemente ninguém usou esse recurso até hoje... :-)

Eu diria que para isso funcionar como o esperado, ao adicionar
novos items na pasta o autoOrderItems deveria ser chamado, e
ele deveria atualizar o catálogo. Pesquisando um pouco achei
esse ticket:

http://dev.plone.org/plone/ticket/5262

É algo relativamente simples de ser feito... :-)

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Problema na SESSION

2008-01-19 Por tôpico Dorneles Treméa
Fala Nogueira,

> Traceback (innermost last):
>   [...]
>   Module Products.Sessions.SessionDataManager, line 96, in getSessionData
>   Module Products.Sessions.SessionDataManager, line 183, in
> _getSessionDataObject
>   Module Products.Transience.Transience, line 843, in new_or_existing
>   Module Products.Transience.Transience, line 452, in __setitem__
> KeyError: 1200675580
>
> Alguem já passou por algo desse tipo?

por acaso você está usando uma versão homem-das-cavernas do Zope?

Não, não estou falando do Grok, mas sim de alguma versão da era
Mesozóica mesmo, como qualquer coisa abaixo da série Zope 2.8.x?

Se estiver, então provavelmente você está batendo de frente com
esse bug: https://bugs.launchpad.net/zope2/+bug/143053

Se não estiver, bom... então alguma coisa acordou esse bug que já
estava morto! :-)

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Ajuda Tradução Plone3

2008-02-04 Por tôpico Dorneles Treméa
Opa Davi,

> Gostaria de ajudar a traduzir o que ainda não o foi no Plone3.

pelas minhas contas o Plone 3.0 está 100% traduzido[1]... :-)

Obviamente, seria bem importante ter um segundo par de olhos
revisando as traduções, já que eu não recebo contribuições/
sugestões a um *bom* tempo...

> Num segundo momento quem sabe até a ZMI.

Sinto desapontá-lo, mas até onde eu sei isso nunca vai
acontecer, pelo menos não para a ZMI do Zope2. Para o
Zope3 a coisa muda um pouco de figura, pois a ZMI não
existe mais como a conhecemos e ela passa a ser tratada
como uma aplicação normal.

Entretanto, como 'nunca diga nunca' faz parte do meio
onde estamos inseridos, seria bom levantar a idéia na
lista zope-dev[2] antes de começar qualquer esforço
nesse sentido.

> Com quem poderia falar para dar os primeiros passos?

Para qualquer coisa relacionada com i18n do Plone, pode
ser comigo mesmo... :-)

[1] http://dev.plone.org/collective/changeset/58211
[2] http://mail.zope.org/mailman/listinfo/zope-dev

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Ajuda Tradução Plone3

2008-02-05 Por tôpico Dorneles Treméa
Opa Davi,

> Me atrapalhei, realmente a ZMI3 que tem suporte a i18n. Quando chegar
> a hora, estou disposto a traduzi-la.

a hora chegou ainda em 2003, quando o Sidnei começou a tradução... :-)

http://svn.zope.org/zope.app.locales/trunk/src/zope/app/locales/pt_BR/LC_MESSAGES

> Sobre o Plone3, não está 100% não, talvez 95% ou mesmo 99%, não tenho
> de cabeça tudo que encontrei até pq ainda não estou usando-o
> majoritariamente. Mas por exemplo no @@manage-portlets o botão está
> save settings e no @@manage-viewlets está hide/show.

Os arquivos PO estão 100% traduzidos sim... :-)

O que acontece é que nem todos os novos templates estão com as
marcações de i18n corretas para que as ferramentas possam fazer
a captura dos msgids...

Sempre que alguém encontrar algo que não esteja traduzido,
basta ir até o Trac do Plone, fazer uma busca pelo nome do
arquivo em questão e se não tiver nenhum referência, criar
um novo ticket.

Patches são muito bem vindos também, mas o simples fato de
ter um ticket garante que, mais cedo ou mais tarde, o problema
seja resolvido.

> Isso no release 3.05. Ou eu estaria desatualizado com relação ao trunk
> ou algo assim?

A versão 3.0.11 do PloneTranslations foi lançada ontem antes
de eu incluir as duas últimas msgids. Hoje o Hanno já corrigiu
uma porção de templates...

Eu diria que i18n é um processo em constante evolução, mas que
nunca termina... :-)

[]'s

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Linux Magazina

2008-02-19 Por tôpico Dorneles Treméa
Opa Jacson,

> Matéria sobre o Plone na Linux Magazine.

taí... gostei do artigo. Tem um ou dois errinhos, que me
parecem terem sido gerados na tradução do original, mas
mesmo assim mostra em 5 páginas um bom resumo do que a
versão 3 do Plone se propõe a fazer.

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Produto Plone

2008-03-06 Por tôpico Dorneles Treméa
Opa Eder,

> Pessoal acabei de criar um novo produto no meu site, depois d tudo criado
> e mudado os nomes nos Skins e tais, quando eu tento fazer um teste no
> browser, ele me da o seguinte erro "import of "SOAPpy" is
> unauthorized"!
> 
> Gostaria de saber onde posso estar errado...

provavelmente esse import está sendo feito a partir de código
restrito (como um PythonScript do seu skin, por exemplo), então
isso deve te ajudar a resolver a questão:

http://plone.org/documentation/how-to/using-unauthorized-modules-in-scripts

Uma alternativa melhor seria mover esse tipo de chamada para um
método dentro do código do seu produto, devidamente protegido
pelas permisssões necessárias.

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



[zope-pt] Re: Como abrir uma página web passando pa râmetros via POST?

2008-03-28 Por tôpico Dorneles Treméa
Opa João,

> preciso abrir uma página web passando para a mesma parâmetros
> via POST (e não GET). Alguém poderia me dizer como fazer isto (pode ser
> em python)? Agradeceria muito um exemplo de código.

pegando parte da solução de um dos problemas do PythonChallenge[1]:

import urllib, urllib2
url = 'http://uma.url.qualquer'
headers = {'User-Agent': 'Python'}
values = {'solution': 'foo', 'submit': 'ok'} # dados do form
data = urllib.urlencode(values)
req = urllib2.Request(url, data, headers)
html = urllib2.urlopen(req).read()

Esse é o Request mais completo que você pode efetuar, enviandos os
dados via POST e ainda informando headers adicionais.

[1] http://www.pythonchallenge.com

HTH,

-- 

Dorneles Treméa
X3ng Web Technology
http://nosleepforyou.blogspot.com



  1   2   3   >