Example #1
0
    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)
Example #2
0
 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')
Example #3
0
 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)
Example #4
0
    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)
Example #5
0
    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)
Example #6
0
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
Example #7
0
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