本文整理汇总了Python中publica.core.portal.Portal._getTreeAppByHash方法的典型用法代码示例。如果您正苦于以下问题:Python Portal._getTreeAppByHash方法的具体用法?Python Portal._getTreeAppByHash怎么用?Python Portal._getTreeAppByHash使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类publica.core.portal.Portal
的用法示例。
在下文中一共展示了Portal._getTreeAppByHash方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _install
# 需要导入模块: from publica.core.portal import Portal [as 别名]
# 或者: from publica.core.portal.Portal import _getTreeAppByHash [as 别名]
def _install(self, title, url, id_usuario, hash, id_pagina=None,
fast_path=None, fast_origem=None, fast_portal=None,
rss_titulo=None, rss_link=None, rss_descricao=None,
rss_idioma=None, rss_categoria=None, rss_copyright=None,
rss_imagem_titulo=None, rss_imagem_link=None,
rss_imagem=None):
"""Adiciona uma instancia do produto
"""
portal = Portal(id_site=self.id_site,
request=self.request)
if not portal._getTreeAppByHash(env_site=self.id_site,
hash=hash):
raise UserError("O hash especificado não foi encontrado.")
nid = str(time()).replace(".", "")
if not self.schema:
self.schema = "%s_%s" % (meta_type, nid)
self.execSqlu("structure")
user_dinamic = portal._getUserDinamic(id_site=self.id_site)
if user_dinamic:
self.execSqlu("permissions",
user=buffer(user_dinamic))
if settings.USER_PERMISSION:
for u in settings.USER_PERMISSION:
self.execSqlu("permissions_admin",
user=buffer(u))
if fast_path:
if not fast_path.endswith("/"):
fast_path += "/"
try:
id_pagina = int(id_pagina)
except:
id_pagina = None
rss = {"titulo":rss_titulo,
"link":rss_link,
"descricao":rss_descricao,
"idioma":rss_idioma,
"categoria":rss_categoria,
"copyright":rss_copyright,
"imagem_titulo":rss_imagem_titulo,
"imagem_link":rss_imagem_link,
"rss_imagem":rss_imagem}
return {"rss":rss,
"url":url,
"id_usuario":id_usuario,
"hash":hash,
"id_pagina":id_pagina,
"fast_path":fast_path,
"fast_origem":fast_origem,
"fast_portal":fast_portal}
示例2: addavaliacao
# 需要导入模块: from publica.core.portal import Portal [as 别名]
# 或者: from publica.core.portal.Portal import _getTreeAppByHash [as 别名]
def addavaliacao(self, op_design, op_performance, op_conforto,
op_dirigibilidade, op_consumo, op_manutencao,
op_custo, pontos_positivos, pontos_negativos,
comentario, titulo, apelido, i=None, recomenda=None,
fabricante=None, modelo=None, modelo_ext=None,
ano_fabricacao=None, ano_modelo=None, codigo_fipe=None,
hashtree=None):
"""
Chama metodo para adicionar uma nova avaliacao de um usuario logado.
Retorna um dicionario, {'ok': ,'erro'}
"""
r = self._verify_ext(fabricante=fabricante,
modelo=modelo, modelo_ext=modelo_ext,
ano_fabricacao=ano_fabricacao,
ano_modelo=ano_modelo,
codigo_fipe=codigo_fipe,
hashtree=hashtree)
i = r['i']
if not hashtree:
return {"error":0}
if i ==" undefined" or i == -1:
if fabricante and modelo and modelo_ext and ano_fabricacao and ano_modelo:
try:
fabricante = fabricante.decode("utf-8").encode("latin1")
modelo= modelo.decode("utf-8").encode("latin1")
modelo_ext = modelo_ext.decode("utf-8").encode("latin1")
ano_fabricacao = ano_fabricacao.decode("utf-8").encode("latin1")
ano_modelo=ano_modelo.decode("utf-8").encode("latin1")
codigo_fipe = codigo_fipe.decode("utf-8").encode("latin1")
except:
pass
# didn't encode params from vehicle
ids = self.execSql("select_id_conteudo",
fabricante=fabricante,
modelo=modelo,
modelo_ext=modelo_ext,
ano_fabricacao=ano_fabricacao,
ano_modelo=ano_modelo)
if ids:
for id in ids:
i = id['id_conteudo']
break
if not i or i == "undefined" or i == -1:
return {"error":0}
avaliacao = self._addavaliacao(i=i,
op_design=op_design,
op_performance=op_performance,
op_conforto=op_conforto,
op_dirigibilidade=op_dirigibilidade,
op_consumo=op_consumo,
op_manutencao=op_manutencao,
op_custo=op_custo,
pontos_positivos=pontos_positivos,
pontos_negativos=pontos_negativos,
comentario=comentario,
titulo=titulo,
apelido=apelido,
recomenda=recomenda)
if avaliacao['error']:
return {"avaliacao":avaliacao, "url":0}
agora = util.dtnow('%Y-%m-%d %H:%M')
self.request["env_usuario"] = {"id_usuario":ID_USER}
self.request["env.usuario"] = {"id_usuario":ID_USER}
portal = Portal(id_site=self.id_site,
request=self.request)
tree = portal._getTreeAppByHash(env_site=self.id_site, hash=hashtree)
id_tree = tree['id_treeapp']
self.execSqlCommit()
self._setRanking()
dados = r['dados']#self._setDados(id_conteudo=i)
id_aplicativo = portal._getIdAplicativo(env_site=self.id_site, schema=self.schema)
"""
self.editContent(id_conteudo=i,
id_treeapp=id_tree,
id_aplicativo=id_aplicativo,
publicado_em=str(util.dtnow('%d/%m/%Y %H:%M')),
expira_em="",
fabricante=fabricante,
modelo=modelo,
modelo_extendido=modelo_ext,
codigo_fipe=codigo_fipe,
ano_modelo=ano_modelo,
ano_fabricacao=ano_fabricacao,
titulo=modelo_ext+" - "+ano_fabricacao+"/"+ano_modelo,
ordem=0,
publicado=1,
exportar=1)
"""
portal._exportarFormatosConteudo(id_aplicativo=id_aplicativo,
id_conteudo=i,
schema=self.schema,
id_treeapp=id_tree,
html=1,
dados=dados,
#.........这里部分代码省略.........
示例3: _verify_ext
# 需要导入模块: from publica.core.portal import Portal [as 别名]
# 或者: from publica.core.portal.Portal import _getTreeAppByHash [as 别名]
def _verify_ext(self, fabricante=None, modelo=None, modelo_ext=None,
ano_fabricacao=None, ano_modelo=None,
codigo_fipe=None, hashtree= None):
i = -1
if not hashtree:
return
self.request["env.usuario"] = {"id_usuario":ID_USER}
if fabricante and modelo and modelo_ext and ano_fabricacao and ano_modelo and codigo_fipe:
try:
fabricante = fabricante.decode("utf-8").encode("latin1")
modelo= modelo.decode("utf-8").encode("latin1")
modelo_ext = modelo_ext.decode("utf-8").encode("latin1")
ano_fabricacao = ano_fabricacao.decode("utf-8").encode("latin1")
ano_modelo=ano_modelo.decode("utf-8").encode("latin1")
codigo_fipe = codigo_fipe.decode("utf-8").encode("latin1")
except:
pass
#didn't encode params from vehicle
ids = self.execSql("select_id_conteudo",
fabricante=fabricante,
modelo=modelo,
modelo_ext=modelo_ext,
ano_fabricacao=ano_fabricacao,
ano_modelo=ano_modelo)
if ids:
for id in ids:
i = id['id_conteudo']
break
dados_f = ''
if i == -1:
id_conteudo = self.execSql("select_nextval_conteudo").next()["id"]
i = id_conteudo
agora = util.dtnow('%Y-%m-%d %H:%M')
self.execSqlBatch("insert_conteudo",
id_conteudo=id_conteudo,
fabricante=fabricante,
modelo=modelo,
modelo_extendido=modelo_ext,
ano_modelo=ano_modelo,
ano_fabricacao=ano_fabricacao,
titulo=modelo_ext+" - "+ano_fabricacao+"/"+ano_modelo,
codigo_fipe=codigo_fipe,
ordem=0,
aval_design=0.0,
aval_performance=0.0,
aval_conforto_acabamento=0.0,
aval_dirigibilidade=0.0,
aval_consumo=0.0,
aval_manutencao=0.0,
aval_custo_beneficio=0.0,
publicado=True,
publicado_em=agora,
expira_em=None)
self.execSqlCommit()
self._setRanking()
dados = self._setDados(id_conteudo=id_conteudo)
dados_f = dados
portal = Portal(id_site=self.id_site,
request=self.request)
tree = portal._getTreeAppByHash(env_site=self.id_site, hash=hashtree)
id_tree = tree['id_treeapp']
dados = self._setDados(id_conteudo=id_conteudo)
id_aplicativo = portal._getIdAplicativo(env_site=self.id_site, schema=self.schema)
portal._addConteudo(env_site=self.id_site,
id_pk=id_conteudo,
schema=self.schema,
meta_type=self.meta_type,
id_treeapp=id_tree,
titulo=modelo_ext+" - "+ano_fabricacao+"/"+ano_modelo,
publicado=True,
publicado_em=agora,
titulo_destaque='',
descricao_destaque='',
imagem_destaque='',
dados=dados,
id_aplicativo=id_aplicativo)
try:
portal._exportarFormatosConteudo(id_aplicativo=id_aplicativo,
id_conteudo=id_conteudo,
schema=self.schema,
id_treeapp=id_tree,
html=1,
dados=dados,
subitems=None,
add=1)
except:
pass
else:
dados_f = self._setDados(id_conteudo=i)
return {'i':i, 'dados':dados_f}
示例4: editApp
# 需要导入模块: from publica.core.portal import Portal [as 别名]
# 或者: from publica.core.portal.Portal import _getTreeAppByHash [as 别名]
def editApp(self, title, url, id_usuario, h, id_pagina=None,
fast_path=None, fast_origem=None, fast_portal=None,
rss_titulo=None, rss_link=None, rss_descricao=None,
rss_idioma=None, rss_categoria=None, rss_copyright=None,
rss_imagem_titulo=None, rss_imagem_link=None,
rss_imagem=None, delvideo=None):
"""Edita os atributos da instancia
"""
portal = Portal(id_site=self.id_site,
request=self.request)
if not portal._getTreeAppByHash(env_site=self.id_site,
hash=h):
raise UserError("O hash especificado não foi encontrado.")
user_dinamic = portal._getUserDinamic(id_site=self.id_site)
if user_dinamic:
self.execSqlu("permissions",
user=buffer(user_dinamic))
if settings.USER_PERMISSION:
for u in settings.USER_PERMISSION:
self.execSqlu("permissions_admin",
user=buffer(u))
if fast_path:
if not fast_path.endswith("/"):
fast_path += "/"
try:
id_pagina = int(id_pagina)
except:
id_pagina = None
rss = {"titulo":rss_titulo,
"link":rss_link,
"descricao":rss_descricao,
"idioma":rss_idioma,
"categoria":rss_categoria,
"copyright":rss_copyright,
"imagem_titulo":rss_imagem_titulo,
"imagem_link":rss_imagem_link,
"rss_imagem":rss_imagem}
dados = {"rss":rss,
"url":url,
"id_usuario":id_usuario,
"hash":h,
"id_pagina":id_pagina,
"fast_path":fast_path,
"fast_origem":fast_origem,
"fast_portal":fast_portal}
portal._editApp(env_site=self.id_site,
schema=self.schema,
titulo=title,
dados=dados)
user_dinamic = portal._getUserDinamic(id_site=self.id_site)
if user_dinamic:
self.execSqlu("permissions",
user=buffer(user_dinamic))
if settings.USER_PERMISSION:
for u in settings.USER_PERMISSION:
self.execSqlu("permissions_admin",
user=buffer(u))
try:
self.execSqlu("create_rule")
except:
pass
if delvideo:
self.execSqlu("delete_videos")
return ("Aplicativo configurado com sucesso! "
"Vídeos deletados!")
return "Aplicativo configurado com sucesso"