protected function get_path_tabla($path_inicial, $tabla) { $candidato = str_replace('%id%', $tabla, toba_personalizacion::template_archivo_tabla); $valido = toba_manejador_archivos::nombre_valido($candidato); return $path_inicial . $valido; }
/** * En el modo compilado, carga los metadatos necesarios para la solicitud actual * @ignore */ protected function iniciar_contexto_solicitud($item) { if ($this->utilizar_metadatos_compilados()) { // Arbol de componentes de la operacion $id = toba_manejador_archivos::nombre_valido($item[1]); require_once self::get_directorio_compilacion() . '/oper/toba_mc_oper__' . $id . '.php'; // Datos BASICOS require_once self::get_directorio_compilacion() . '/gene/toba_mc_gene__basicos.php'; $grupos_acceso = toba::manejador_sesiones()->get_perfiles_funcionales_activos(); foreach ($grupos_acceso as $grupo) { require_once self::get_directorio_compilacion() . '/gene/toba_mc_gene__grupo_' . $grupo . '.php'; } } }
/** * Retorna la definicion compilada de un componente */ static function get_metadatos_compilados($id, $item = false) { //Chequea si no se redefinieron en runtime $extendidos = toba_cargador::instancia()->get_metadatos_redefinidos($id); if (isset($extendidos)) { return $extendidos; } if ($item) { $clase = 'toba_mc_item__' . toba_manejador_archivos::nombre_valido($id['componente']); } else { $clase = 'toba_mc_comp__' . $id['componente']; } return call_user_func(array($clase, 'get_metadatos')); }
/** * Setea la ruta a un archivo conteniendo el xml con los datos para el reporte * @param string $ruta_xml Ruta al archivo xml * @param string $xpath_data_search XPath al nodo que contiene los datos. Opcional */ function set_archivo_xml($ruta_xml, $xpath_data_search = null) { $this->xml_path = toba_manejador_archivos::nombre_valido($ruta_xml); $this->xpath_data = $xpath_data_search; if (is_null($xpath_data_search)) { //Si esto no viene no puedo crear un JRXMLDataSource, paso a modo archivo $this->modo_archivo = true; } }
protected function get_path_componente($path_inicial, $tipo, $id) { $candidato = str_replace('%id%', $id, toba_personalizacion::template_archivo_componente); $valido = toba_manejador_archivos::nombre_valido($candidato); return $path_inicial . $tipo . '/' . $valido; }
private function compilar_operaciones() { $this->manejador_interface->mensaje('Operaciones resumidas', false); foreach (toba_info_editores::get_lista_items() as $item) { $clases_creadas = array(); //Indice para proteger no crear una dos veces $php = "<?php\n"; $directorio = $this->get_dir_componentes_compilados() . '/oper'; toba_manejador_archivos::crear_arbol_directorios($directorio); $nombre_archivo = toba_manejador_archivos::nombre_valido('toba_mc_oper__' . $item['id']); $arbol = toba_info_editores::get_arbol_componentes_item($item['proyecto'], $item['id']); foreach ($arbol as $componente) { $tipo = $componente['tipo']; $prefijo_clase = $tipo == 'toba_item' ? 'toba_mc_item__' : 'toba_mc_comp__'; $nombre_clase = toba_manejador_archivos::nombre_valido($prefijo_clase . $componente['componente']); if (!in_array($nombre_clase, $clases_creadas)) { $clase = new toba_clase_datos($nombre_clase); $metadatos = toba_cargador::instancia()->get_metadatos_extendidos($componente, $tipo, $this->db); $clase->agregar_metodo_datos('get_metadatos', $metadatos); $php .= $clase->get_contenido(); $clases_creadas[] = $nombre_clase; } } $php .= "\n?>"; file_put_contents($directorio . '/' . $nombre_archivo . '.php', $php); $this->manejador_interface->progreso_avanzar(); } $this->manejador_interface->progreso_fin(); }
function evt__form_basico_ws__modificacion($datos) { if (isset($this->s__seleccionado)) { $this->s__datos[$this->s__seleccionado] = $datos; if (isset($datos['cert_file']) && $datos['cert_file']['error'] == 0) { //Si se subio un archivo de certificado $nombre_archivo = toba_manejador_archivos::nombre_valido($datos['cert_file']['name']); $this->cert = toba::proyecto()->get_www_temp($nombre_archivo); move_uploaded_file($datos['cert_file']['tmp_name'], $this->cert['path']); } } }
/** * Asocia el proyecto y servicio con el nombre del archivo que contiene la clave publica * @param directorio * @param array $headers * @param cert_cliente */ function generar_configuracion_servidor($cert_cliente, $headers = array()) { $config = self::get_ini_server($this->proyecto, $this->get_id()); if (!$config->existe_entrada('certificado')) { $cert = array(); $cert['clave_servidor'] = '../../privada.key'; //Se utiliza la clave de todo el proyecto $cert['cert_servidor'] = '../../publica.crt'; //Se utiliza el cert de todo el proyecto $config->agregar_entrada('certificado', $cert); } //Armo ID de cliente $nombre = self::generar_id_entrada_cliente($headers); //Guarda el certificado del cliente $directorio = $this->get_dir_instalacion_servidor(); $nombre_archivo = toba_manejador_archivos::nombre_valido(str_replace('=', '_', $nombre)); copy($cert_cliente, $directorio . "/{$nombre_archivo}.crt"); $datos = array(); $datos['archivo'] = "./{$nombre_archivo}.crt"; $datos['fingerprint'] = sha1(toba_servicio_web::decodificar_certificado($directorio . "/{$nombre_archivo}.crt")); if (!$config->existe_entrada($nombre)) { $config->agregar_entrada($nombre, $datos); } else { $config->set_datos_entrada($nombre, $datos); } if (!$config->existe_entrada('general', 'activo')) { $config->agregar_entrada('general', array('activo' => '0')); //Desactivo el WS por defecto } $config->guardar(); }