Example #1
0
 def DeleteDuplicateFollows(self):
     q = Follow.query()
     i = 0 
     for f in q.iter():
         i = i+1
         q2 = Follow.query(ndb.AND(Follow.user == f.user, Follow.pointRoot == f.pointRoot))     
         existingFollows = q2.fetch(4)
         if len(existingFollows) > 1:
             for ef in existingFollows[1:]:
                 logging.info('Deleting follow for R:%s U:%s T:%s' % (str(ef.pointRoot), str(ef.user), ef.reason))
                 ef.key.delete()
     logging.info('Checked %d follows' % i)
Example #2
0
 def DeleteDuplicateFollows(self):
     q = Follow.query()
     i = 0 
     for f in q.iter():
         i = i+1
         q2 = Follow.query(ndb.AND(Follow.user == f.user, Follow.pointRoot == f.pointRoot))     
         existingFollows = q2.fetch(4)
         if len(existingFollows) > 1:
             for ef in existingFollows[1:]:
                 logging.info('Deleting follow for R:%s U:%s T:%s' % (str(ef.pointRoot), str(ef.user), ef.reason))
                 ef.key.delete()
     logging.info('Checked %d follows' % i)
Example #3
0
    def post(self, user_id):
        user = users.get_current_user()
        o_user = User.get_by_id(int(user_id))
        u_email = user.email()
        o_email = o_user.email
        follow_user = self.request.get("follow")

        if follow_user == "follow":
            follow = Follow(user_id=u_email, following_id=o_email)
            follow.put()
            return self.redirect('/other/' + str(user_id))
        else:
            following = Follow.query(Follow.user_id == u_email,
                                     Follow.following_id == o_email).get()
            following.key.delete()

            return self.redirect('/other/' + str(user_id))
Example #4
0
    def get(self):
        user = users.get_current_user()
        c_user = User.query(User.email == user.email()).get()
        name = c_user.name
        handle = c_user.handle
        following_list = Follow.query(Follow.user_id == user.email()).fetch()

        if following_list:
            for followers in following_list:
                follow = followers.following_id
                msg_list = Message.query(Message.email == follow,
                                         Message.deleted == False).fetch()
                sorted_list = sorted(msg_list,
                                     key=attrgetter("date"),
                                     reverse=True)

                if msg_list:
                    for message in msg_list:
                        uid = message.userid
                        o_user = User.query(User.user_id == uid).get()
                        params = {
                            "list": sorted_list,
                            "o_user": o_user,
                            "name": name,
                            "handle": handle
                        }

                        return self.render_template("following.html",
                                                    params=params)
                else:
                    params = {"name": name, "handle": handle}

                    return self.render_template("following.html",
                                                params=params)
        else:
            params = {"name": name, "handle": handle}

            return self.render_template("following.html", params=params)
Example #5
0
    def get(self, user_id):
        o_user = User.get_by_id(int(user_id))
        name = o_user.name
        handle = o_user.handle
        email = o_user.email
        message_list = Message.query(Message.email == o_user.email,
                                     Message.deleted == False).fetch()
        sorted_list = sorted(message_list,
                             key=attrgetter("date"),
                             reverse=True)

        user = users.get_current_user()
        if user:
            u_email = user.email()
            follow_check = Follow.query(Follow.user_id == u_email,
                                        Follow.following_id == email).get()

            params = {
                "list": sorted_list,
                "user": o_user,
                "name": name,
                "handle": handle,
                "id_user": user_id,
                "follow_check": follow_check
            }

            return self.render_template("other.html", params=params)
        else:
            params = {
                "list": message_list,
                "user": o_user,
                "name": name,
                "handle": handle,
                "id_user": user_id
            }

            return self.render_template("other.html", params=params)