def getProfileActivityDictionary(self): user = mProject.smallUserDisplay(self.id, mProject.userNameDisplay(self.firstName, self.lastName, self.affiliation, mProject.isFullLastName(self.groupMembershipBitmask)), self.imageId) user['location_id'] = self.locationId user['location'] = self.location user['description'] = self.description user['is_leader'] = self.isLeader data = dict(projects = self.getProjects(), ideas = self.getIdeas(), endorsed_projects = self.getEndorsedProjects(), user = user) return data
def getProfileActivityDictionary(self): user = mProject.smallUserDisplay( self.id, mProject.userNameDisplay( self.firstName, self.lastName, self.affiliation, mProject.isFullLastName(self.groupMembershipBitmask)), self.imageId) user['location_id'] = self.locationId user['location'] = self.location user['description'] = self.description user['is_leader'] = self.isLeader data = dict(projects=self.getProjects(), ideas=self.getIdeas(), endorsed_projects=self.getEndorsedProjects(), user=user) return data
def getEndorsedProjects(self): betterData = [] try: sql = """select p.project_id, p.title, p.description, p.image_id, p.location_id, o.user_id as owner_user_id, o.first_name as owner_first_name, o.last_name as owner_last_name, o.affiliation as owner_affiliation, o.group_membership_bitmask as owner_group_membership_bitmask, o.image_id as owner_image_id, (select count(cpu.user_id) from project__user cpu where cpu.project_id = p.project_id) as num_members from project p inner join project_endorsement pe on pe.project_id = p.project_id and pe.user_id = $id inner join project__user pu on pu.project_id = p.project_id and pu.is_project_creator = 1 inner join user o on o.user_id = pu.user_id where p.is_active = 1""" data = list(self.db.query(sql, {'id': self.id})) for item in data: betterData.append( dict(project_id=item.project_id, title=item.title, description=item.description, image_id=item.image_id, location_id=item.location_id, owner=mProject.smallUserDisplay( item.owner_user_id, mProject.userNameDisplay( item.owner_first_name, item.owner_last_name, item.owner_affiliation, mProject.isFullLastName( item.owner_group_membership_bitmask)), item.owner_image_id), num_members=item.num_members)) except Exception, e: log.info("*** couldn't get user endorsed projects") log.error(e)
def authGetUser(db, email, password): sql = "select user_id, first_name, last_name, affiliation, group_membership_bitmask, image_id, email, password, salt from user where email = $email and is_active = 1" data = db.query(sql, {'email':email}) if (len(data) > 0): user = list(data)[0] hashed_password = makePassword(password, user.salt) if (hashed_password[0] == user.password): log.info("*** User authenticated") return mProject.smallUserDisplay(user.user_id, mProject.userNameDisplay(user.first_name, user.last_name, user.affiliation, mProject.isFullLastName(user.group_membership_bitmask)), user.image_id) else: log.warning("*** User not authenticated for email = %s" % email) return None else: log.warning("*** No record for email= %s" % email) return None
def getEndorsedProjects(self): betterData = [] try: sql = """select p.project_id, p.title, p.description, p.image_id, p.location_id, o.user_id as owner_user_id, o.first_name as owner_first_name, o.last_name as owner_last_name, o.affiliation as owner_affiliation, o.group_membership_bitmask as owner_group_membership_bitmask, o.image_id as owner_image_id, (select count(cpu.user_id) from project__user cpu where cpu.project_id = p.project_id) as num_members from project p inner join project_endorsement pe on pe.project_id = p.project_id and pe.user_id = $id inner join project__user pu on pu.project_id = p.project_id and pu.is_project_creator = 1 inner join user o on o.user_id = pu.user_id where p.is_active = 1""" data = list(self.db.query(sql, { 'id': self.id })) for item in data: betterData.append(dict(project_id = item.project_id, title = item.title, description = item.description, image_id = item.image_id, location_id = item.location_id, owner = mProject.smallUserDisplay(item.owner_user_id, mProject.userNameDisplay(item.owner_first_name, item.owner_last_name, item.owner_affiliation, mProject.isFullLastName(item.owner_group_membership_bitmask)), item.owner_image_id), num_members = item.num_members)) except Exception,e: log.info("*** couldn't get user endorsed projects") log.error(e)
def authGetUser(db, email, password): sql = "select user_id, first_name, last_name, affiliation, group_membership_bitmask, image_id, email, password, salt from user where email = $email and is_active = 1" data = db.query(sql, {'email': email}) if (len(data) > 0): user = list(data)[0] hashed_password = makePassword(password, user.salt) if (hashed_password[0] == user.password): log.info("*** User authenticated") return mProject.smallUserDisplay( user.user_id, mProject.userNameDisplay( user.first_name, user.last_name, user.affiliation, mProject.isFullLastName(user.group_membership_bitmask)), user.image_id) else: log.warning("*** User not authenticated for email = %s" % email) return None else: log.warning("*** No record for email= %s" % email) return None