def settings_groups_view(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate group_id = self.request.matchdict['group_id'] group = DBSession.query(Group).filter(Group.id==group_id).first() if group.id: # privilege_ids = [privilege.id for privilege in group.privileges] tmp_group = { 'id':group.id, 'name':group.name, 'leader_id':group.leader_id, 'privileges':group.privileges } privileges = DBSession.query(Privilege).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/groups/', 'text':_('Groups')}) self.request.bread.append({'url':'/settings/groups/view/'+str(group.id)+'/', 'text':_('View') + ' ' + helpers.decodeString(group.name)}) return {'group':tmp_group, 'privileges':privileges} else: return HTTPFound(location='/settings/groups/')
def settings_organization_club_edit(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate tmp_club = { 'name':'', 'short_name':'', 'leader_id':'', 'subunit_id':0, 'club_code':'', } club_id = self.request.matchdict['club_id'] club = DBSession.query(Club).filter(Club.id==club_id).first() if club.id: tmp_club = { 'name':club.name, 'short_name':club.short_name, 'leader_id':club.leader_id, 'subunit_id':club.subunit_id, 'club_code':club.club_code } if self.request.method == 'POST': tmp_club['name'] = self.request.POST.get('name').strip() tmp_club['short_name'] = self.request.POST.get('short_name').strip() #tmp_club['leader_id'] = self.request.POST.get('leader_id').strip() tmp_club['leader_id'] = 0 tmp_club['subunit_id'] = self.request.POST.get('subunit_id').strip() tmp_club['club_code'] = self.request.POST.get('club_code').strip() if tmp_club['name']: club.name = tmp_club['name'] club.short_name = tmp_club['short_name'] club.leader_id = tmp_club['leader_id'] club.subunit_id = tmp_club['subunit_id'] club.club_code = tmp_club['club_code'] DBSession.add(club) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = 'Club' userAudit.model_id = club.id userAudit.action = 'Update' userAudit.revision = club.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Club saved."), 'success') return HTTPFound(location='/settings/organization/') else: self.request.session.flash(_(u"Please provide club name."), 'error') subunits = DBSession.query(SubUnit).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/organization/', 'text':_('Organization')}) self.request.bread.append({'url':'/settings/organization/club_edit/'+club_id+'/', 'text':_('Edit club')}) return {'club':tmp_club, 'subunits':subunits}
def getPeoplePresenceCounts(dt, club=0, subunit=0, village=0, subcamp=0, village_kitchen=0): report = DBSession.query(Participant.id) if club != 0: report = report.filter(Participant.club_id == club) if subunit != 0: report = report.filter(Participant.subunit_id == subunit) if village != 0: report = report.filter(Participant.village_id == village) if subcamp != 0: report = report.filter(Participant.subcamp_id == subcamp) if village_kitchen != 0: village_kitchen = DBSession.query(VillageKitchen).get(village_kitchen) if village_kitchen != None: village_ids = [] if len(village_kitchen.villages) > 0: for village in village_kitchen.villages: village_ids.append(village.id) report = report.filter(Participant.village_id.in_(village_ids)) report = report.filter(Participant.active == True) report = report.filter(Participant.latest_status_key != 200) report = report.join(ParticipantPresence).filter( ParticipantPresence.presence_starts <= dt, ParticipantPresence.presence_ends >= dt ) participants_count = report.count() return participants_count
def settings_organization_village_edit(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate tmp_village = { 'name':'', 'short_name':'', 'leader_id':'', 'subcamp_id':0, } village_id = self.request.matchdict['village_id'] village = DBSession.query(Village).filter(Village.id==village_id).first() subcamps = DBSession.query(Subcamp).all() if village.id: tmp_village = { 'name':village.name, 'short_name':village.short_name, 'leader_id':village.leader_id, 'subcamp_id':village.subcamp_id, } if self.request.method == 'POST': tmp_village['name'] = self.request.POST.get('name').strip() tmp_village['short_name'] = self.request.POST.get('short_name').strip() #tmp_village['leader_id'] = self.request.POST.get('leader_id').strip() tmp_village['leader_id'] = 0 tmp_village['subcamp_id'] = self.request.POST.get('subcamp_id').strip() if tmp_village['name']: village.name = tmp_village['name'] village.short_name = tmp_village['short_name'] village.leader_id = tmp_village['leader_id'] village.subcamp_id = tmp_village['subcamp_id'] DBSession.add(village) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = 'Village' userAudit.model_id = village.id userAudit.action = 'Update' userAudit.revision = village.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Village saved."), 'success') return HTTPFound(location='/settings/organization/') else: self.request.session.flash(_(u"Please provide village name."), 'error') self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/organization/', 'text':_('Organization')}) self.request.bread.append({'url':'/settings/organization/village_edit/'+village_id+'/', 'text':_('Edit village')}) return {'village':tmp_village, 'subcamps':subcamps}
def checkIfUsernameExists(self, username, skipId = None): if username == '': return True if skipId != None: users_count = DBSession.query(User).filter(User.username==username, User.id != skipId).count() else: users_count = DBSession.query(User).filter(User.username==username).count() if users_count > 0: return True return False
def checkIfGroupnameExists(self, groupname, skipId = None): if groupname == '': return True if skipId != None: groups_count = DBSession.query(Group).filter(Group.name==groupname, Group.id != skipId).count() else: groups_count = DBSession.query(Group).filter(Group.name==groupname).count() if groups_count > 0: return True return False
def checkIfSettignKeyExists(self, setting_key, skipId=None): if setting_key == "": return True if skipId != None: settings_count = ( DBSession.query(Setting).filter(Setting.setting_key == setting_key, Setting.id != skipId).count() ) else: settings_count = DBSession.query(Setting).filter(Setting.setting_key == setting_key).count() if settings_count > 0: return True return False
def medical_settings(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate reasons = DBSession.query(MedicalReason).order_by(MedicalReason.title).all() treatmenttypes = DBSession.query(MedicalTreatmentType).order_by(MedicalTreatmentType.title).all() methodsofarrival = DBSession.query(MedicalMethodOfArrival).order_by(MedicalMethodOfArrival.title).all() self.request.bread.append({'url':'/medical/', 'text':_('Medical')}) self.request.bread.append({'url':'/medical/settings/', 'text':_('Settings')}) return {'reasons':reasons, 'treatmenttypes':treatmenttypes, 'methodsofarrival':methodsofarrival}
def medical_card_view(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate card_id = self.request.matchdict['card_id'] medicalCard = DBSession.query(MedicalCard).filter(MedicalCard.id==card_id).first() participant_id = medicalCard.participant_id participant = DBSession.query(Participant).filter(Participant.id==participant_id).first() participant.getParticipantMedicalData() medicalCardEvents = DBSession.query(MedicalCardEvent).filter(MedicalCardEvent.card_id==card_id).order_by(MedicalCardEvent.event_time).all() medicalParticipantAdditional = DBSession.query(MedicalParticipantAdditional).filter(MedicalParticipantAdditional.participant_id==participant_id).first() reasons = DBSession.query(MedicalReason).order_by(MedicalReason.title).all() treatmenttypes = DBSession.query(MedicalTreatmentType).order_by(MedicalTreatmentType.title).all() methodsofarrival = DBSession.query(MedicalMethodOfArrival).order_by(MedicalMethodOfArrival.title).all() participant_cards = DBSession.query(MedicalCard).filter(MedicalCard.participant_id==participant_id).all() self.request.bread.append({'url':'/medical/', 'text':_('Medical')}) self.request.bread.append({'url':'/medical/card/view/'+str(card_id)+'/', 'text':_('View card')}) return {'medicalCard':medicalCard, 'participant':participant, 'medicalParticipantAdditional':medicalParticipantAdditional, 'medicalCardEvents':medicalCardEvents, 'reasons':reasons, 'treatmenttypes':treatmenttypes, 'methodsofarrival':methodsofarrival, 'participant_cards':participant_cards}
def settings_organization_village_kitchen_new(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate tmp_village_kitchen = { 'name':'', 'short_name':'', 'leader_id':'', 'subcamp_id':0, 'village_ids':[] } subcamps = DBSession.query(Subcamp).all() villages = DBSession.query(Village).all() if self.request.method == 'POST': tmp_village_kitchen['name'] = self.request.POST.get('name').strip() tmp_village_kitchen['short_name'] = self.request.POST.get('short_name').strip() #tmp_village_kitchen['leader_id'] = self.request.POST.get('leader_id').strip() tmp_village_kitchen['leader_id'] = 0 tmp_village_kitchen['subcamp_id'] = self.request.POST.get('subcamp_id').strip() if tmp_village_kitchen['name']: village_kitchen = VillageKitchen() village_kitchen.name = tmp_village_kitchen['name'] village_kitchen.short_name = tmp_village_kitchen['short_name'] village_kitchen.leader_id = tmp_village_kitchen['leader_id'] village_kitchen.subcamp_id = tmp_village_kitchen['subcamp_id'] village_kitchen.villages = DBSession.query(Village).filter(Village.id.in_(self.request.POST.getall('villages'))).all() DBSession.add(village_kitchen) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = 'VillageKitchen' userAudit.model_id = village_kitchen.id userAudit.action = 'Create' userAudit.revision = village_kitchen.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Village kitchen created."), 'success') return HTTPFound(location='/settings/organization/') else: self.request.session.flash(_(u"Please provide village_kitchen name."), 'error') self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/organization/', 'text':_('Organization')}) self.request.bread.append({'url':'/settings/organization/village_kitchen_new/', 'text':_('New village_kitchen')}) return {'village_kitchen':tmp_village_kitchen, 'subcamps':subcamps, 'villages':villages}
def getParticipantMedicalData(self): request = get_current_request() if security.has_permission('office_participant_view_medical', request.context, request) or security.has_permission('medical_view', request.context, request): self.medical_data = DBSession.query(ParticipantMedical).filter(ParticipantMedical.participant_id==self.id).options(joinedload('*')).first() if self.medical_data == None: self.medical_data = ParticipantMedical() medical_data_searched = True
def json_search_participant(self): _ = self.request.translate if self.request.method == 'POST': search_string = self.request.POST.get('searchstr').strip() if search_string == '': self.request.session.flash(_(u"Empty search, please provide search string."), 'error') else: participants = DBSession.query(Participant).filter( or_( Participant.firstname.like('%'+search_string+'%'), Participant.lastname.like('%'+search_string+'%'), Participant.nickname.like('%'+search_string+'%'), Participant.member_no.like('%'+search_string+'%') )).all() participants_tmp = [] for participant in participants: participant_tmp = { 'id':participant.id, 'firstname':helpers.decodeString(participant.firstname), 'lastname':helpers.decodeString(participant.lastname), } participants_tmp.append(participant_tmp) return json.dumps(participants_tmp) return {}
def getPeoplePresenceCountsByAgegroup(dt, club=0, subunit=0, village=0, subcamp=0): agegroups = {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0} report = DBSession.query(Participant.age_group, func.count(Participant.age_group)) if club != 0: report = report.filter(Participant.club_id == club) if subunit != 0: report = report.filter(Participant.subunit_id == subunit) if village != 0: report = report.filter(Participant.village_id == village) if subcamp != 0: report = report.filter(Participant.subcamp_id == subcamp) report = report.filter(Participant.active == True) report = report.filter(Participant.latest_status_key != 200) report = report.join(ParticipantPresence).filter( ParticipantPresence.presence_starts <= dt, ParticipantPresence.presence_ends >= dt ) report = report.group_by(Participant.age_group) participants_count = report.all() for count in participants_count: agegroups[count[0]] = count[1] return agegroups
def settings_users_deactivate(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate user_id = self.request.matchdict['user_id'] if user_id != 1: user = DBSession.query(User).get(user_id) user.active = 0 user.metadata_modified = datetime.now() DBSession.add(user) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = 'User' userAudit.model_id = user.id userAudit.action = 'Deactivated' userAudit.revision = user.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"User deactivated."), 'success') return HTTPFound(location='/settings/users/')
def security_shifts_logitem_delete(self): if self.request.redirect_forbidden: return HTTPFound(location="/forbidden/") elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location="/settings/me/edit/") _ = self.request.translate logitem_id = self.request.matchdict["logitem_id"] logitem = DBSession.query(SecurityLogItem).filter(SecurityLogItem.id == logitem_id).first() if logitem != None: logitem.deleted = True DBSession.add(logitem) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = "SecurityLogItem" userAudit.model_id = logitem.id userAudit.action = "Deleted" userAudit.revision = logitem.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Log item deleted."), "success") return HTTPFound(location="/security/shifts/view/" + str(logitem.shift_id) + "/") self.request.session.flash(_(u"Error finding logitem to delete."), "Error") return HTTPFound(location="/security/shifts/view/" + str(logitem.shift_id) + "/")
def login(self): _ = self.request.translate browser_error = checkBrowser(self.request) device_error = checkDevice(self.request) login = '' if self.request.method == 'POST': if self.request.POST.get('login') \ and self.request.POST.get('password') \ and self.request.POST.get('login').strip() != '' \ and self.request.POST.get('password').strip() != '': login = self.request.POST.get('login') password = self.request.POST.get('password') user = DBSession.query(User).filter(User.username==login).first() if ( user is not None and user.active and user.validate_password(password, user.password)): headers = security.remember(self.request, user.id) self.request.session.flash(_(u"Welcome, ${username}! You are logged in.", mapping={'username':user.username}), 'success') userLogin = UserLogin(user_id = user.id, ip = self.request.client_addr, user_agent = self.request.user_agent) DBSession.add(userLogin) DBSession.flush() self.request.session['user_login_id'] = userLogin.id if userhelpers.checkUserPasswordChangeNeed(self.request, user): return HTTPFound(location='/settings/me/edit/', headers=headers) return HTTPFound(location='/', headers=headers) self.request.session.flash(_(u"Login failed."), 'error') else: self.request.session.flash(_(u"Login failed. Please provide username and password."), 'error') return {'login':login, 'browser_error':browser_error, 'device_error':device_error}
def getUserLastLoginData(self): return ( DBSession.query(UserLogin) .filter(UserLogin.user_id == self.id) .order_by(UserLogin.login_time.desc()) .first() )
def security_participant_search(self): _ = self.request.translate participants = [] search_string = "" if self.request.method == "POST": search_string = self.request.POST.get("searchstr").strip() if search_string == "": self.request.session.flash(_(u"Empty search, please provide search string."), "error") else: participants = ( DBSession.query(Participant) .filter( or_( Participant.firstname.like("%" + search_string + "%"), Participant.lastname.like("%" + search_string + "%"), Participant.nickname.like("%" + search_string + "%"), Participant.member_no.like("%" + search_string + "%"), ) ) .all() ) self.request.bread.append({"url": "/security/", "text": _("Security")}) self.request.bread.append({"url": "/security/participant/search/", "text": _("Search")}) return {"participants": participants, "search_string": search_string}
def medical_settings_methodofarrivals_edit(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate methodofarrival_id = self.request.matchdict['methodofarrival_id'] methodofarrival = DBSession.query(MedicalMethodOfArrival).filter(MedicalMethodOfArrival.id==methodofarrival_id).first() if self.request.method == 'POST': methodofarrival.title = self.request.POST.get('title').strip() methodofarrival.description = self.request.POST.get('description').strip() if methodofarrival.title != '': DBSession.add(methodofarrival) DBSession.flush() self.request.session.flash(_(u"MethodOfArrival saved."), 'success') return HTTPFound(location='/medical/settings/') else: self.request.session.flash(_(u"Please provide title."), 'error') self.request.bread.append({'url':'/medical/', 'text':_('Medical')}) self.request.bread.append({'url':'/medical/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/medical/settings/methodofarrivals/new/', 'text':_('Edit methodofarrival')}) return {'methodofarrival':methodofarrival}
def medical_settings_treatmenttypes_edit(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate treatmenttype_id = self.request.matchdict['treatmenttype_id'] treatmenttype = DBSession.query(MedicalTreatmentType).filter(MedicalTreatmentType.id==treatmenttype_id).first() if self.request.method == 'POST': treatmenttype.title = self.request.POST.get('title').strip() treatmenttype.description = self.request.POST.get('description').strip() if treatmenttype.title != '': DBSession.add(treatmenttype) DBSession.flush() self.request.session.flash(_(u"Treatmenttype saved."), 'success') return HTTPFound(location='/medical/settings/') else: self.request.session.flash(_(u"Please provide title."), 'error') self.request.bread.append({'url':'/medical/', 'text':_('Medical')}) self.request.bread.append({'url':'/medical/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/medical/settings/treatmenttypes/new/', 'text':_('Edit treatmenttype')}) return {'treatmenttype':treatmenttype}
def security_shifts_view(self): if self.request.redirect_forbidden: return HTTPFound(location="/forbidden/") elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location="/settings/me/edit/") _ = self.request.translate shift_id = self.request.matchdict["shift_id"] shift = DBSession.query(SecurityShift).filter(SecurityShift.id == shift_id).first() if self.request.method == "POST": logitem = SecurityLogItem() logitem.event_type = self.request.POST.get("event_type") logitem.shift_id = shift_id logitem.notified_by = self.request.POST.get("notified_by") logitem.task = self.request.POST.get("task") logitem.content = self.request.POST.get("content") logitem.deleted = False logitem.people_present = self.request.POST.get("people_present") logitem.started = helpers.parseFinnishDateFromString(self.request.POST.get("started"), default_now=True) logitem.ended = helpers.parseFinnishDateFromString(self.request.POST.get("ended")) DBSession.add(logitem) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = "SecurityLogItem" userAudit.model_id = logitem.id userAudit.action = "Create" userAudit.revision = logitem.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Log item created."), "success") return HTTPFound(location="/security/shifts/view/" + shift_id + "/") logitems = ( DBSession.query(SecurityLogItem) .filter(SecurityLogItem.shift_id == shift_id, SecurityLogItem.deleted == False) .order_by(SecurityLogItem.started.desc()) .all() ) self.request.bread.append({"url": "/security/", "text": _("Security")}) self.request.bread.append({"url": "/security/shifts/", "text": _("Shifts")}) self.request.bread.append({"url": "/security/shifts/view/" + shift_id + "/", "text": _("View")}) return {"shift": shift, "logitems": logitems}
def settings_groups_new(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate tmp_group = { 'name':'', 'leader_id':'', 'privileges':'', } if self.request.method == 'POST': tmp_group['name'] = self.request.POST.get('name').strip() # tmp_group['leader_id'] = self.request.POST.get('leader_id').strip() if not self.checkIfGroupnameExists(tmp_group['name']): group = Group(tmp_group['name']) if security.has_permission("settings_users_modify_permissions", self.request.context, self.request): privileges_list = '' if len(self.request.POST.getall('privileges')) > 0: for privilege in DBSession.query(Privilege).filter(Privilege.id.in_(self.request.POST.getall('privileges'))).all(): privileges_list += '|'+privilege.name + '|' group.privileges = privileges_list DBSession.add(group) DBSession.flush() userAudit = UserAudit(self.request.user.id) userAudit.model = 'Group' userAudit.model_id = group.id userAudit.action = 'Create' userAudit.revision = group.metadata_revision DBSession.add(userAudit) DBSession.flush() self.request.session.flash(_(u"Group created."), 'success') if group.id != '' and group.id != 0: return HTTPFound(location='/settings/groups/view/'+str(group.id)) else: self.request.session.flash(_(u"Group with that name allready exists."), 'error') privileges = DBSession.query(Privilege).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/groups/', 'text':_('Groups')}) self.request.bread.append({'url':'/settings/groups/new/', 'text':_('New')}) return {'group':tmp_group, 'privileges':privileges}
def settings_groups_delete(self): _ = self.request.translate group_id = self.request.matchdict['group_id'] if group_id != 1: group = DBSession.query(Group).get(group_id) DBSession.delete(group) return HTTPFound(location='/settings/groups/')
def settings_users_frontpage(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate users = DBSession.query(User).order_by(User.active.desc(), User.lastname, User.firstname, User.username).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/users/', 'text':_('Users')}) return {'users':users}
def settings_groups_frontpage(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate groups = DBSession.query(Group).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/groups/', 'text':_('Groups')}) return {'groups':groups}
def security_list(self): if self.request.redirect_forbidden: return HTTPFound(location="/forbidden/") elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location="/settings/me/edit/") _ = self.request.translate shifts = DBSession.query(SecurityShift).order_by(SecurityShift.starts).all() self.request.bread.append({"url": "/security/", "text": _("Security")}) self.request.bread.append({"url": "/security/shifts/", "text": _("Shifts")}) return {"shifts": shifts}
def settings_list(self): if self.request.redirect_forbidden: return HTTPFound(location="/forbidden/") elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location="/settings/me/edit/") _ = self.request.translate settings = DBSession.query(Setting).order_by(Setting.setting_key).all() self.request.bread.append({"url": "/settings/", "text": _("Settings")}) self.request.bread.append({"url": "/settings/list/", "text": _("List")}) return {"settings": settings}
def medical_card_list(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate cards = DBSession.query(MedicalCard).all() return {'cards':cards}
def get_user(request): userid = unauthenticated_userid(request) if userid != None: user = DBSession.query(User).get(userid) if user == None: return False else: return user else: return False
def settings_organization_frontpage(self): if self.request.redirect_forbidden: return HTTPFound(location='/forbidden/') elif userhelpers.checkUserPasswordChangeNeed(self.request): return HTTPFound(location='/settings/me/edit/') _ = self.request.translate subcamps = DBSession.query(Subcamp).all() self.request.bread.append({'url':'/settings/', 'text':_('Settings')}) self.request.bread.append({'url':'/settings/organization/', 'text':_('Organization')}) return {'subcamps':subcamps}