def do_PUT(self): company = self.context.company try: company.country = get_json_unicode(self.input, 'country', False, company.country, length=3) company.employees = get_json_token(self.input, 'employees', CompanySchema['employees'], False, company.employees) company.conductor = get_json_token(self.input, 'conductor', CompanySchema['conductor'], False, company.conductor) company.referer = get_json_token(self.input, 'referer', CompanySchema['referer'], False, company.referer) company.workers_participated = get_json_bool( self.input, 'workers-participated', False, company.workers_participated) company.needs_met = get_json_bool(self.input, 'needs-met', False, company.needs_met) company.recommend_tool = get_json_bool(self.input, 'recommend-tool', False, company.recommend_tool) except (KeyError, ValueError) as e: return {'type': 'error', 'message': str(e)} return self.do_GET()
def do_PUT(self): company = self.context.company try: company.country = get_json_unicode(self.input, 'country', False, company.country, length=3) company.employees = get_json_token(self.input, 'employees', CompanySchema['employees'], False, company.employees) company.conductor = get_json_token(self.input, 'conductor', CompanySchema['conductor'], False, company.conductor) company.referer = get_json_token(self.input, 'referer', CompanySchema['referer'], False, company.referer) company.workers_participated = get_json_bool(self.input, 'workers-participated', False, company.workers_participated) except (KeyError, ValueError) as e: return {'type': 'error', 'message': str(e)} return self.do_GET()
def do_PUT(self): self.risk = self.request.survey.restrictedTraverse( self.context.zodb_path.split('/')) if 'priority' in self.input: if self.risk.type in ['top5', 'policy']: return {'type': 'error', 'message': 'Can not set priority for top-5 or ' 'policy risks'} self.context.priority = get_json_token(self.input, 'priority', IRisk['default_priority'], default=self.context.priority) self.context.comment = self.input.get('comment', self.context.comment) return self.do_GET()
def do_PUT(self): self.risk = self.request.survey.restrictedTraverse( self.context.zodb_path.split('/')) if 'priority' in self.input: if self.risk.type in ['top5', 'policy']: return { 'type': 'error', 'message': 'Can not set priority for top-5 or ' 'policy risks' } self.context.priority = get_json_token( self.input, 'priority', IRisk['default_priority'], default=self.context.priority) self.context.comment = self.input.get('comment', self.context.comment) return self.do_GET()
def do_PUT(self): self.risk = self.request.survey.restrictedTraverse( self.context.zodb_path.split('/')) if self.risk.type in ['top5', 'policy']: return {'type': 'error', 'message': 'Can not evaluate a %s risk' % self.risk.type} try: if self.risk.evaluation_method == 'direct': self.context.priority = get_json_token(self.input, 'priority', IRisk['default_priority'], default=self.context.priority) else: algorithm = evaluation_algorithm(self.risk) if algorithm == 'french': self.context.severity = get_json_token(self.input, 'severity', IFrenchEvaluation['default_severity'], self.context.severity) self.context.frequency = get_json_token(self.input, 'frequency', IFrenchEvaluation['default_frequency'], self.context.frequency) else: # Kinney self.context.probability = get_json_token(self.input, 'probability', IKinneyEvaluation['default_probability'], self.context.probability) self.context.frequency = get_json_token(self.input, 'frequency', IKinneyEvaluation['default_frequency'], self.context.frequency) self.context.effect = get_json_token(self.input, 'effect', IKinneyEvaluation['default_effect'], self.context.effect) calculate_priority(self.context, self.risk) except (KeyError, ValueError) as e: return {'type': 'error', 'message': str(e)} return self.do_GET()
def do_PUT(self): company = self.context.dutch_company try: company.title = get_json_string(self.input, 'title', default=company.title, length=128) if 'visit-address' in self.input: input = self.input['visit-address'] company.address_visit_address = get_json_string( input, 'address', default=company.address_visit_address) company.address_visit_postal = get_json_string( input, 'postal', default=company.address_visit_postal, length=16) company.address_visit_city = get_json_string( input, 'city', default=company.address_visit_city, length=64) if 'postal-address' in self.input: input = self.input['postal-address'] company.address_postal_address = get_json_string( input, 'address', default=company.address_postal_address) company.address_postal_postal = get_json_string( input, 'postal', default=company.address_postal_postal, length=16) company.address_postal_city = get_json_string( input, 'city', default=company.address_postal_city, length=64) company.email = get_json_string(self.input, 'email', default=company.email, length=128) company.phone = get_json_string(self.input, 'phone', default=company.email, length=64) company.activity = get_json_string(self.input, 'activity', default=company.activity, length=64) company.department = get_json_string(self.input, 'department', default=company.department, length=64) company.location = get_json_string(self.input, 'location', default=company.location, length=64) company.submit_date = get_json_date(self.input, 'submitted', default=company.submit_date) company.employees = get_json_token(self.input, 'employees', DutchCompanySchema['employees'], company.employees) company.absentee_percentage = get_json_decimal(self.input, 'absentee-percentage', default=company.absentee_percentage) company.accidents = get_json_int(self.input, 'accidents', default=company.accidents) company.incapacitated_workers = get_json_int(self.input, 'incapacitated-workers', default=company.incapacitated_workers) if 'submitter' in self.input: input = self.input['submitter'] company.submitter_name = get_json_string(input, 'name', default=company.submitter_name, length=64) company.submitter_function = get_json_string(input, 'function', default=company.submitter_function, length=64) company.arbo_expert = get_json_string(self.input, 'arbo-expert', default=company.arbo_expert, length=128) company.works_council_approval = get_json_date(self.input, 'works-council-approval', default=company.works_council_approval) except (KeyError, ValueError) as e: return {'type': 'error', 'message': str(e)} return self.do_GET()