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 post(self, registry_id, filename): user = self.get_current_user() comentario = self.get_argument("comment","") file_id = "/".join([registry_id, unquote(filename)]) self._file = model.Studio().retrieve(file_id) if self._file: if isAllowedToComment(user, file_id, self._file.owner): if comentario: self._file.newFileComment(user, comentario) # notifica o dono do post comentado email_msg = "Arquivo: "+file_id+"\n"+\ self._file.comentarios[-1]["comment"]+"\n"+\ Notify.assinatura(user, registry_id, self._file.comentarios[-1]["data_cri"])+"\n\n" Notify.email_notify(self._file.owner, user, "comentou a imagem no studio de games", \ message=email_msg, \ link="studio/info/"+file_id) log.model.log(user, u'comentou a imagem no studio de games', objeto=file_id, tipo="studio") self.redirect("/studio/info/%s" % file_id) else: self.render("home.html", MSG=u"O comentário não pode ser vazio.", REGISTRY_ID=registry_id, NOMEPAG=u'Estúdio') else: self.render("home.html", MSG=u"Você não tem permissão para comentar este arquivo.", REGISTRY_ID=registry_id, NOMEPAG=u'Estúdio') else: self.render("home.html", MSG=u"Arquivo não encontrado.", REGISTRY_ID=registry_id, NOMEPAG=u'Estúdio')
def post(self, registry_id): user = self.get_current_user() bookmark_id = self.get_argument("id","") comentario = self.get_argument("comment","") self._bookmark = model.Bookmarks().retrieve(bookmark_id) if self._bookmark: if isAllowedToComment(user, registry_id+"/"+bookmark_id, self._bookmark.owner): if comentario: self._bookmark.addBookmarkComment(user, comentario) # notifica o dono do favorito comentado email_msg = "Favorito: "+self._bookmark.url+"\n"+\ self._bookmark.comentarios[-1]["comment"]+"\n"+\ Notify.assinatura(user, registry_id, self._bookmark.comentarios[-1]["data_cri"])+"\n\n" Notify.email_notify(self._bookmark.owner, user, "comentou seu favorito", \ message=email_msg, \ link="bookmarks/comment/%s?id=%s"%(registry_id, self._bookmark.id)) log.model.log(user, u'comentou um link favorito de', objeto=registry_id, tipo="bookmarks") self.redirect("/bookmarks/comment/%s?id=%s" % (registry_id, self._bookmark.id)) else: self.render("home.html", MSG=u"O comentário não pode ser vazio.", REGISTRY_ID=registry_id, NOMEPAG='favoritos') else: raise HTTPError(403) else: raise HTTPError(404)
def post(self, registry_id, post_id): user = self.get_current_user() doc_id = "/".join([registry_id, post_id]) self._blog = model.Blog().retrieve(doc_id) if self._blog: if isAllowedToComment(user, doc_id, self._blog.owner): comment_data = self._blog.addComment(user, str(datetime.now()), self.get_argument("comment","")) if comment_data: # notifica o dono do post comentado email_msg = "Post: "+self._blog.titulo+"\n"+\ comment_data["comment"]+"\n"+\ Notify.assinatura(user, registry_id, comment_data["data_cri"])+"\n\n" Notify.email_notify(self._blog.owner, user, "comentou seu post no Blog", \ message=email_msg, \ link="blog/"+doc_id) log.model.log(user, u'comentou no blog', objeto=doc_id, tipo="blog") self.redirect("/blog/%s" % doc_id) else: self.render("home.html", MSG=u"O comentário não pode ser vazio.", REGISTRY_ID=registry_id, NOMEPAG="blog") else: self.render("home.html", MSG=u"Somente amigos de um usuário ou membros de uma comunidade podem comentar.", REGISTRY_ID=registry_id, NOMEPAG="blog") else: raise HTTPError(404)
def get(self, registry_id): user = self.get_current_user() bookmark_id = self.get_argument("id","") self._bookmark = model.Bookmarks().retrieve(bookmark_id) if self._bookmark != None: self._bookmark.prepareCommentsToPrint(user) self.render("modules/bookmarks/comments-list.html", NOMEPAG='favoritos', \ REGISTRY_ID=registry_id, COMENTAR=isAllowedToComment(user, registry_id+"/"+bookmark_id, self._bookmark.owner), \ BOOKMARK=self._bookmark, MSG="") 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