Para a nova versão do
flash player 10 é necessário adicionar ao
Plone uma correção e também no produto
ATFlashMovie para quem usa.
Trabalhar com Plone e seus produtos é uma delícia, ainda mais quando a Adobe lança um novo player, que por acaso é a versão 10, e os clientes começam a fazer suas atualizações. No outro dia você recebe a ligação do cliente perguntando cade aquele banner maravilhoso e cheio de animações que tinha na página dele.
Depois de apanhar bastante tentando descobrir o problema e colocando a culpa no IE7 e na Adobe por lançar algo novo, você descobre que o problema também está no na forma que o produto ATFlashMovie trata o flash.
Solução
1 - Antes de mais nada, saiba que com a chegada do novo player 10 da Adobe é necessário uma correção na forma que o Plone trata os arquivos Flash, e também é necessário uma correção no produto ATFlashMovie para quem usa ele claro. :-)
2 - Edite o arquivo ATFlashMovie.py que está em /Products/ATFlashMovie.
3 - Desça até a linha 95 e adicione o texto: inlineMimetypes = ('application/x-shockwave-flash'), que deverá ficar assim:
92. typeDescription= "A Macromedia flash film"
92. typeDescription= "A Macromedia flash film"
93. typeDescMsgId = 'description_edit_flash_file'
94. assocFileExt = ('swf',)
95. inlineMimetypes = ('application/x-shockwave-flash')
96.
97. global_allow = True
É claro que se você também não quer ficar editando arquivos, pode simplesmente baixar e aplicar o fix localizado em:
http://plone.org/products/products-flash10fix
4 - Agora vamos as duas últimas correções, só que agora no Plone, então edite o arquivo Field.py que está em /Products/Archetypes ou em /parts/plone/Archetypes, dependendo da instalação do Plone.
5 - Vá na linha 1155, onde devemos adicionar uma declaração que verifica se o nome do arquivo termina com swf e em caso de positivo, altera a visão do arquivo como inline e não anexo.
Field.py (ATUAL)
1153. else:
1154. filename = unicode(filename, instance.getCharset())
1155. header_value = contentDispositionHeader(
1156. disposition='attachment',
1157. filename=filename)
1158. RESPONSE.setHeader("Content-Disposition", header_value)
1159. if no_output
Field.py (depois de alterado):
1153. else:
1154. filename = unicode(filename, instance.getCharset())
1155. filenameParts = filename.split('.')
1156. if filenameParts[len(filenameParts) - 1] == 'swf':
1157. header_value = contentDispositionHeader(
1158. disposition='inline',
1159. filename=filename)
1160. else:
1161. header_value = contentDispositionHeader(
1162. disposition='attachment',
1163. filename=filename)
1164. RESPONSE.setHeader("Content-Disposition", header_value)
1165. if no_output:
6 - Agora uma última alteração, devemos habilitar o uso das tags object e embed para os editores como o Kupu e FCKEditor, isso também vai influenciar no site, sem isso eu estava tendo problemas ao usar o KBanner.
7 - Na ZMI clique em portal_transforms, procure por safe_html e remova caso exista as entradas "object" e "embed" da lista nasty_tags.
8 - Agora adicione as mesmas tags nas lista valid_tags e salve com o valor 1.
9 - Dê um restart na instância para que as alterações feitas no produto e no Field tenham efeito ;)
Nenhum comentário foi encontrado.