Example #1
0
    def post(self, not_id=None):
        response = ResponseModel()

        try:
            user = yield gen.Task(UserActions._get_me_by_id,
                                  self.current_uid())
            if not_id == None:
                resp = UserActions._read_all_notifications(user)
                response.model['read'] = resp
            else:
                resp = UserActions._read_notification(user, not_id)
                response.model['read'] = resp
        except Exception, e:
            response.success = False
            response.args['Message'] = e.message
            logger.error(e)
Example #2
0
    def put(self, username):
        response = ResponseModel()
        try:
            img = self.get_json_model("profile_img", default=None)
            cur_user = yield gen.Task(UserActions._get_me_by_id,
                                      self.current_uid())
            user = yield gen.Task(UserActions._update, cur_user,
                                  self.get_json_model('user'))
            if img != None:
                yield gen.Task(ProfileImageActions.save_profile_image, user.id,
                               user, img)

            response.model['user'] = yield gen.Task(
                UserActions._get_user_by_id, self.current_uid())
        except Exception, e:
            response.success = False
            logger.error(e)
Example #3
0
 def put(self, tag_id):
     response = ResponseModel()
     try:
         img = self.get_json_model("profile_img", default=None)
         user = yield gen.Task(UserActions._get_me_by_id,
                               self.current_uid())
         tag = yield gen.Task(TagActions._get_tag_by_id, tag_id)
         tag_model = self.get_json_model("tag")
         response.model['tag'] = yield gen.Task(TagActions._update_tag,
                                                user, tag, tag_model)
         if img != None:
             yield gen.Task(ProfileImageActions.save_profile_image, tag.id,
                            user, img)
     except Exception, e:
         response.success = False
         response.args['Message'] = e.message
         logger.error(e)
Example #4
0
 def get(self, username=None):
     response = ResponseModel()
     try:
         if username == None:
             cur_user, error = yield gen.Task(CallIT.gen_run,
                                              UserActions._get_user_by_id,
                                              self.current_uid())
         else:
             cur_user, error = yield gen.Task(CallIT.gen_run,
                                              UserActions._get_user_by_id,
                                              username)
         tags, error = yield gen.Task(CallIT.gen_run,
                                      UserActions._get_default_tags,
                                      cur_user)
         response.model['tags'] = tags
     except Exception, e:
         response.success = False
         logger.error(e)
Example #5
0
    def post(self, username=None):
        response = ResponseModel()
        try:
            old_pass = self.get_argument("old_pass", strip=True)
            new_pass = self.get_argument("new_pass", strip=True)
            curr_user = yield gen.Task(UserActions._get_user_by_id,
                                       self.current_uid(),
                                       detailed=True,
                                       deref=False)
            success = yield gen.Task(AuthActions._change_password, curr_user,
                                     old_pass, new_pass)
            response.model['password_change'] = success


#             print user.default_tags
        except Exception, e:
            response.success = False
            logger.error(e)
Example #6
0
    def post(self, username=None):
        response = ResponseModel()
        try:
            tags = self.get_json_model('tags')
            cur_user = yield gen.Task(UserActions._get_user_by_id,
                                      self.current_uid(),
                                      detailed=True,
                                      deref=False)
            cur_user.reload()
            user, error = yield gen.Task(CallIT.gen_run,
                                         UserActions._add_tags_default,
                                         cur_user,
                                         tags,
                                         save=True)
            response.model['user'] = "******"
#             print user.default_tags
        except Exception, e:
            response.success = False
            logger.error(e)
Example #7
0
    def post(self, username):
        response = ResponseModel()
        user = None
        pro_img = None
        try:
            rip = self.request.remote_ip
            if rip == '127.0.0.1':
                rip = self.settings['local_ip']
            recaptcha = self.get_json_model("recaptcha")
            cap_resp = captcha.submit(recaptcha['challenge'],
                                      recaptcha['response'],
                                      self.settings['captcha_priv'], rip)
            if not cap_resp.is_valid:
                response.success = False
                response.args['Message'] = 'Captcha Fail'
                response.args['Error'] = 1
                self.write_json(response)
                return
            img = self.get_json_model("profile_img", default=None)
            user_data = self.get_json_model('user')

            user, error = yield gen.Task(CallIT.gen_run, UserActions._register,
                                         user_data, user_data['password'])
            pro_img, error = yield gen.Task(
                CallIT.gen_run, ProfileImageActions.save_profile_image,
                user.id, user, img)
            #Maybe return user here,
            response.model['user'] = "******"
        except Exception, e:
            if isinstance(user, Document):
                user.delete()
            if isinstance(pro_img, Document):
                pro_img.delete()
            response.success = False
            response.args['Message'] = e.message
            logger.error(e)
            if "username" in e.message and "duplicate" in e.message:
                response.args['Error'] = 2
            if "email" in e.message and "duplicate" in e.message:
                response.args['Error'] = 3
                self.write_json(response)
                return
Example #8
0
    def get(self):
        response = ResponseModel()
        try:
            uniqueid = self.get_argument('regid', strip=True).lower()
            user = User.objects(reg_id=uniqueid).first()
            if user != None:
                if user.active:
                    response.model['verification'] = True
                    self.write_json(response)
                    return
                user.active = True
                user.save()
                response.model['verification'] = True

            else:
                response.model['verification'] = False
        except Exception, e:
            response.success = False
            response.model['verification'] = False
            logger.error(e)
Example #9
0
    def post(self):
        response = ResponseModel()
        try:

            vote_model = self.get_json_model("vote")
            state = vote_model['state']
            post_id = vote_model['post_id']
            user = yield gen.Task(UserActions._get_me_by_id,
                                  self.current_uid())
            post = yield gen.Task(PostActions._get_post_by_id, post_id)
            reply_id = vote_model.get('reply_id', None)
            vote = None
            if reply_id == None:
                if state == 1:
                    vote, error = yield gen.Task(CallIT.gen_run,
                                                 VoteActions._upvote_post,
                                                 user, post, state)
                elif state == -1:
                    vote, error = yield gen.Task(CallIT.gen_run,
                                                 VoteActions._downvote_post,
                                                 user, post, state)
            else:
                replies = filter(lambda x: x.id == ObjectId(reply_id),
                                 post.replies)
                if len(replies) != 1:
                    raise Exception("There can only be one!!")
                reply = replies[0]
                if state == 1:
                    vote, error = yield gen.Task(CallIT.gen_run,
                                                 VoteActions._upvote_reply,
                                                 user, post, reply, state)
                elif state == -1:
                    vote, error = yield gen.Task(CallIT.gen_run,
                                                 VoteActions._downvote_reply,
                                                 user, post, reply, state)

            response.model = vote
        except Exception, e:
            response.success = False
            response.args['Message'] = e.message
            logger.error(e)
Example #10
0
    def post(self, tag_id):
        response = ResponseModel()
        img = self.get_json_model("profile_img", default=None)
        try:
            tag_model = self.get_json_model("tag")

            user = yield gen.Task(UserActions._get_user_by_id,
                                  self.current_uid())
            tag, error = yield gen.Task(CallIT.gen_run, TagActions._create_tag,
                                        user, tag_model)
            response.model['tag'] = tag
            if img != None:
                pro_img, error = yield gen.Task(
                    CallIT.gen_run, ProfileImageActions.save_profile_image,
                    tag.id, user, img)
        except Exception, e:
            if isinstance(tag, Document):
                tag.delete()
            if isinstance(pro_img, Document):
                pro_img.delete()
            response.success = False
            response.args['Message'] = e.message
            logger.error(e)
Example #11
0
    def get(self, username):
        response = ResponseModel()
        try:
            username = username.lower()
            if username == None:
                raise Exception("No username provided")
            detailed = self.get_argument("detailed", False)
            fields = self.get_argument("fields", default=[])
            if fields != []:
                fields = fields.split(",")
            elif self.current_username() != username and detailed:
                raise Exception("Invalid Permissions")
            else:
                response.model['user'], error = yield gen.Task(
                    CallIT.gen_run,
                    UserActions._get_user_by_name,
                    username,
                    detailed,
                    includes=fields)

        except Exception, e:
            response.success = False
            response.args['Message'] = e.message
            logger.error(e)
Example #12
0
 def get(self):
     response = ResponseModel()
     response.success = True
     response.args['Message'] = "Status: OK"
     self.write_json(response)
Example #13
0
 def get(self):
     self.clear_cookie("user")
     response = ResponseModel(success=True)
     self.write_json(response)