Exemple #1
0
    def post(self):
        """
            
        """
        posts = self.get_query("UsersBlogPost")
        comments = self.get_query("Comments")
        title = self.request.get("Ctitle")
        comment = self.request.get("comment")
        user = self.get_username('username')
        if self.get_username('username'):
            if title is None or comment is None:
                error = True
                self.render('blogpost.html',
                            Ctitle=title,
                            comment=comment,
                            posts=posts,
                            comments=Comments,
                            user=user)

            else:
                title = self.request.get("Ctitle")
                comment = self.request.get("comment")
                postid = self.request.get("postid")
                userComment = Comments(user=user,
                                       comment=comment,
                                       title=title,
                                       commentId=postid)
                userComment.put()
                self.render('blogpost.html',
                            posts=posts,
                            comments=comments,
                            user=user)
        else:
            self.redirect('/login')
 def post(self):
     user_key = ndb.Key(urlsafe=self.request.get('user_key'))
     profile_user_obj = user_key.get()
     logged_user = users.get_current_user()
     logged_user = ndb.Key('MyUser', logged_user.user_id())
     logged_user = logged_user.get()
     if self.request.get('button') == "Follow":
         logged_user.following.append(str(profile_user_obj.name))
         logged_user.put()
         profile_user_obj.followers.append(str(logged_user.name))
         profile_user_obj.put()
         self.redirect('/')
     if self.request.get('button') == "Unfollow":
         logged_user.following.remove(str(profile_user_obj.name))
         logged_user.put()
         profile_user_obj.followers.remove(str(logged_user.name))
         profile_user_obj.put()
         self.redirect('/')
     if self.request.get('button') == "comment":
         post_key = ndb.Key(urlsafe=self.request.get('post'))
         post = post_key.get()
         comment = self.request.get('comment')
         if comment:
             comment_id = Comments()
             now = datetime.now()
             comment_id.posted_date = now
             comment_id.post_key = post_key
             comment_id.user_key = logged_user.name
             comment_id.comment = comment
             comment_id.put()
         self.redirect('/user_profile?user_key=%s' % user_key.urlsafe())
Exemple #3
0
    def __init__(self, vw):
        self.cov = Coverage()
        self.comments = Comments()
        self.running = True
        self.cmt_changes = {}
        self.cmt_lock = Lock()
        self.stackvar_changes = {}
        self.stackvar_lock = Lock()
        self.syms = get_syms(vw)
        self.syms_lock = Lock()
        self.structs = {}  # get_structs(vw)
        self.structs_lock = Lock()

        self.filedata_by_sha = {}
        self.filedata_by_fname = {}
        for fname in vw.getFiles():
            sha256 = vw.getFileMeta(fname, 'sha256')
            mdict = dict(vw.getFileMetaDict(fname))
            mdict['name'] = fname
            mdict['maps'] = [
                mmap for mmap in vw.getMemoryMaps() if mmap[MAP_FNAME] == fname
            ]
            mdict['sha256'] = sha256
            self.filedata_by_sha[sha256] = mdict
            self.filedata_by_fname[fname] = mdict
Exemple #4
0
 def post(self):
     page_id = int(self.request.get('id'))
     commentText = self.request.get('commentBox')
     print "############"
     print commentText
     comment = Comments(text=commentText, pageId=page_id)
     comment.key = comment.put()
     commentList.append(comment)
     page = blogpages[page_id]
     #self.response.out.write(constructBlogPost(page))
     self.response.out.write(self.constructComments(comment, page_id))
Exemple #5
0
    def _write_comment_files(self):
        # Write the comment files.
        index = 1
        for worksheet in self.workbook.worksheets():
            if not worksheet.has_comments:
                continue

            comment = Comments()
            comment._set_xml_writer(self._filename('xl/comments'
                                                   + str(index) + '.xml'))
            comment._assemble_xml_file(worksheet.comments_list)
            index += 1
Exemple #6
0
 def __init__(self, bv):
     self.cov = Coverage()
     self.comments = Comments()
     self.fhash = get_fhash(bv.file.filename)
     self.running = True
     self.cmt_changes = {}
     self.cmt_lock = Lock()
     self.stackvar_changes = {}
     self.stackvar_lock = Lock()
     self.data_syms = get_syms(bv, SymbolType.DataSymbol)
     self.func_syms = get_syms(bv, SymbolType.FunctionSymbol)
     self.syms_lock = Lock()
     self.structs = get_structs(bv)
     self.structs_lock = Lock()
    def post(self):

        user = users.get_current_user()

        myuser_key = ndb.Key('MyUser', user.user_id())
        myuser = myuser_key.get()

        comment = self.request.get('comment')
        post_id = self.request.get('query')
        post_key = ndb.Key(Post, long(post_id))
        post = post_key.get()
        new_comment = Comments(comment=comment, comment_by=myuser_key)
        post.comments.append(new_comment)
        post.put()
        self.redirect('/')
Exemple #8
0
	def post(self):
		logged_user = users.get_current_user()
		logged_user = ndb.Key('MyUser', logged_user.user_id())
		logged_user = logged_user.get()
		if self.request.get('button') == "comment":
			post_key = ndb.Key(urlsafe=self.request.get('post'))
			post = post_key.get()
			comment = self.request.get('comment')
			if comment:
				comment_id = Comments()
				now = datetime.now()
				comment_id.posted_date = now
				comment_id.post_key = post_key
				comment_id.user_key = logged_user.name
				comment_id.comment = comment
				comment_id.put()
			self.redirect('/')
Exemple #9
0
def index(): 
	from pagination import Pagination
	from blog import Blog, Images
	from comments import Comments
	from adminsettings import Adminsettings, Cifrar
	Adminsettings(db)
	Blog(db,ckeditor), Images(db)
	Comments(db)
	settings = db(db.adminsettings.id>0).select(db.adminsettings.ALL).first()
	session.publishing=False
	session.preview=False
	records=db(db.blog.id>0).count()
	items_per_page=settings.blogitems
	pag=Pagination(records, items_per_page)
	posts = db(db.blog.public==True).select(db.blog.ALL, orderby=~db.blog.id, limitby=pag.limitby(), cache=(cache.ram, 5), cacheable=True)
	lastposts = db(db.blog.public==True).select(db.blog.ALL, orderby=~db.blog.id, limitby=(0,10), cache=(cache.ram, 150), cacheable=True)
	
	return dict(posts=posts, pagination=pag, records=records, items_per_page=items_per_page, lastposts=lastposts)
Exemple #10
0
    def post(self):
        self.response.headers['Content-Type'] = 'text/html'
        action = self.request.get('button')
        user = users.get_current_user()
        myuser_key = ndb.Key('MyUser', user.user_id())
        myuser = myuser_key.get()

        if action == 'post':
            comment = self.request.get('comment')
            key = self.request.GET['key']
            post_key = ndb.Key('Post', int(key))
            post = post_key.get()
            now = datetime.now()

            user = users.get_current_user()
            myuser_key = ndb.Key('MyUser', user.user_id())
            myuser = myuser_key.get()
            new_comment = Comments(text=comment,
                                   comment_time=str(now),
                                   comment_user=myuser_key)
            post.comments.append(new_comment)
            post.put()
            self.redirect('/')
Exemple #11
0
 def post(self, post_id):
     if not self.user:
         return self.redirect('/login')
     key = db.Key.from_path('blog_post', int(post_id))
     post = db.get(key)
     # Check to see if post exists and handles error if it does not
     if post:
         postId = int(post_id)
         userId = self.user.key().id()
         author = self.user.username
         comment = self.request.get("comment")
         if comment:
             comment = Comments(postId=postId,
                                userid=userId,
                                author=author,
                                comment=comment)
             comment.put()
             time.sleep(1)
             comments = Comments.all().filter("postId =",
                                              postId).order("created")
             self.render("new_post_page.html",
                         post=post,
                         author=author,
                         userId=userId,
                         comments=comments)
         else:
             comments = Comments.all().filter("postId =",
                                              postId).order("created")
             self.render("new_post_page.html",
                         post=post,
                         author=author,
                         comments=comments,
                         userId=userId,
                         error="Please enter comment before submitting")
     else:
         self.redirect('/errorhandler/2/blog')
Exemple #12
0
def show():
	session.publishing=False
	from blog import Blog, Images
	from regnews import Regnews
	from comments import Comments

	from gluon.tools import Recaptcha

	Blog(db,ckeditor), Images(db)
	Regnews(db)	
	Comments(db)
	images=None
	if auth.has_membership('administradores') or auth.has_membership('superadministradores'):
		#logger.debug(session.preview)
		if not request.args(0):
			redirect(URL('blog','index'))			
		if session.preview:
			from blog import Draft
			Draft(db,ckeditor)
			if request.args(0).isdigit():

				post=db.draft(db.draft.id==request.args(0)) or redirect(URL('blog','index'))
			else:
				post=db.draft(db.draft.urlfriendly==request.args(0)) or redirect(URL('blog','index'))
		else:
			if request.args(0).isdigit():			
				post=db.blog(db.blog.id==request.args(0)) or redirect(URL('blog','index'))	
			else:
				post=db.blog(db.blog.urlfriendly==request.args(0)) or redirect(URL('blog','index'))	
	else:
		if not request.args(0):
			redirect(URL('blog','index'))
		if request.args(0).isdigit():			
			post=db.blog((db.blog.id==request.args(0)) & (db.blog.public==True) ) or redirect(URL('blog','index'))
		else:
			post=db.blog((db.blog.urlfriendly==request.args(0)) & (db.blog.public==True) ) or redirect(URL('blog','index'))
	if post.image!=None:
		images=db.images(post.image)
		#logger.debug(images)

	comment = Field('comment', 'text', label="Comentario",notnull=True, requires=IS_NOT_EMPTY(error_message="Debes escribir un comentario"))

	if auth.is_logged_in():
		form = SQLFORM.factory(comment, submit_button = 'Comentar', formstyle='bootstrap')
	else:
		name = Field('name', 'string', label="Nombre", length=50, requires=IS_NOT_EMPTY(error_message="Debe identificarse con un nombre"))
		email = Field('email', 'string', length=128, requires=IS_EMAIL(error_message="email incorrecto"))
		website = Field('website','string', length=128, widget=lambda field,value: SQLFORM.widgets.string.widget(field, value, _placeholder='Opcional'))
		rnews = Field('rnews', 'bool', default=True) 
		captcha = Recaptcha(request, '6Lf849gSAAAAAD2YgjNJxrelMp7-hPnTNZyyf4pD', '6Lf849gSAAAAAOgabgN9kc5YO1hhEws_un0btbbf',use_ssl=True, error_message='Inválido', label='Verificar:', options='theme:"clean", lang:"es"')
		# antispam= Field("anti_spam", widget=recaptcha, default='')		
		form = SQLFORM.factory(name, rnews, email, website, comment,  submit_button = 'Comentar')

		form[0].append(captcha)

	if form.errors.has_key('captcha'):
		response.flash='Captcha inválido'

	elif form.validate(keepvalues=False):
		data=form.vars

		try:
			if auth.is_logged_in():
				if request.args(0).isdigit():
					db.comments.insert(comment=data.comment, user=auth.user.id, blog=request.args(0))
				else:
					db.comments.insert(comment=data.comment, user=auth.user.id, blog=db(db.blog.urlfriendly==request.args(0)).select().first()["id"] )
			else:
				reg=db(db.regnews.email==data.email).select()
				if len(reg)==0:
					id=db.regnews.insert(email=data.email, name=data.name, news=data.rnews, website=data.website)
					if request.args(0).isdigit():
						db.comments.insert(comment=data.comment, blog=request.args(0), regnews=id)
					else:
						db.comments.insert(comment=data.comment, blog=db(db.blog.urlfriendly==request.args(0)).select().first()["id"], regnews=id)
				else: 
					if request.args(0).isdigit():
						db.comments.insert(comment=data.comment, blog=request.args(0), regnews=reg[0].id)
					else:
						db.comments.insert(comment=data.comment, blog=db(db.blog.urlfriendly==request.args(0)).select().first()["id"], regnews=reg[0].id)

			db.commit()
			response.flash = "Comentario publicado"
			
			#redirect(URL('blog','show', args=request.args(0)))
		except Exception, ex:
			logger.debug(ex)
			db.rollback()
			response.flash="Su comentario no se pudo enviar. Inténtelo de nuevo"
Exemple #13
0
import sys
import requests

from flask import Flask, Blueprint, request, jsonify
from flask_cors import CORS
from comments import Comments
app = Flask(__name__)
bp = Blueprint('comments', __name__, url_prefix='/comments')

comments = Comments()

@bp.route("/<thread_id>", methods=["GET"])
def get_thread(thread_id):
    thread = comments.get_thread(thread_id)
    print('get_thread:', thread_id, thread)
    return jsonify({'thread': thread})

@bp.route("/<thread_id>", methods=["PUT"])
def add(thread_id):
    json_data = request.get_json()
    added_comment = comments.add(thread_id, json_data)
    print('added_comment:', added_comment)
    return jsonify({'comment': added_comment})


if __name__ == "__main__":
    port = 6001
    if len(sys.argv) >= 2:
        port = sys.argv[1]

    app.register_blueprint(bp)
Exemple #14
0
    def post(self, postid):
        if self.get_username('username'):
            user = self.get_username('username')
            task = self.request.get('task')
            post = self.get_posts('UsersBlogPost', postid)
            comments = self.get_post_comments('Comments', postid)
            if task == 'EditComment':
                editKey = self.request.get('edit')
                Etitle = self.request.get('Etitle')
                Ecomments = self.request.get('Ecomment')
                commentEdit = self.get_posts('Comments', editKey)
                commentEdit.comment = Ecomments
                commentEdit.title = Etitle
                # test whether current user is the comment's creator
                if user == commentEdit.user:
                    commentEdit.put()
                    return self.redirect('/')
                else:
                    editKey = self.request.get('edit')
                    message = "You are not the creator of this comment."
                    self.render_Html(post, user, comments, editKey, task,
                                     message)

            elif task == 'DeleteComment':
                editKey = self.request.get('delete')
                if self.get_posts('Comments', editKey):
                    deleteComment = self.get_posts('Comments', editKey)
                    # test whether current user is the comment's creator
                    if user == deleteComment.user:
                        deleteComment.delete()
                        self.render('singlepost.html',
                                    post=post,
                                    user=user,
                                    comments=comments)
                    else:
                        message = "You are not the creator of this comment."
                        self.render_Html(post, user, comments, editKey, task,
                                         message)
                else:
                    self.render('singlepost.html',
                                post=post,
                                user=user,
                                comments=comments)
            else:
                # creates new comment
                error = False
                user = self.get_username("username")
                title = self.request.get('Ctitle')
                comment = self.request.get('comment')  # form comment
                # comments = self.get_post_comments('Comments', postid)  # comments stored in db
                post = self.get_posts('UsersBlogPost', postid)
                if self.test_for_none(comment) or self.test_for_none(title):
                    error = True
                    self.redirect('/blog/{}'.format(postid))
                else:
                    comment = Comments(user=user,
                                       comment=comment,
                                       title=title,
                                       commentId=str(postid))
                    comment.put()
                    self.render('singlepost.html',
                                post=post,
                                user=user,
                                comments=comments)
        else:
            self.redirect("/login")
Exemple #15
0
 def comments(self):
     return Comments(self)
Exemple #16
0
 def get(self):
     c = Comments()
     c.fixCommentsForTopics()
     c.fixCommentsForCategories()
Exemple #17
0
def strip_comments(text, preserve_lines=False):
    return Comments('json', preserve_lines).strip(text)
Exemple #18
0
 def __init__(self, **config):
     self.comments = Comments(**config)
     super(Gist, self).__init__(**config)
Exemple #19
0
def sanitize_json(text, preserve_lines=False):
    return strip_dangling_commas(
        Comments('json', preserve_lines).strip(text), preserve_lines)
Exemple #20
0
def preprocessing_intermediate_remove_comment(intermediate_data):
    """Preprocessing intermediate data: Remove comment"""
    remover = Comments(style="c")
    data = remover.strip(intermediate_data)
    return data