def get(self): """Displays info about team and all members for current leader""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_lead and self.session.get("role") == "leader": leader = db.Query(Leader).filter("user ="******"roles": roles, "user_email": email, "logout": users.create_logout_url("/login"), "team_name": team.name, "terry": territory, "membs": membs, "membs_count": membs.count(), "keys": memb_keys, } template = JINJA_ENVIRONMENT.get_template("/templates/tmmosc/leader/Team.html") self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Displays form to change info about member of current leader""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_lead and self.session.get("role") == "leader": memb_key = self.request.get("change") member = db.get(memb_key) [sex_m, sex_w] = check_sex(member) temp_values = { "roles": roles, "user_email": email, "logout": users.create_logout_url("/login"), "card_title": u"Изменение участника", "memb_name": member.surname, "birthdate": member.birthdate, "qual": member.qualification, "sex_m": sex_m, "sex_w": sex_w, "new_memb": False, "memb_key": memb_key, "change": memb_key, } template = JINJA_ENVIRONMENT.get_template("/templates/tmmosc/leader/Member.html") self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def post(self): """Displays members added to current competition to check their groups""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_lead and self.session.get("role") == "leader": comp_key = self.request.POST.get("competition") competition = Competition.get(comp_key) days_count = competition.days_count membs_by_day = [] show_tables = False for i in range(days_count): # add members (keys) for each day membs_key_day = self.request.POST.getall("checkMemb" + str(i)) membs_i_day = [] for memb_key in membs_key_day: member = Member.get(memb_key) membs_i_day.append(member) if show_tables == False: show_tables = True membs_by_day.append(membs_i_day) show_arrow_back = True for membs_i_day in membs_by_day: if len(membs_i_day) > 0: show_arrow_back = False break dist_query = db.Query(Distance).filter("competition =", competition) distances = dist_query.run() type_lent = [] groups_on_day = [] for dist in distances: type_lent.append(dist.type + " " + dist.lent) dist_infos = dist.distinfo_set.run(batch_size=1000) groups_i_day = [] for info in dist_infos: groups_i_day.append(info.group_name) groups_on_day.append(groups_i_day) temp_values = { "roles": roles, "user_email": email, "logout": users.create_logout_url("/login"), "membs_by_day": membs_by_day, "dists": type_lent, "groups": groups_on_day, "comp_key": comp_key, "show_tables": show_tables, "show_arrow": show_arrow_back, } template = JINJA_ENVIRONMENT.get_template("templates/tmmosc/leader/MembersToDays.html") self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Displays empty form for adding common info of that new competition""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': temp_values = {'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login')} template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/NewCompetitionInfo.html') self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Displays list of team members to mark some on current competition""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_lead and self.session.get("role") == "leader": comp_key = self.request.GET["competition"] competition = Competition.get(comp_key) leader = db.Query(Leader).filter("user ="******"command =", team).order("surname") memb_team = team_q.run(batch_size=1000) entry_membs = [] no_entry_membs = [] days = [] for memb in memb_team: m = db.Query(CompMemb).filter("competition =", competition).filter("member =", memb) membs = m.run() if m.count(): entry_membs.append(memb) m_d = [] for mem in membs: m_d.append(mem.day_numb) days.append(m_d) else: no_entry_membs.append(memb) temp_values = { "roles": roles, "user_email": email, "logout": users.create_logout_url("/login"), "team_name": team.name, "membs_count": team_q.count(), "entry_membs": entry_membs, "no_entry_membs": no_entry_membs, "comp_name": competition.name, "days_count": range(1, int(competition.days_count) + 1), "comp_key": comp_key, "days": days, } template = JINJA_ENVIRONMENT.get_template("templates/tmmosc/leader/MembersToCompetition.html") self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Displays empty form for adding detailed info of that new competition""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': temp_values = {'roles': roles, 'user_email': email, 'distance_dict': json.dumps(json.loads(defaults.DISTANCE_CLASS))} temp_values.update(get_common_info(self)) template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/AddCompetition.html') self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Diplays whole list of members""" user = users.get_current_user() if user: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': members = db.Query(Member).order('nickname') keys = [memb.key() for memb in members] global tooltip_message global tooltip_show tooltip_message = '' tooltip_show = 'none' temp_values = {'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login'), 'disp_tool': tooltip_show, 'tool': tooltip_message, 'members': members, 'keys': keys} template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/MemberList.html') self.response.write(template.render(temp_values)) else: show_unauth_page(self) else: show_unauth_page(self)
def get(self): """Displays empty form to add info about new member of current leader""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_lead and self.session.get("role") == "leader": pass_to_edit = generate_pass() temp_values = { "roles": roles, "user_email": email, "logout": users.create_logout_url("/login"), "edit_pass": pass_to_edit, "card_title": u"Новый участник команды", "new_memb": True, } template = JINJA_ENVIRONMENT.get_template("/templates/tmmosc/leader/Member.html") self.response.write(template.render(temp_values)) else: show_unauth_page(self)
def get(self): """Displays info about competition stored in database""" user = users.get_current_user() key = self.request.GET['dbKey'] comp = Competition.get(key) info_values = info_from_db(comp) diz_values = diz_from_db(comp) memb_values = membs_from_db(comp) temp_values = {'start': format_date(str(comp.d_start)), 'finish': format_date(str(comp.d_finish)), 'name': comp.name, 'days_count': range(1, comp.days_count + 1), 'comp_id': comp.key()} temp_values.update(info_values) temp_values.update(diz_values) temp_values.update(memb_values) if not user: # user is anonim login = users.create_login_url(dest_url='/postSignIn') temp_values.update({'action': '/entryOneMemb', 'login': login}) template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/CertainCompetition.html') else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) temp_values.update({'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login')}) if is_org and self.session.get('role') == 'organizer': action = '' template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/CertainCompetition.html') elif is_lead and self.session.get('role') == 'leader': action = '/entryMembs' template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/leader/CertainCompetition.html') elif is_memb and self.session.get('role') == 'member': action = '/entryOneMemb' template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/member/CertainCompetition.html') else: action = '/entryOneMemb' template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/CertainCompetition.html') temp_values.update({'action': action}) self.response.write(template.render(temp_values))
def post(self): """Saves filled form described new competition""" user = users.get_current_user() if not user: show_unauth_page(self) else: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': [competition, comp_values, errors] = post_competition(self) if errors: return self.response.write(errors) info_values = post_info(self, competition) diz_values = post_diz(self, competition) temp_values = {'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login')} temp_values.update(comp_values) temp_values.update(info_values) temp_values.update(diz_values) time.sleep(0.1) self.redirect('/') else: show_unauth_page(self)
def post(self): """Finds organizers by keyword""" user = users.get_current_user() if user: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': search_fio = self.request.POST['findOrganizer'] orgs = db.Query(Organizer).filter('nickname >=', search_fio).filter('nickname <=', search_fio+'1')\ .order('nickname') keys = [] for org in orgs: keys.append(org.key()) global tooltip_message global tooltip_show temp_values = {'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login'), 'disp_tool': tooltip_show, 'tool': tooltip_message, 'organizers': orgs, 'keys': keys} template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/OrganizerList.html') self.response.write(template.render(temp_values)) else: show_unauth_page(self) else: show_unauth_page(self)
def get(self): """Displays whole list of organizers""" user = users.get_current_user() if user: email = user.email() [is_org, is_lead, is_memb] = OtherHandlers.find_user(email) roles = OtherHandlers.create_roles_head(self, is_org, is_lead, is_memb) if is_org and self.session.get('role') == 'organizer': orgs = db.Query(Organizer).order('nickname') keys = [] for org in orgs: keys.append(org.key()) global tooltip_message global tooltip_show temp_values = {'roles': roles, 'user_email': email, 'logout': users.create_logout_url('/login'), 'disp_tool': tooltip_show, 'tool': tooltip_message, 'organizers': orgs, 'keys': keys} template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/organizer/OrganizerList.html') else: temp_values = {'img_src': '../static/img/er401.png', 'er_name': '401', 'login_redir': users.create_login_url('/reg/newCompetition')} template = JINJA_ENVIRONMENT.get_template('templates/tmmosc/ErrorPage.html') self.response.write(template.render(temp_values)) else: show_unauth_page(self)