Beispiel #1
0
 protected function validData($reportData)
 {
     $userRoleDescription = strtolower(Zend_Auth::getInstance()->getIdentity()->getRoleLongDescription());
     $validationRequired = !in_array($userRoleDescription, array('gestor', 'digitador'), true);
     if ($validationRequired) {
         $titulo = $reportData['title'];
         // str_replace(, "\n", '');
         $texto = str_replace("\n", ' ', $reportData['report']);
         // preg_replace(array('~[:;!?]|[.,](?![0-9])|\'s~', '~\s+~'), array('', ' '), $reportData['report']); //
         $palavras = trim($titulo) . ' ' . trim($texto);
         $characters = mb_strlen($titulo, "UTF-8") + mb_strlen($texto, "UTF-8");
         $words = Vtx_Util_Formatting::contadorPalavras($titulo) + Vtx_Util_Formatting::contadorPalavras($texto);
         //$characters = $words;
         //$words = count(explode(' ', trim($palavras)));
         //var_dump($palavras,$words,$characters);
         /*
         var_dump($words);
         die;
         um dois; três qu4tró% (çinço) çeis sete
         39
         / *
          * O Relato deverá ter de 60 linhas a 120 linhas,
                     de 500 a 1200 palavras e de 3.000 a 7.140 caracteres,
                     contando o Título.
         */
         if ($characters < 2900 or $words < 480 or $words > 1300) {
             return array('status' => false, 'messageError' => 'O Relato deverá ter mais de 3.000 caracteres e ter de 500 a 1200 palavras,
                     contando o Título.');
         }
         if ($characters > 7240 or $words < 480 or $words > 1300) {
             return array('status' => false, 'messageError' => 'O Relato deverá ter menos de  7.140 caracteres e ter de 500 a 1200 palavras,
                     contando o Título.');
         }
     }
     return array('status' => true);
 }