Exemplo n.º 1
0
 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()
Exemplo n.º 2
0
 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()
Exemplo n.º 3
0
 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()
Exemplo n.º 4
0
 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()
Exemplo n.º 5
0
 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()
Exemplo n.º 6
0
 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()