示例#1
0
 function generar_layout()
 {
     $parametros = toba::memoria()->get_parametros();
     ei_arbol($parametros, 'PARAMETROS recibidos');
     $clave_get = toba::memoria()->get_parametro('fila_safe');
     //Recupero el parametro puntual del get.
     $claves_originales = toba_ei_cuadro::recuperar_clave_fila('5000004', $clave_get);
     ei_arbol($claves_originales, 'claves propagadas de manera segura');
 }
示例#2
0
 static function get_identificador_arai_usuarios($clave)
 {
     $datos = toba_ei_cuadro::recuperar_clave_fila('31000002', $clave);
     if (isset($datos) && !empty($datos) && isset($datos['identificador'])) {
         return $datos['identificador'];
     } else {
         return $clave;
     }
 }
示例#3
0
 function servicio__ejecutar()
 {
     toba_http::headers_standart();
     $valor = toba::memoria()->get_parametro('fila_safe');
     $clave = toba_ei_cuadro::recuperar_clave_fila('33000088', $valor);
     if (!is_null($clave)) {
         //Si existe la clave que le pasaron
         $id_servicio = $clave['servicio_web'];
         $proyecto = $this->get_modelo_proyecto();
         $nuevo_estado = !toba_modelo_servicio_web::esta_activo($proyecto, $id_servicio) ? 1 : 0;
         toba_modelo_servicio_web::set_estado_activacion($proyecto, $id_servicio, $nuevo_estado);
         toba::vinculador()->navegar_a();
         //Hago una redireccion a la misma operacion para refrescar el cuadro.
     }
 }
示例#4
0
    function ajax__test_configuracion($clave_param, toba_ajax_respuesta $respuesta)
    {
        toba::memoria()->desactivar_reciclado();
        //Recupero la fila del cuadro
        $parametro = toba_ei_cuadro::recuperar_clave_fila('33000078', $clave_param);
        if (is_null($parametro)) {
            //Si no existe la fila informada desde el cliente retorno.
            $respuesta->set('Esta seguro que este es un servicio correcto?');
            return false;
        }
        //Armo el payload para el servicio de eco con el random a testear
        $rnd = xml_encode(md5(rand(1, 435)));
        $payload = <<<XML
<ns1:eco xmlns:ns1="http://siu.edu.ar/toba/serv_pruebas"><texto>{$rnd}</texto></ns1:eco>
XML;
        //---------------------------------------------------------------------//
        try {
            //Lo armo asi porque esta configurado en otro proyecto entonces no puedo usar toba::servicio_web
            $servicio = toba_servicio_web_cliente::conectar($parametro['servicio_web'], array(), $this->s__filtro['proyecto']);
            $respuesta_ws = $servicio->request(new toba_servicio_web_mensaje($payload, array('action' => 'eco')));
        } catch (toba_error_servicio_web $s) {
            //Capturo errores del servicio web
            $respuesta->set('Se produjo un error inesperado en la atención del servicio, comuniquese con el proveedor del mismo. Si es un proyecto toba verifique el log de servicios web de ese proyecto (Ubicado en toba_usuarios > Auditoría > 
Logs de Servicios Web Ofrecidos) y el log general del sistema');
            toba::logger_ws()->debug($s->getMessage());
            return false;
        } catch (toba_error $e) {
            //Capturo cualquier otro error local a la creacion del pedido
            toba::logger()->debug($e->getMessage());
            $respuesta->set('Se produjo un error inesperado en la inicializacion del pedido. Verifique que la URL sea correcta (abrirla en en el navegador y ver que responda bien)');
            return false;
        }
        //Parseo el XML de la respuesta para obtener el dato y comparo con el random que envie
        $xml_rta = new SimpleXMLElement($respuesta_ws->get_payload());
        if ((string) $rnd == (string) $xml_rta->texto) {
            $respuesta->set('Ok. La configuracion es correcta');
        } else {
            toba::logger()->debug("Enviado: {$rnd}");
            toba::logger()->debug('Recibido: ' . $xml_rta->texto);
            $respuesta->set('La configuración no es correcta, o la respuesta (' . (string) $xml_rta->texto . ') no coincide con la esperada ' . $rnd . '). Revise el log');
        }
    }