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()
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
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
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()
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)
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
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