def get(self, registry_id, filename): user = self.get_current_user() filename = unquote(filename) file_data = dict() file_id = '/'.join([registry_id,filename]) self._file = model.Studio().retrieve(file_id) if self._file != None: file_data = self._file.getFileInfo(user, filename) file_data["apagar"] = isAllowedToDeleteObject(user, file_data["owner"], file_id) file_data["alterar"] = isAllowedToEditObject(user, file_data["owner"], file_id) file_data["data_upload"] = short_datetime(file_data["data_upload"]) file_data["data_alt"] = short_datetime(file_data["data_alt"]) file_data["comentar"] = isAllowedToComment(user, file_id, file_data["owner"]) for comentario in file_data["comentarios"]: comentario["comment"] = comentario["comment"].replace("\r\n", "<br/>") comentario["apagar"] = isAllowedToDeleteComment(user, registry_id, comentario["owner"]) comentario["data_fmt"] = short_datetime(comentario["data_cri"]) links = [] links.append(("Ver", "/static/imagens/icones/view32.png", "/studio/"+file_id+"?disp=inline&size=G")) links.append(("Baixar", "/static/imagens/icones/down32.png", "/studio/"+file_id+"?disp=attachment&size=G")) if isAllowedToEditObject(user, file_data["owner"], file_id): links.append(("Alterar este arquivo", "/static/imagens/icones/edit32.png", "/studio/edit/"+file_id)) if isAllowedToDeleteObject(user, file_data["owner"], file_id): links.append(("Remover este arquivo", "/static/imagens/icones/delete32.png", "/studio/delete/"+file_id, "return confirm('Deseja realmente remover este Arquivo?');")) self.render("modules/studio/file-info.html", NOMEPAG=u'Estúdio', \ REGISTRY_ID=registry_id, \ LINKS=links, \ FILE=file_data, MSG="") else: self.render("home.html", MSG=u"Arquivo não encontrado.", \ NOMEPAG=u'Estúdio', REGISTRY_ID=registry_id)
def get(self): user = self.get_current_user() comment_id = self.get_argument("id","") self._comment = model.BlogComment().retrieve(comment_id) if self._comment: if isAllowedToDeleteComment(user, self._comment.registry_id, self._comment.owner): doc_id = '/'.join([self._comment.registry_id, self._comment.post_id]) # remove o comentário try: self._comment.delete() except Exception as detail: self.render("home.html", MSG=u"Erro: %s" % detail, REGISTRY_ID=registry_id, NOMEPAG="blog") return log.model.log(user, u'removeu um comentário do blog', objeto=doc_id, tipo="none") self.redirect("/blog/%s#comment" %doc_id) else: raise HTTPError(403) else: raise HTTPError(404)
def prepareWikiPage(user, pagina): # acrescenta permissões para o usuário user e datas formatadas pagina["apagar"] = isAllowedToDeleteObject(user, pagina["owner"], pagina["pag"], wiki="S") pagina["alterar"] = isAllowedToWriteObject(user, "wiki", pagina["registry_id"], nomeobj=pagina["nomepag_id"]) pagina["ler"] = isAllowedToReadObject(user, "wiki", pagina["registry_id"], nomeobj=pagina["nomepag_id"]) pagina["data_cri_fmt"] = short_datetime(pagina["data_cri"]) pagina["data_alt_fmt"] = short_datetime(pagina["data_alt"]) pagina["comentar"] = isAllowedToComment(user, pagina["pag"], pagina["owner"]) for comentario in pagina["comentarios"]: comentario["comment"] = comentario["comment"].replace("\r\n", "<br/>") comentario["apagar"] = isAllowedToDeleteComment(user, pagina["registry_id"], comentario["owner"]) comentario["data_fmt"] = short_datetime(comentario["data_cri"]) return pagina
def prepareBlogPost(user, post_data): # acrescenta permissões para comentar um post e datas formatadas post_data["comentar"] = isAllowedToComment(user, post_data["_id"], post_data["owner"]) post_data["data_cri_nofmt"] = post_data["data_cri"] post_data["data_cri"] = short_datetime(post_data["data_cri"]) post_data["data_alt"] = short_datetime(post_data["data_alt"]) # acrescenta permissões de cada comentário for comentario in post_data["comentarios"]: comentario["comment"] = comentario["comment"].replace("\r\n", "<br/>") comentario["apagar"] = isAllowedToDeleteComment(user, post_data["registry_id"], comentario["owner"]) comentario["data_fmt"] = short_datetime(comentario["data_cri"]) post_data["comentarios"] = sorted(post_data["comentarios"], key=itemgetter("data_cri"), reverse=True) return post_data
def get(self, registry_id): user = self.get_current_user() bookmark_id = self.get_argument("id","") owner = self.get_argument("owner","") data_cri = self.get_argument("data_cri","") if isAllowedToDeleteComment(user, registry_id, owner): self._bookmark = model.Bookmarks().retrieve(bookmark_id) if self._bookmark: if self._bookmark.deleteBookmarkComment(owner, data_cri): log.model.log(user, u'removeu um comentário do link favorito de', objeto=registry_id, tipo="bookmarks") self.redirect("/bookmarks/comment/%s?id=%s" % (registry_id, bookmark_id)) else: raise HTTPError(404) else: raise HTTPError(404) else: raise HTTPError(403)
def get(self, registry_id, pagina): user = self.get_current_user() owner = self.get_argument("owner","") data_cri = self.get_argument("data","") if isAllowedToDeleteComment(user, registry_id, owner): doc_id = "/".join([registry_id, pagina]) self._wiki = model.Wiki().retrieve(doc_id) if self._wiki: if self._wiki.deleteWikiComment(owner, data_cri): log.model.log(user, u'removeu um comentário da página', objeto=doc_id, tipo="wiki") self.redirect("/wiki/%s#comment" %doc_id) else: self.write (dict(status=1, msg=u"Comentário não encontrado.")) else: self.write (dict(status=1, msg=u"Página não encontrada.")) else: self.write (dict(status=1, msg=u"Você não tem permissão para apagar este comentário."))
def get(self, registry_id, filename): user = self.get_current_user() comentario = dict() comentario["owner"] = self.get_argument("owner","") comentario["data_cri"] = self.get_argument("data","") file_id = "/".join([registry_id, unquote(filename)]) if isAllowedToDeleteComment(user, registry_id, comentario["owner"]): for row in database.STUDIO.view('studio/comment',key=[file_id, comentario["owner"], comentario["data_cri"]]): comentario["comment"] = row.value self._file = model.Studio().retrieve(file_id) if self._file: self._file.deleteFileComment(comentario) log.model.log(user, u'removeu um comentário da imagem no studio de games', objeto=file_id, tipo="studio") self.redirect("/studio/info/%s#comment" % file_id) else: msg = u"Arquivo não encontrado." self.render("home.html", MSG=msg, REGISTRY_ID=registry_id, NOMEPAG=u'Estúdio') else: msg = u"Você não tem permissão para apagar este comentário." self.render("home.html", MSG=msg, REGISTRY_ID=registry_id, NOMEPAG=u'Estúdio')
def prepareCommentsToPrint(self, user): for comment in self.comentarios: comment["apagar"] = isAllowedToDeleteComment(user, self.registry_id, comment["owner"]) comment["data_fmt"] = short_datetime(comment["data_cri"]) comment["comment"] = comment["comment"].replace("\r\n", "<br/>") self.comentarios = sorted(self.comentarios, key=itemgetter("data_cri"), reverse=True)