/**
  * A basic test example.
  *
  * @return void
  */
 public function testIsRequired()
 {
     $rules_array = array('required' => 'on');
     $rules = new FieldRules($rules_array);
     $normalized_rules = $rules->normalize();
     $has_required = array_key_exists('required', $normalized_rules);
     $this->assertTrue($has_required);
 }
Example #2
0
 public function updateFormFields(FormRequest $request)
 {
     foreach ($request->fields as $request_key => $request_value) {
         $field = Field::findOrNew($request_key);
         if (Gate::denies('hasFormAccess', $field)) {
             abort(403);
         }
         $field->name = $request_value['name'];
         $field->description = $request_value['description'];
         $field->type = $request_value['type'];
         $field->form_id = $this->id;
         $field->position = $request_value['position'];
         // Generate a blank Rules Array if needed
         $rules_array = !empty($request_value['rules']) ? $request_value['rules'] : array();
         $rules = new FieldRules($rules_array);
         $field->rules = implode('|', $rules->normalize());
         $field->save();
         if ($field->hasOptions()) {
             $this->updateFieldOptions($field, $request_value['fieldOptions']);
         }
     }
 }
Example #3
0
 public function getRules()
 {
     $rules = new FieldRules($this->rules);
     return json_decode($rules->getRules());
 }