@@ -10,7 +10,7 @@ class JSONForms
1010 /**
1111 * Valida os campos do formulário
1212 *
13- * @param $request Campos do do formulário a serem validados
13+ * @param $request Campos do formulário a serem validados
1414 * @param $fila Fila de onde vai pegar as regras de validação
1515 *
1616 * @return Array Contendo a validação
@@ -22,7 +22,7 @@ public static function buildRules($request, $fila)
2222 if ($ template ) {
2323 foreach ($ template as $ key => $ json ) {
2424 if (isset ($ json ->validate )) {
25- $ field = " extras. " . $ key ;
25+ $ field = ' extras. ' . $ key ;
2626 $ validate [$ field ] = $ json ->validate ;
2727 }
2828 }
@@ -39,8 +39,11 @@ protected static function JSON2Form($template, $data, $perfil)
3939 foreach ($ template as $ key => $ json ) {
4040 $ input = [];
4141 $ type = $ json ->type ;
42-
43- $ input [] = Form::label ("extras[ $ key] " , $ template ->$ key ->label , ['class ' => 'control-label ' ]);
42+ $ label = $ template ->$ key ->label ;
43+ if (isset ($ json ->validate ) && strpos ($ json ->validate , 'required ' ) !== false ) {
44+ $ label = '<i class="fas fa-star-of-life fa-sm text-danger"></i> ' . $ label ;
45+ }
46+ $ input [] = Form::label ("extras[ $ key] " , $ label , ['class ' => 'control-label ' ]);
4447
4548 # valores preenchidos
4649 # aqui temos de usar "or" pois "||" não preenche corretamente
@@ -49,11 +52,19 @@ protected static function JSON2Form($template, $data, $perfil)
4952 switch ($ type ) {
5053 //caso seja um select passa o valor padrao
5154 case 'select ' :
52- $ input [] = Form::$ type ("extras[ $ key] " , $ json ->value , $ value , ['class ' => 'form-control ' , 'placeholder ' => 'Selecione... ' ]);
55+ $ attrib = ['class ' => 'form-control ' , 'placeholder ' => 'Selecione... ' ];
56+ if (isset ($ json ->validate ) && strpos ($ json ->validate , 'required ' ) !== false ) {
57+ $ attrib ['required ' ] = '' ;
58+ }
59+ $ input [] = Form::$ type ("extras[ $ key] " , $ json ->value , $ value , $ attrib );
5360 break ;
5461
5562 default :
56- $ input [] = Form::$ type ("extras[ $ key] " , $ value , ['class ' => 'form-control ' , 'rows ' => '3 ' ]);
63+ $ attrib = ['class ' => 'form-control ' , 'rows ' => '3 ' ];
64+ if (isset ($ json ->validate ) && strpos ($ json ->validate , 'required ' ) !== false ) {
65+ $ attrib ['required ' ] = '' ;
66+ }
67+ $ input [] = Form::$ type ("extras[ $ key] " , $ value , $ attrib );
5768 break ;
5869 }
5970
@@ -77,7 +88,7 @@ public static function generateForm($fila, $chamado = null, $perfil = null)
7788 $ template = json_decode ($ fila ->template );
7889 $ form = [];
7990 if ($ template ) {
80- $ data = ( $ chamado) ? json_decode ($ chamado ->extras ) : null ;
91+ $ data = $ chamado ? json_decode ($ chamado ->extras ) : null ;
8192 $ form = JSONForms::JSON2Form ($ template , $ data , $ perfil );
8293 }
8394 return $ form ;
0 commit comments