def editMenu(self, id_aplicativo, id_treeapp, id_conteudo, titulo, json, exportar=None, exportar_json=None, exportar_xml=None): """ """ self.execSqlu("update_menu", id_conteudo=int(id_conteudo), titulo=titulo, json=unquote(json)) portal = Portal(id_site=self.id_site, request=self.request) portal._editConteudo(env_site=self.id_site, id_pk=id_conteudo, id_aplicativo=int(id_aplicativo), schema=self.schema, id_treeapp=id_treeapp, titulo=titulo, publicado=True, publicado_em=strftime("%Y-%m-%d %H:%M"), expira_em=None, titulo_destaque=None, descricao_destaque=None, imagem_destaque=None, permissao=None, tags=None) if exportar_xml or exportar_json or exportar: portal._insertLog(self.id_site, "DA-Menu '%s' editado e publicado" % titulo) portal._exportarFormatosConteudo(id_aplicativo=id_aplicativo, id_conteudo=id_conteudo, schema=self.schema, id_treeapp=id_treeapp, html=exportar, xml=None, json=None, dados={}, subitems=None, edit=1) return ("DA-Menu editado com sucesso! " "Publicação iniciada.") self.logmsg = "DA-Menu editado '%s'" % titulo return "Menu editado com sucesso!"
def editConteudo(self, id_conteudo=None, id_treeapp=None, id_aplicativo=None, titulo_destaque=None, imagem_destaque=None, publicado=None, relacionamento=[], titulo=None, descricao=None, filiado=None, informacoes=None, imagem=None, tags=None, publicado_em=None, expira_em=None, exportar=None, id_destaque=None, exportar_xml=None, exportar_json=None, descricao_destaque=None, permissao=None, tipo=None): """ Edita os dados de um estabelecimento """ portal = Portal(id_site=self.id_site, request=self.request) publicado = True if publicado else False tags = tags if tags else None data_publicado = publicado_em try: nova_data = strptime(publicado_em, "%d/%m/%Y %H:%M") publicado_em = strftime("%Y-%m-%d %H:%M", nova_data) except ValueError: raise UserError("Ocorreu um erro: " "Data de publicaçåo " "inválida (%s)" % publicado_em) try: novo_expira = strptime(expira_em, "%d/%m/%Y %H:%M") expira_em = strftime("%Y-%m-%d %H:%M", novo_expira) except ValueError: expira_em = None id_imagem = portal.addArquivo(arquivo=imagem, id_conteudo=id_conteudo, schema=self.schema, dt=data_publicado) self.execSqlu("delete_tipo_conteudo", id_conteudo=int(id_conteudo)) self.execSqlBatch("update_conteudo", titulo=titulo, filiado=filiado, descricao=descricao, informacoes=informacoes, imagem=id_imagem, publicado_em=publicado_em, expira_em=expira_em, id_conteudo=int(id_conteudo)) if titulo_destaque or imagem_destaque or descricao_destaque: if not imagem_destaque: imagem_destaque = None else: imagem_destaque = portal.addArquivo(arquivo=imagem_destaque, id_conteudo=id_conteudo, schema=self.schema, dt=data_publicado) if id_destaque: self.execSqlBatch("update_destaque", id_destaque=int(id_destaque), titulo=titulo_destaque, descricao=descricao_destaque, img=imagem_destaque) else: self.execSqlBatch("insert_destaque", id_conteudo=int(id_conteudo), titulo=titulo_destaque, descricao=descricao_destaque, img=imagem_destaque) elif id_destaque: self.execSqlBatch("delete_destaque", id_destaque=int(id_destaque)) titulo_destaque = None descricao_destaque = None imagem_destaque = None self.execSqlCommit() try: for tipo_selecionado in tipo: tipo_selecionado = tipo_selecionado.strip('d') self.execSqlu("insert_tipo_conteudo", id_tipo=int(tipo_selecionado), id_conteudo=int(id_conteudo), nome=self.getNomeTipo(int(tipo_selecionado))) except TypeError: raise UserError("Selecione ao menos um tipo de estabelecimento.") dados = self._setDados(id_conteudo=id_conteudo) portal._editConteudo(env_site=self.id_site, id_pk=id_conteudo, id_aplicativo=int(id_aplicativo), schema=self.schema, id_treeapp=id_treeapp, titulo=titulo, publicado=publicado, publicado_em=publicado_em, expira_em=expira_em, titulo_destaque=titulo_destaque, descricao_destaque=descricao_destaque, imagem_destaque=imagem_destaque, permissao=permissao, tags=tags, relacionamento=relacionamento, dados=dados) if exportar or exportar_xml or exportar_json: portal._insertLog(self.id_site, "Estabelecimento '%s' editado" % titulo) portal._exportarFormatosConteudo(id_aplicativo=id_aplicativo, id_conteudo=id_conteudo, schema=self.schema, id_treeapp=id_treeapp, html=exportar, xml=exportar_xml, json=exportar_json, subitems=None, add=1) return ("Estabelecimento editado com sucesso! " "Publicação iniciada.") portal._insertLog(self.id_site, "Estabelecimento'%s' editado" % titulo) return "Estabelecimento editado com sucesso!"