Exemplo n.º 1
0
   def createClubRequest(self, request):

        collegeId = ndb.Key('CollegeDb',int(request.college_id))
        print("Required College ID",collegeId)

        college_ret = collegeId.get()

        print("College Ret",college_ret)
        if(college_ret):
           club_ret = Club.query(Club.name == request.club_name).filter(Club.abbreviation == request.abbreviation).filter(Club.collegeId == college_ret.key).fetch(1)
           print("Club Ret",club_ret)
           if(len(club_ret) == 0):
              clubRequest = createClub(request)
              currentProfile = clubRequest.to_pid.get()
              newNotif = Notifications(
                     clubName = clubRequest.club_name,
                     clubphotoUrl = clubRequest.photoUrl,
                     to_pid = clubRequest.to_pid,
                     type = "Club Creation Request",
                     timestamp  = dt.datetime.now().replace(microsecond = 0)
                    )

              print("Notification to be inserted in club creation request",newNotif)
              newNotifKey = newNotif.put()
              data = {'message': clubRequest.club_name,"title": "Creation Request"}
              print (data)
              gcmId = currentProfile.gcmId
              gcm_message = GCMMessage(gcmId, data)
              gcm_conn = GCMConnection()
              gcm_conn.notify_device(gcm_message)
              print("Finished the clubRequest")


        return message_types.VoidMessage()
Exemplo n.º 2
0
def createClubAfterApproval(requestentity=None):

    if requestentity:
        newClub = Club()
        newClub.abbreviation = requestentity.abbreviation
        newClub.admin = requestentity.from_pid
        newClub.collegeId = requestentity.collegeId
        newClub.name = requestentity.club_name
        newClub.isAlumni = requestentity.isAlumni
        newClub.description = requestentity.description
        newClub.members.append(requestentity.from_pid)
        newClub.follows.append(requestentity.from_pid)
        newClub.photoUrl = requestentity.photoUrl
        clubkey = newClub.put()

        profile = requestentity.from_pid.get()

        print("To check if profile retrieval is correct ", profile)
        profile.clubsJoined.append(clubkey)

        print("Checking if the  guy has joined the club", profile.clubsJoined)

        profile.follows.append(clubkey)
        print("Check if the profile has folowed the club", profile.follows)

        #adding the club to his admin list

        profile.admin.append(clubkey)

        profile.put()

        college = newClub.collegeId.get()

        if (college):
            college.group_list.append(newClub.key)

            college.put()

    print("finished appending college list")

    return newClub
Exemplo n.º 3
0
def createClubAfterApproval(requestentity=None):

    if requestentity:
        newClub = Club()
        newClub.abbreviation = requestentity.abbreviation
        newClub.admin = requestentity.from_pid
        newClub.collegeId = requestentity.collegeId
        newClub.name = requestentity.club_name
        newClub.isAlumni = requestentity.isAlumni
        newClub.description = requestentity.description
        newClub.members.append(requestentity.from_pid)
        newClub.follows.append(requestentity.from_pid)
        newClub.photoUrl = requestentity.photoUrl
        clubkey = newClub.put()

        profile = requestentity.from_pid.get()

        print("To check if profile retrieval is correct ", profile)
        profile.clubsJoined.append(clubkey)

        print("Checking if the  guy has joined the club", profile.clubsJoined)

        profile.follows.append(clubkey)
        print("Check if the profile has folowed the club", profile.follows)

        # adding the club to his admin list

        profile.admin.append(clubkey)

        profile.put()

        college = newClub.collegeId.get()

        if college:
            college.group_list.append(newClub.key)

            college.put()

    print("finished appending college list")

    return newClub
Exemplo n.º 4
0
   def createClubRequest(self, request):

        collegeId = ndb.Key('CollegeDb',int(request.college_id))
        college_ret = CollegeDb.query(CollegeDb.key == collegeId).fetch(1)

        print("College Ret",college_ret[0])
        if(college_ret):
           club_ret = Club.query(Club.name == request.club_name).filter(Club.abbreviation == request.abbreviation).filter(Club.collegeId == college_ret[0].key).fetch(1)
           print("Club Ret",club_ret)
           if(len(club_ret) == 0):
              clubRequest = createClub(request)
              print("Finished the clubRequest")

              '''newClub = createClubAfterApproval(clubRequest)
              print ("The new club is",newClub)
              #retClub = self.getClub(newClub)'''
        return message_types.VoidMessage()
Exemplo n.º 5
0
 def dontTouch(self, request):
     pid = ndb.Key('Profile',int(request.pid))
     clubId = Club.query(Club.admin==pid)
     pylist=[]
     for x in clubId:
         print x.key
         posts = Post.query(Post.club_id==x.key).order(-Post.timestamp)
         events = Event.query(Event.club_id==x.key).order(-Post.timestamp)
         list1=[]
         list2=[]
         list1 = [copyToCollegeFeed(y) for y in events]
         list2 = [copyToCollegeFeed(z) for z in posts]
         list1+=list2
         print "List-1",list1
         pylist+=list1
     pylist.sort(key=lambda x: x.timestamp, reverse=True)
     return CollegeFeed(items=pylist)
Exemplo n.º 6
0
def postEntry(requestentity=None,check=0):

        newPost = Post()
        #college = CollegeDb(name = 'NITK',student_sup='Anirudh',collegeId='NITK-123')
        #college_key = college.put()
        query = CollegeDb.query()
        club_name = Club.query()
        if check==0:
            print "The request entity key is " + requestentity.club_id
            key1 = ndb.Key('Club',int(requestentity.club_id))
            key2 = ndb.Key('Profile',int(requestentity.from_pid))
        else:
            key1 = requestentity.club_id
            key2 = requestentity.from_pid

        persons = Profile.query()
        #print club_name[0]
        #print "The key is " + club_name[0].key
        club_key = key1
        profile_key = key2
        flag = 0
        print "Profile Key " + str(profile_key)
        for x in persons:
            print x.key
            if(x.key == profile_key):
                print "Same"
                flag=1
            else:
                print "NOPE"
                    #setattr(clubRequest, field, profile_key)

        if(flag==1):
            if requestentity:
                for field in ('title','description','club_id','from_pid','likes','views'):

                    if hasattr(requestentity, field):
                        print(field,"is there")
                        val = getattr(requestentity, field)
                        if(field=="club_id"):
                            print "Club_Id stage"
                            setattr(newPost, field, club_key)

                        elif field == "from_pid":
                            print "Entered here"
                            person = profile_key.get()
                            print "Person's email-id ", person.email
                            person_collegeId = person.collegeId
                            print "His college Id ", person.collegeId
                            college_details = person_collegeId.get()
                            print "The sup is ", college_details.student_sup
                            setattr(newPost, field, profile_key)
                            print "Put PID"
                            setattr(newPost,'collegeId',person_collegeId)
                            print "Put college id"

                        elif val:
                            print("Value is",val)
                            setattr(newPost, field, str(val))


                    else:
                        setattr(newPost, "likes", 0)
                        setattr(newPost, "views", 0)

            print("About to create Post")
            print(newPost)
            newPost.put()


        else:
             print "Invalid Person"



        return
Exemplo n.º 7
0
def postEntry(requestentity=None,check=0):

        newPost = Post()
        #college = CollegeDb(name = 'NITK',student_sup='Anirudh',collegeId='NITK-123')
        #college_key = college.put()
        query = CollegeDb.query()
        club_name = Club.query()
        if check==0:
            print "The request entity key is " + requestentity.club_id
            key1 = ndb.Key('Club',int(requestentity.club_id))
            key2 = ndb.Key('Profile',int(requestentity.from_pid))
        else:
            key1 = requestentity.club_id
            key2 = requestentity.from_pid

        persons = Profile.query()
        #print club_name[0]
        #print "The key is " + club_name[0].key
        club_key = key1
        profile_key = key2
        flag = 0
        flag1 = 0
        clubs = Club.query()

        print "Profile Key " + str(profile_key)
        for x in persons:
            print x.key
            if(x.key == profile_key):
                print "Same"
                flag=1
            else:
                print "NOPE"

        for x in clubs:
            print x.key
            if(x.key == club_key):
                print "Same"
                flag1=1
            else:
                print "NOPE"

                    #setattr(clubRequest, field, profile_key)

        if(flag==1 and flag1==1):
            if requestentity:
                for field in ('title','description','club_id','from_pid','likes','views','timestamp','photo','photoUrl'):

                    if hasattr(requestentity, field):
                        print(field,"is there")
                        val = getattr(requestentity, field)
                        if(field=="club_id"):
                            print "Club_Id stage"
                            setattr(newPost, field, club_key)

                        elif field == "from_pid":
                            print "Entered here"
                            person = profile_key.get()
                            print "Person's email-id ", person.email
                            person_collegeId = person.collegeId
                            print "His college Id ", person.collegeId
                            college_details = person_collegeId.get()
                            print "The sup is ", college_details.student_sup
                            setattr(newPost, field, profile_key)
                            print "Put PID"
                            setattr(newPost,'collegeId',person_collegeId)
                            print "Put college id"

                        elif field=="timestamp":
                            setattr(newPost, field, val)

                        elif val:
                            print("Value is",val)
                            setattr(newPost, field, str(val))



                    else:
                        if field == "timestamp":
                            temp = datetime.strptime(getattr(requestentity,"date"),"%Y-%m-%d").date()
                            temp1 = datetime.strptime(getattr(requestentity,"time"),"%H:%M:%S").time()
                            setattr(newPost,field,datetime.combine(temp,temp1))

                        setattr(newPost, "likes", 0)
                        setattr(newPost, "views", 0)

            print("About to create Post")
            print(newPost)
            newPost.put()


        else:
             print "Invalid Entry"



        return newPost