예제 #1
0
 function do_upload()
 {
     // Setup
     $config['upload_path'] = APPPATH . '../photos/';
     $config['allowed_types'] = 'gif|jpg|png|jpeg';
     $config['max_size'] = '400';
     $config['max_width'] = '1024';
     $config['max_height'] = '1024';
     $config['encrypt_name'] = TRUE;
     $this->load->library('upload', $config);
     // El campo tipo file a enviarse
     $field_name = "selectedImageFile";
     // Lo cargo y actuo segun el error.
     if (!$this->upload->do_upload($field_name)) {
         $error = array('error' => $this->upload->display_errors());
         $outMessage =& $this->DTO->getOutMessage();
         $error['error'] = strip_tags($error['error']);
         $processError = new TSLProcessErrorMessage(80000, $error['error'], null);
         $outMessage->addProcessError($processError);
     } else {
         $data = array('imageUrl' => '../../photos/' . $this->upload->data()['file_name']);
         $this->DTO->getOutMessage()->setSuccess(true);
         $this->DTO->getOutMessage()->setResultData($data);
     }
     $data['data'] =& $this->responseProcessor->process($this->DTO);
     $this->load->view($this->getView(), $data);
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new RegionesModel();
     $model->set_regiones_codigo($dto->getParameterValue('regiones_codigo'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new CompetenciaTipoModel();
     $model->set_competencia_tipo_codigo($dto->getParameterValue('competencia_tipo_codigo'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new EntrenadoresNivelModel();
     $model->set_entrenadores_nivel_codigo($dto->getParameterValue('entrenadores_nivel_codigo'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new UsuariosPerfilModel();
     $model->set_usuario_perfil_id($dto->getParameterValue('usuario_perfil_id'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new AtletasCarnetsModel();
     $model->set_atletas_carnets_id($dto->getParameterValue('atletas_carnets_id'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new LigasClubesModel();
     $model->set_ligasclubes_id($dto->getParameterValue('ligasclubes_id'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new PruebasClasificacionModel();
     $model->set_pruebas_clasificacion_codigo($dto->getParameterValue('pruebas_clasificacion_codigo'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new UnidadMedidaModel();
     $model->set_unidad_medida_codigo($dto->getParameterValue('unidad_medida_codigo'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  *
  * @param \TSLIDataTransferObj $dto
  * @return \TSLDataModel
  */
 protected function &getModelToDelete(\TSLIDataTransferObj $dto)
 {
     $model = new PruebasDetalleModel();
     $model->set_pruebas_detalle_id($dto->getParameterValue('pruebas_detalle_id'));
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 protected function &getModelToUpdate(\TSLIDataTransferObj $dto)
 {
     $model = new \app\common\model\impl\TSLAppPerfilDetalleModel();
     $model->set_perfdet_id($dto->getParameterValue('perfdet_id'));
     $model->set_perfil_id($dto->getParameterValue('perfil_id'));
     $model->set_perfdet_accessdef($dto->getParameterValue('perfdet_accessdef'));
     $model->set_perfdet_accagregar($dto->getParameterValue('perfdet_accagregar'));
     $model->set_perfdet_accactualizar($dto->getParameterValue('perfdet_accactualizar'));
     $model->set_perfdet_accleer($dto->getParameterValue('perfdet_accleer'));
     $model->set_perfdet_acceliminar($dto->getParameterValue('perfdet_acceliminar'));
     $model->set_perfdet_accimprimir($dto->getParameterValue('perfdet_accimprimir'));
     $model->set_menu_id($dto->getParameterValue('menu_id'));
     if ($dto->getParameterValue('activo') != NULL) {
         $model->setActivo($dto->getParameterValue('activo'));
     }
     $model->setVersionId($dto->getParameterValue('versionId'));
     $model->set_Usuario_mod($dto->getSessionUser());
     return $model;
 }
 /**
  * Genera la salida en JSON.
  *
  * @param TSLIDataTransferObj con el Data Transfer Object a procesar
  * @return un String con el DTO en formato JSON
  */
 public function &process(TSLIDataTransferObj &$DTO)
 {
     if (isset($DTO)) {
         /* @var $outMessage TSLOutMessage */
         $outMessage =& $DTO->getOutMessage();
         $out = '"success":' . ($outMessage->isSuccess() == FALSE ? '"false"' : '"true"');
         if (strlen($outMessage->getAnswerMesage()) > 0) {
             $out .= ',"am":[{"msg": "' . $outMessage->getAnswerMesage() . '","ce":"' . $outMessage->getErrorCode() . '"}]';
         }
         if ($outMessage->isSuccess() == FALSE) {
             if ($outMessage->hasFieldErrors()) {
                 $fldErrors =& $outMessage->getFieldErrors();
                 // Si ya tiene longitud , ponemos una coma para indicar
                 // un nuevo elemento.
                 if (isset($out) and strlen($out) > 0) {
                     $out .= ',';
                 }
                 // la lista de field errors.
                 $out .= '"errors":{';
                 $count = count($fldErrors);
                 for ($i = 0; $i < $count; $i++) {
                     $out .= $fldErrors[$i]->getField() . ':"' . $fldErrors[$i]->getErrorMessage() . '"';
                     if ($i < $count - 1) {
                         $out .= ',';
                     }
                 }
                 $out .= '}';
             } else {
                 if ($outMessage->hasProcessErrors()) {
                     $processErrors =& $outMessage->getProcessErrors();
                     // Si ya tiene longitud , ponemos una coma para indicar
                     // un nuevo elemento.
                     if (isset($out) and strlen($out) > 0) {
                         $out .= ',';
                     }
                     // la lista de process errors.
                     $out .= '"pe":[';
                     $count = count($processErrors);
                     for ($i = 0; $i < $count; $i++) {
                         $perr = str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $processErrors[$i]->getErrorMessage());
                         // Si tiene excepcion procesamos.
                         $ex = $processErrors[$i]->getException();
                         if (isset($ex)) {
                             if (isset($perr)) {
                                 $out .= '{"msg":"' . $perr . ' - ' . str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . '","ce":"' . $processErrors[$i]->getErrorCode() . '"';
                             } else {
                                 $out .= '{"msg":"' . str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . '","ce":"' . $processErrors[$i]->getErrorCode() . '"';
                             }
                         } else {
                             $out .= '{"msg":"' . $perr . '","ce":"' . $processErrors[$i]->getErrorCode() . '"';
                         }
                         $out .= '}';
                         if ($i < $count - 1) {
                             $out .= ',';
                         }
                     }
                     $out .= ']';
                 }
             }
         }
         // Si tiene parametros de salida los agregamos  antres de la data.
         $outParams =& $outMessage->getOutputparameters();
         if (is_array($outParams)) {
             foreach ($outParams as $i => $value) {
                 $out .= ',' . $i . ':' . $value;
             }
         }
         // Procesamos la data
         $data = $outMessage->getResultData();
         if (isset($data)) {
             $out .= ',"data":';
             $this->_processExtraData($outMessage->getResultData());
             $out .= json_encode(TSLUtilsHelper::array_ut8_encode_recursive($outMessage->getResultData()));
         }
         $out = '{' . $out . '}';
         return $out;
     } else {
         $out = '?????????????????';
         return $out;
     }
 }
 /**
  * Agrega un registro a la persistencia.
  *
  * @param \TSLIDataTransferObj $dto EL DATA TRANSFER OBJECT contendra todos los
  * datos requeridos del registro a agregar, se espera como parte de los parametros
  * los datos a usarse para crear el modelo a actualizar.
  *
  * Ya sea en caso de error o no , la respuesta estara contenida en el DTO.
  *
  * @see \TSLIBasicRecordDAO
  * @see \TSLBasicRecordDAO
  */
 private function add(\TSLIDataTransferObj $dto)
 {
     // Obtengo referencia a los constraints
     $constraints =& $dto->getConstraints();
     // el modelo
     $model =& $this->getModelToAdd($dto);
     /* @var $outMessage TSLOutMessage */
     $outMessage =& $dto->getOutMessage();
     $tmg = NULL;
     try {
         $tmg = \TSLTrxFactoryManager::instance()->getTrxManager();
         $tmg->init();
         /* @var $dao \TSLIBasicRecordDAO */
         $dao = \TSLDAOLoaderHelper::loadDAO($this->IdDAOName);
         /* @var $ret string */
         $ret = $dao->add($model, $constraints);
         $CI =& get_instance();
         if ($ret === DB_ERR_ALLOK) {
             $outMessage->setSuccess(true);
             // El resultado es el modelo mismo con los datos pero el campo de version modificado.
             $outMessage->setResultData($model);
         } else {
             if ($ret == DB_ERR_RECORDEXIST) {
                 $outMessage->setSuccess(false);
                 // El resultado es el modelo mismo con los datos del registro modificados
                 $outMessage->setResultData($model);
                 $CI->lang->load($this->IdMSGLanguage);
                 $outMessage->setAnswerMessage($CI->lang->line($this->msgPrefix . '_rec_alreadyexist'), $ret);
             } else {
                 if ($ret == DB_ERR_FOREIGNKEY) {
                     $outMessage->setSuccess(false);
                     $CI->lang->load($this->IdMSGLanguage);
                     $outMessage->setAnswerMessage($CI->lang->line($this->msgPrefix . '_rec_foreignkey_add'), $ret);
                 } else {
                     $CI->lang->load($this->IdMSGLanguage);
                     $outMessage->setSuccess(false);
                     // Si es iactivo enviamos el mensaje respectivo
                     if ($ret == DB_ERR_RECORDINACTIVE) {
                         $outMessage->setAnswerMessage($CI->lang->line($this->msgPrefix . '_rec_inactivo'), $ret);
                     } else {
                         $outMessage->setAnswerMessage($CI->lang->line($this->msgPrefix . '_servererror'), $ret);
                     }
                 }
             }
         }
     } catch (\Exception $ex) {
         // Coloco la excepcion en el DTO.
         // TODO: Internacionalizar.
         $processError = new \TSLProcessErrorMessage($ex->getCode(), 'Error Interno', $ex);
         $outMessage->addProcessError($processError);
     }
     if ($tmg !== NULL) {
         $tmg->end();
     }
 }
 /**
  * Genera la salida en JSON.
  *
  * @param TSLIDataTransferObj con el Data Transfer Object a procesar
  * @return un String con el DTO en formato JSON
  */
 public function &process(TSLIDataTransferObj &$DTO)
 {
     $out = NULL;
     if (isset($DTO)) {
         /* @var $outMessage TSLOutMessage */
         $outMessage =& $DTO->getOutMessage();
         if (strlen($outMessage->getAnswerMesage()) > 0) {
             // STATUS_OK = 0
             $out = 'status:-1';
             $out .= ',error:"' . $outMessage->getAnswerMesage() . '- Cod.Error: ' . $outMessage->getErrorCode() . '"';
         }
         if ($outMessage->isSuccess() == FALSE) {
             if ($outMessage->hasProcessErrors()) {
                 // STATUS_FAILURE = -1
                 $out = 'status:-1';
                 $processErrors =& $outMessage->getProcessErrors();
                 // Si ya tiene longitud , ponemos una coma para indicar
                 // un nuevo elemento.
                 if (isset($out) and strlen($out) > 0) {
                     $out .= ',';
                 }
                 // la lista de process errors.
                 $out .= 'error:';
                 $count = count($processErrors);
                 for ($i = 0; $i < $count; $i++) {
                     if ($i > 0) {
                         $out .= '\\n';
                     }
                     $out .= '"';
                     $perr = str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $processErrors[$i]->getErrorMessage());
                     // Si tiene excepcion procesamos.
                     $ex = $processErrors[$i]->getException();
                     if (isset($ex)) {
                         if (isset($perr)) {
                             $out .= $perr . ' - ' . str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . ' ** CodError = ' . $processErrors[$i]->getErrorCode();
                         } else {
                             $out .= str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . ' ** CodError =' . $processErrors[$i]->getErrorCode();
                         }
                     } else {
                         $out .= $perr . ' ** CodError =' . $processErrors[$i]->getErrorCode();
                     }
                     $out .= '"';
                     if ($i < $count - 1) {
                         $out .= ',';
                     }
                 }
                 $out .= '';
             }
         } else {
             // STATUS_OK = 0
             $out = 'status:0';
         }
         // Si no hay errores de proceso evaluamos la data
         if ($outMessage->hasProcessErrors() == FALSE && strlen($outMessage->getAnswerMesage()) == 0) {
             // Procesamos la data
             $data = $outMessage->getResultData();
             if (isset($data)) {
                 $prefixArray = '[';
                 $count = 0;
                 $out .= ',seriesTitles:[';
                 foreach ($data as $row) {
                     if ($count == 0) {
                         $out .= '"' . $row['records_tipo_descripcion'];
                         $out .= '"]';
                         $out .= ',prueba:"' . $data[0]['apppruebas_descripcion'] . '"';
                         $out .= ',um:"' . $data[0]['unidad_medida_codigo'] . '"';
                         $out .= ',seriesData:[';
                     }
                     $count++;
                     $out .= $prefixArray . '{atleta:"' . $row['atletas_nombre_completo'] . '",';
                     $out .= 'lugar:"' . $row['lugar'] . '",';
                     $out .= 'comentario:"' . $row['comentario'] . '",';
                     $out .= 'fecha:"' . $row['competencias_pruebas_fecha'] . '",';
                     $out .= 'tresultado:"' . $row['norm_resultado'] . '",';
                     $out .= 'nresultado: ' . $row['numb_resultado'] . ',';
                     $out .= 'manual:"' . $row['competencias_pruebas_manual'] . '",';
                     $out .= 'altura:"' . $row['ciudades_altura'] . '"}';
                     $prefixArray = ',';
                 }
                 if ($count > 0) {
                     $out .= ']]';
                 } else {
                     $out .= ']';
                 }
             } else {
                 if ($out == NULL) {
                     // STATUS_OK = 0
                     $out = 'status:-1';
                     $out .= ',error:"Error Desconocido"';
                 }
             }
         }
         $out = '{response:{' . $out . '}}';
         return $out;
     } else {
         $out = '?????????????????';
         return $out;
     }
 }
예제 #15
0
 protected final function validateInputData(TSLIDataTransferObj $DTO, $langId, $validationId, $validationGroupId, $validationRulesId)
 {
     // IMPORTANTE , solo funciona si hay POST data!!!!
     $this->lang->load($langId);
     // Load validations rules from an own validation file
     $this->load->config('validation/' . $validationId);
     $rules = $this->config->item($validationGroupId);
     // cargamos la libreria de validacion
     $this->load->library('form_validation');
     // Ejecutar validacion.
     $this->form_validation->set_error_delimiters('', '');
     $this->form_validation->set_rules($rules[$validationRulesId]);
     // Si hay errores se agregan al DTO
     if ($this->form_validation->run() === FALSE) {
         $outMsg = $DTO->getOutMessage();
         $flderrs = $rules[$validationRulesId];
         $count = count($flderrs);
         for ($i = 0; $i < $count; $i++) {
             $currentErrorMsg = $this->form_validation->error($flderrs[$i]['field']);
             // Solo agregamos el error si existe un mensaje de error
             if (isset($currentErrorMsg) && strlen($currentErrorMsg) > 0) {
                 // Crea el error de campo y lo agrega al mensaje de salida.
                 $fldError = new TSLFieldErrorMessage($flderrs[$i]['field'], $this->form_validation->error($flderrs[$i]['field']));
                 $outMsg->addFieldError($fldError);
                 unset($fldError);
             }
             unset($currentErrorMsg);
         }
         unset($flderrs);
         return FALSE;
     }
     return TRUE;
 }
 /**
  * Genera la salida en JSON.
  *
  * @param TSLIDataTransferObj con el Data Transfer Object a procesar
  * @return un String con el DTO en formato JSON
  */
 public function &process(TSLIDataTransferObj &$DTO)
 {
     $out = NULL;
     if (isset($DTO)) {
         /* @var $outMessage TSLOutMessage */
         $outMessage =& $DTO->getOutMessage();
         if (strlen($outMessage->getAnswerMesage()) > 0) {
             // STATUS_OK = 0
             $out = 'status:-1';
             $out .= ',data:"' . $outMessage->getAnswerMesage() . '- Cod.Error: ' . $outMessage->getErrorCode() . '"';
         }
         if ($outMessage->isSuccess() == FALSE) {
             if ($outMessage->hasFieldErrors()) {
                 // VALIDATION ERRORS
                 $out = 'status:"-4"';
                 $fldErrors =& $outMessage->getFieldErrors();
                 // Si ya tiene longitud , ponemos una coma para indicar
                 // un nuevo elemento.
                 if (isset($out) and strlen($out) > 0) {
                     $out .= ',';
                 }
                 // la lista de field errors.
                 $out .= '"errors":{';
                 $count = count($fldErrors);
                 for ($i = 0; $i < $count; $i++) {
                     $out .= $fldErrors[$i]->getField() . ':"' . $fldErrors[$i]->getErrorMessage() . '"';
                     if ($i < $count - 1) {
                         $out .= ',';
                     }
                 }
                 $out .= '}';
             } else {
                 if ($outMessage->hasProcessErrors()) {
                     // STATUS_FAILURE = -1
                     $out = 'status:-1';
                     $processErrors =& $outMessage->getProcessErrors();
                     // Si ya tiene longitud , ponemos una coma para indicar
                     // un nuevo elemento.
                     if (isset($out) and strlen($out) > 0) {
                         $out .= ',';
                     }
                     // la lista de process errors.
                     $out .= 'data:';
                     $count = count($processErrors);
                     for ($i = 0; $i < $count; $i++) {
                         if ($i > 0) {
                             $out .= '\\n';
                         }
                         $out .= '"';
                         $perr = str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $processErrors[$i]->getErrorMessage());
                         // Si tiene excepcion procesamos.
                         $ex = $processErrors[$i]->getException();
                         if (isset($ex)) {
                             if (isset($perr)) {
                                 $out .= $perr . ' - ' . str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . ' ** CodError = ' . $processErrors[$i]->getErrorCode();
                             } else {
                                 $out .= str_replace(array("\"", "\r", "\n", "\r\n"), ' ', $ex->getMessage()) . ' ** CodError =' . $processErrors[$i]->getErrorCode();
                             }
                         } else {
                             $out .= $perr . ' ** CodError =' . $processErrors[$i]->getErrorCode();
                         }
                         $out .= '"';
                         if ($i < $count - 1) {
                             $out .= ',';
                         }
                     }
                     $out .= '';
                 }
             }
         } else {
             // STATUS_OK = 0
             $out = 'status:0';
         }
         // Si tiene parametros de salida los agregamos  antres de la data.
         $outParams =& $outMessage->getOutputparameters();
         if (is_array($outParams)) {
             foreach ($outParams as $i => $value) {
                 $out .= ',' . $i . ':' . $value;
             }
         }
         // Si no hay errores de proceso evaluamos la data
         if ($outMessage->hasProcessErrors() == FALSE && strlen($outMessage->getAnswerMesage()) == 0) {
             $oneRecord = false;
             // Procesamos la data
             $data = $outMessage->getResultData();
             if (isset($data)) {
                 // Si no es un arreglo solo posee un registro
                 if (!is_array($data)) {
                     $oneRecord = true;
                 }
                 $out .= ',data:';
                 $this->_processExtraData($outMessage->getResultData());
                 $dataResults = TSLUtilsHelper::array_ut8_encode_recursive($outMessage->getResultData());
                 $out .= json_encode($dataResults);
                 // Numero de registros = al numero de registros leidos + la posicion inicial en el set
                 // siempre que haya mas de una respuesta
                 $constraints =& $DTO->getConstraints();
                 if ($oneRecord === FALSE) {
                     $numRecords = $constraints->getStartRow() + count($dataResults);
                 } else {
                     $numRecords = 1;
                 }
                 // SE hace de tal forma que si no es el ultimo registro osea numRecords es menor a la ultima fila solicitada
                 // Ponemos como el total de registros una pagina mas (esto para evitar hacer un count)
                 $out .= ',endRow : "' . $numRecords . '"';
                 $out .= ',totalRows: "' . ($numRecords < $constraints->getEndRow() || $constraints->getEndRow() == 0 ? $numRecords : $constraints->getEndRow() + ($constraints->getEndRow() - $constraints->getStartRow())) . '"';
                 //                   $out .= ',totalRows: "'. ( $numRecords < 1000 ? ($numRecords)  :  1000 + (1000 - $constraints->getStartRow())) .'"';
             } else {
                 if ($out == NULL) {
                     // STATUS_OK = 0
                     $out = 'status:-1';
                     $out .= ',data:"Error Desconocido"';
                 }
             }
         }
         $out = '{response:{' . $out . '}}';
         return $out;
     } else {
         $out = '?????????????????';
         return $out;
     }
 }