Exemplo n.º 1
0
 def post(self, post_id, comment_id):
     # checks if user is logged in
     if user_logged_in(self):
         key = db.Key.from_path('Post', int(post_id), parent=post_key())
         post = db.get(key)
         if not post:
             return self.error(404)
         key = db.Key.from_path('Comment',
                                int(comment_id),
                                parent=comment_key())
         comment = db.get(key)
         if not comment:
             return self.error(404)
         # checks if the user owns the comment
         if user_owns_comment(self, comment):
             content = self.request.get('content')
             if content:
                 comment.content = content
                 comment.put()
                 time.sleep(0.1)
                 self.redirect('/blog/%s/comment' % str(post_id))
             else:
                 error = "Some content is required!"
                 self.render("editComment.html",
                             content=content,
                             error=error)
     else:
         return self.redirect('/')
Exemplo n.º 2
0
async def add_handler(request):
    # http://localhost:8000/add?name=dynamic_hello&code=xxx&web_path=xxx
    name = get_req_key(request, "name")
    code = get_req_key(request, "code")
    web_path = get_req_key(request, "web_path")
    logging.debug("add_handler name:{} code:{} web_path:{}".format(
        name, code, web_path))

    err = _check_code(name, code, web_path)
    if err != "":
        ret = {"err": models.errors.code_is_incorrect, "err_msg": err}
        return json(ret)

    db = models.db.FileDB()
    tp = db.get(name)
    if tp:
        if tp.type == "system":
            return system_error_ret("{} is a system func".format(tp.name))
    else:
        tp = models.db.FuncItem()
        tp.name = name
        tp.file_path = ""
        tp.type = "user"

    tp.web_path = web_path
    tp.last_update = utils.time.now_str()
    tp.code = code
    db.set(name, tp)

    ret = {
        "err": 0,
    }
    return json(ret)
Exemplo n.º 3
0
 def get(cls, id):
     tw = db.get(id)
     if tw:
         tweet_json = json.loads(tw)
     else:
         tweet_json = {}
     return cls.load_json(tweet_json)
Exemplo n.º 4
0
def authNewUser(id):
    """管理员通过信用户申请"""

    sql = "select * from tempuser where id='%s';" % (clean(id))

    user = db.get(sql)

    name = user['name']
    pwd = user['pwd']
    type = user['type']
    email = user['email']

    if type == 't':
        sql = "insert into Teacher (idTeacher,name,pwd,email) values ('%s','%s','%s','%s');" \
                % (clean(id), name, pwd, email)
        db.execute(sql)
        sql = "delete from tempuser where id='%s';" % (clean(id))
        db.execute(sql)
        return 'success'
    elif type == 's':
        sql = "insert into Student (idStudent,name,pwd,email) values ('%s','%s','%s','%s');" \
                % (clean(id), name, pwd, email)
        db.execute(sql)
        sql = "delete from tempuser where id='%s';" % (clean(id))
        db.execute(sql)
        return 'success'
    else:
        return 'fail'
Exemplo n.º 5
0
def authNewUser(id):
    """管理员通过信用户申请"""

    sql = "select * from tempuser where id='%s';" % (clean(id))

    user = db.get(sql)

    name = user['name']
    pwd = user['pwd']
    type = user['type']
    email = user['email']

    if type == 't':
        sql = "insert into Teacher (idTeacher,name,pwd,email) values ('%s','%s','%s','%s');" \
                % (clean(id), name, pwd, email)
        db.execute(sql)
        sql = "delete from tempuser where id='%s';" % (clean(id))
        db.execute(sql)
        return 'success'
    elif type == 's':
        sql = "insert into Student (idStudent,name,pwd,email) values ('%s','%s','%s','%s');" \
                % (clean(id), name, pwd, email)
        db.execute(sql)
        sql = "delete from tempuser where id='%s';" % (clean(id))
        db.execute(sql)
        return 'success'
    else:
        return 'fail'
Exemplo n.º 6
0
    def post(self, post_id):
        # checks if user is logged in
        if not user_logged_in(self):
            return self.redirect('/')

        key = db.Key.from_path('Post', int(post_id), parent=post_key())
        post = db.get(key)
        if not post:
            return self.error(404)

        # checks if the user owns the post
        if not user_owns_post(self, post):
            return self.redirect('/')

        title = self.request.get('title')
        content = self.request.get('content')

        if title and content:
            post.title = title
            post.content = content
            post.put()
            self.redirect('/blog')
        else:
            error = "Both subject and content are required!"
            self.render("newPostPage.html",
                        title=title,
                        content=content,
                        error=error)
Exemplo n.º 7
0
    def simple_sort():
        json_data = []
        for key in db.scan_iter():
            json_data += [Tweet.load_json(json.loads(db.get(key))).__dict__]

        return heapq.nlargest(10,
                              json_data,
                              key=lambda data: data['count_retweet'])
Exemplo n.º 8
0
def get_info_by_infoid_all(Iid):
    """使用信息id号查找消息 02"""

    sql='''
        select I.idInfo,I.t‎itle,I.date,I.type,T.name,I.tid,I.detail
        from Teacher as T,Info as I
        where T.idTeacher=I.tid and I.idInfo = %s
        ''' % clean(Iid)
    return db.get(sql)
Exemplo n.º 9
0
 def get(self, post_id, comment_id):
     if user_logged_in(self):
         key = db.Key.from_path('Post', int(post_id), parent=post_key())
         post = db.get(key)
         if not post:
             return self.error(404)
         key = db.Key.from_path('Comment',
                                int(comment_id),
                                parent=comment_key())
         comment = db.get(key)
         if not comment:
             return self.error(404)
         # checks if the user owns the comment
         if user_owns_comment(self, comment):
             params = dict(content=post.content, user=self.user)
             self.render('editComment.html', **params)
     else:
         return self.redirect('/')
Exemplo n.º 10
0
 def get(self, post_id, comment_id):
     if user_logged_in(self):
         key = db.Key.from_path('Post', int(post_id), parent=post_key())
         post = db.get(key)
         if not post:
             return self.error(404)
         key = db.Key.from_path('Comment',
                                int(comment_id),
                                parent=comment_key())
         comment = db.get(key)
         if not comment:
             return self.error(404)
         if user_owns_comment(self, comment):
             comment.delete()
             time.sleep(0.1)
             self.redirect('/blog/%s/comment' % str(post_id))
     else:
         self.redirect('/')
Exemplo n.º 11
0
    def get(self, post_id):
        if user_logged_in(self):
            key = db.Key.from_path('Post', int(post_id), parent=post_key())
            post = db.get(key)
            if not post:
                return self.error(404)

            if user_owns_post(self, post):
                post.delete()
                self.redirect('/blog')
        else:
            self.redirect('/')
Exemplo n.º 12
0
 def get(self, post_id):
     if not user_logged_in(self):
         return self.redirect('/')
     key = db.Key.from_path('Post', int(post_id), parent=post_key())
     post = db.get(key)
     if not post:
         return self.error(404)
     if user_owns_post(self, post):
         params = dict(title=post.title,
                       content=post.content,
                       user=self.user)
         self.render('editPostPage.html', **params)
     else:
         return self.redirect('/')
Exemplo n.º 13
0
    def get(self, post_id):
        if user_logged_in(self):
            key = db.Key.from_path('Post', int(post_id), parent=post_key())
            post = db.get(key)
            if not post:
                return self.error(404)

            comments = db.GqlQuery(
                "SELECT * FROM Comment WHERE parent_post = :post ORDER BY created DESC",
                post=post)
            self.render('postComments.html',
                        post=post,
                        comments=comments,
                        user=self.user)
        else:
            return self.redirect('/')
Exemplo n.º 14
0
 def post(self, post_id):
     if user_logged_in(self):
         key = db.Key.from_path('Post', int(post_id), parent=post_key())
         post = db.get(key)
         if not post:
             return self.error(404)
         # Only posts non-owners can comment
         if not user_owns_post(self, post):
             content = self.request.get('content')
             comment = Comment(parent=comment_key(),
                               content=content,
                               author=self.user,
                               parent_post=post)
             comment.put()
             time.sleep(0.1)
             self.redirect('/blog/%s/comment' % str(post_id))
         else:
             return self.redirect('/blog')
Exemplo n.º 15
0
 def get(self, post_id):
     if user_logged_in(self):
         key = db.Key.from_path('Post', int(post_id), parent=post_key())
         post = db.get(key)
         if not post:
             return self.error(404)
         if not user_owns_post(self, post):
             self.redirect('/')
         if post.liked(self.user):
             l = db.GqlQuery(
                 "SELECT * FROM Like WHERE author=:user AND parent_post=:post",
                 user=self.user,
                 post=post).get()
             l.delete()
             self.redirect('/blog')
         else:
             l = Like(author=self.user, parent_post=post)
             l.put()
             self.redirect('/blog')
     else:
         return self.redirect('/')
Exemplo n.º 16
0
def getTeacher(uid):
    """获取某位教师信息"""
    sql = "select * from Teacher where idTeacher='%s'" % (clean(uid))
    return db.get(sql)
Exemplo n.º 17
0
def teaLogin(uid, pwd):
    """教师登陆"""
    # return db.Teacher.find_one({}, {'user': clean(uid), 'password': clean(pwd)})
    sql = 'select * from Teacher where idTeacher="%s" and pwd="%s"' % (
        clean(uid), clean(pwd))
    return db.get(sql)
Exemplo n.º 18
0
def get_homework(hid):
    """根据作业id,获取某次作业"""

    sql = "select * from Homework where idHomework='%s';" % (clean(hid))
    return db.get(sql)
Exemplo n.º 19
0
def get_homework(hid):
    """根据作业id,获取某次作业"""

    sql = "select * from Homework where idHomework='%s';" % (clean(hid))
    return db.get(sql)
Exemplo n.º 20
0
def get_info(idInfo):
    """按照infoId获取info内容"""

    sql = "select * from Info where idInfo = '%s';" % (clean(idInfo))
    return db.get(sql)
Exemplo n.º 21
0
def getStudent(uid):
    """获取某位学生信息"""
    sql = 'select * from Student where idStudent = "%s"' % (clean(uid))
    return db.get(sql)
Exemplo n.º 22
0
def get_info(idInfo):
    """按照infoId获取info内容"""

    sql = "select * from Info where idInfo = '%s';" % (clean(idInfo))
    return db.get(sql)
Exemplo n.º 23
0
def getTeacher(uid):
    """获取某位教师信息"""
    sql = "select * from Teacher where idTeacher='%s'" % (clean(uid))
    return db.get(sql)
Exemplo n.º 24
0
def get_student_course(uid):
    """获取学生参加的课程"""
    sql = 'select * from Course where idCourse in (select cid from Student where idStudent="%s");' % (clean(uid))
    return db.get(sql)
Exemplo n.º 25
0
def stuLogin(uid, pwd):
    """学生登陆"""
    # return db.Student.find_one({}, {'user': clean(uid), 'password': clean(pwd)})
    sql = 'select * from Student where idStudent="%s" and pwd="%s"' % (clean(uid), clean(pwd))
    return db.get(sql)
Exemplo n.º 26
0
def getStudent(uid):
    """获取某位学生信息"""
    sql = 'select * from Student where idStudent = "%s"' % (clean(uid))
    return db.get(sql)
Exemplo n.º 27
0
def teaLogin(uid, pwd):
    """教师登陆"""
    # return db.Teacher.find_one({}, {'user': clean(uid), 'password': clean(pwd)})
    sql = 'select * from Teacher where idTeacher="%s" and pwd="%s"' % (clean(uid), clean(pwd))
    return db.get(sql)
Exemplo n.º 28
0
def getATempUser(uid):
    """获取某一位临时用户"""
    sql = 'select * from tempuser where id="%s"' % (clean(uid))
    return db.get(sql)
Exemplo n.º 29
0
def get_info_by_infoid(Iid):
    """使用信息id号查找消息"""

    sql = "select * from Info where idInfo='%s';" % (clean(Iid))
    return db.get(sql)
Exemplo n.º 30
0
def stuLogin(uid, pwd):
    """学生登陆"""
    # return db.Student.find_one({}, {'user': clean(uid), 'password': clean(pwd)})
    sql = 'select * from Student where idStudent="%s" and pwd="%s"' % (
        clean(uid), clean(pwd))
    return db.get(sql)
Exemplo n.º 31
0
def getATempUser(uid):
    """获取某一位临时用户"""
    sql = 'select * from tempuser where id="%s"' % (clean(uid))
    return db.get(sql)
Exemplo n.º 32
0
def get_course(cid):
    """获取某个课序号的所有信息"""

    sql = "select * from Course where idCourse='%s';" % (clean(cid))
    return db.get(sql)
Exemplo n.º 33
0
def get_info_by_infoid(Iid):
    """使用信息id号查找消息"""

    sql = "select * from Info where idInfo='%s';" % (clean(Iid))
    return db.get(sql)