function get_html(toba_ef $ef)
 {
     $objeto_js = $ef->objeto_js();
     if ($this->es_abrir) {
         $img = toba_recurso::imagen_proyecto('reflexion/abrir.gif', true);
     } else {
         $img = toba_recurso::imagen_toba('nucleo/php.gif', true);
     }
     if (!$this->_sin_archivo) {
         $salida = "<a href='#' onclick=\"if ({$objeto_js}.get_estado() == ''){return;}\n\t\t\t\t\t\t\t\t\t\t\tvinculador.agregar_parametros({$this->id_vinculo}, {archivo: {$objeto_js}.get_estado()});\n\t\t\t\t\t\t\t\t\t\t\tvinculador.invocar({$this->id_vinculo})\">{$img}</a>";
     } else {
         if (!$ef->tiene_estado()) {
             $img = toba_recurso::imagen_toba('nucleo/extender.gif', true);
             $objeto_js = $ef->controlador()->get_id_objeto_js();
             //Imita el metodo de modificacion de vinculos usado por los eis
             $nombre = 'modificar_vinculo__ef_' . $ef->get_id();
             //de otro modo se hace imposible agregarle parametros en runtime
             $codigo = " if (!existe_funcion({$objeto_js}, '{$nombre}')){return;}\n\t\t\t\t\t\t\t{$objeto_js}.{$nombre}({$this->id_vinculo});\n\t\t\t\t\t\t\tvinculador.invocar({$this->id_vinculo});";
             $salida = "<a href='#' onclick=\"{$codigo}\">{$img}</a>";
         } else {
             $salida = "<a href='#' onclick=\"vinculador.invocar({$this->id_vinculo})\">{$img}</a>";
         }
     }
     return $salida;
 }
 function get_utilerias($icono_nuevo = true)
 {
     //ei_arbol($this->datos);
     $iconos = array();
     if ($icono_nuevo) {
         $iconos[] = array('imagen' => toba_recurso::imagen_toba("objetos/objeto_nuevo.gif", false), 'ayuda' => "Crear una nueva tabla asociada a la relación", 'vinculo' => toba::vinculador()->get_url(toba_editor::get_id(), "1000247", array('destino_tipo' => 'toba_datos_relacion', 'destino_proyecto' => $this->proyecto, 'destino_id' => $this->id), array('menu' => true, 'celda_memoria' => 'central')), 'plegado' => true);
     }
     //--- Mejora para el caso de que la query sea una unica
     if (isset($this->datos['_info']['punto_montaje'])) {
         $this->datos['_info_estructura']['punto_montaje'] = $this->datos['_info']['punto_montaje'];
     }
     if (isset($this->datos['_info']['ap_clase'])) {
         $this->datos['_info_estructura']['ap_clase'] = $this->datos['_info']['ap_clase'];
     }
     if (isset($this->datos['_info']['ap_archivo'])) {
         $this->datos['_info_estructura']['ap_archivo'] = $this->datos['_info']['ap_archivo'];
     }
     if (isset($this->datos['_info_estructura']['ap_clase'])) {
         // Hay PHP asociado
         if (admin_util::existe_archivo_subclase($this->datos['_info_estructura']['ap_archivo'], $this->datos['_info_estructura']['punto_montaje'])) {
             $iconos[] = toba_componente_info::get_utileria_editor_abrir_php(array('proyecto' => $this->proyecto, 'componente' => $this->id), 'ap', 'reflexion/abrir_ap.gif');
             $iconos[] = toba_componente_info::get_utileria_editor_ver_php(array('proyecto' => $this->proyecto, 'componente' => $this->id), 'ap', 'nucleo/php_ap.gif');
         } else {
             $iconos[] = toba_componente_info::get_utileria_editor_ver_php(array('proyecto' => $this->proyecto, 'componente' => $this->id), 'ap', 'nucleo/php_ap_inexistente.gif', false);
         }
     }
     return array_merge($iconos, parent::get_utilerias());
 }
Exemple #3
0
 function get_input()
 {
     //Esto es para eliminar un notice en php 5.0.4
     if (!isset($this->estado)) {
         $this->estado = null;
     }
     if ($this->es_solo_lectura()) {
         $html = toba_form::hidden($this->id_form, $this->seleccionado() ? $this->valor : $this->valor_no_seteado);
         if ($this->seleccionado()) {
             $html .= toba_recurso::imagen_toba('nucleo/efcheck_on.gif', true, 16, 16);
         } else {
             $html .= toba_recurso::imagen_toba('nucleo/efcheck_off.gif', true, 16, 16);
         }
     } else {
         $js = '';
         if ($this->cuando_cambia_valor != '') {
             $js = "onchange=\"{$this->get_cuando_cambia_valor()}\"";
         }
         $tab = $this->padre->get_tab_index();
         $extra = " tabindex='{$tab}'";
         $html = toba_form::checkbox($this->id_form, $this->estado, $this->valor, $this->clase_css, $extra . ' ' . $js);
     }
     $html .= $this->get_html_iconos_utilerias();
     return $html;
 }
Exemple #4
0
function cuadro_ayuda($titulo, $iconos, $origen_proyecto = false)
{
    foreach ($iconos as $icono) {
        echo '<li>';
        if (count($icono['url']) == 1) {
            foreach ($icono['url'] as $ayuda => $url) {
                echo "<a href='{$url}' target='{$icono['frame']}'>";
                if ($origen_proyecto) {
                    echo toba_recurso::imagen_proyecto($icono['img'], true, null, null, $ayuda);
                } else {
                    echo toba_recurso::imagen_toba($icono['img'], true, null, null, $ayuda);
                }
                echo '</a>';
            }
        } else {
            $ayuda = '<ul>';
            foreach ($icono['url'] as $desc => $url) {
                $ayuda .= "<li><a href={$url} target={$icono['frame']}>{$desc}";
                $ayuda .= '</a></li>';
            }
            $ayuda .= '</ul>';
            if ($origen_proyecto) {
                echo toba_recurso::imagen_proyecto($icono['img'], true, null, null, $ayuda);
            } else {
                echo toba_recurso::imagen_toba($icono['img'], true, null, null, $ayuda);
            }
        }
        echo "</li>\n";
    }
}
 function extender_objeto_js()
 {
     parent::extender_objeto_js();
     $id_js = $this->objeto_js;
     $id_gral = $this->_submit;
     $img_acceso = toba_recurso::imagen_toba('aplicar.png', false);
     $img_sin_acceso = toba_recurso::imagen_toba('prohibido.png', false);
     //Busco el estado de cada uno de los hijos involucrados en el pedido de pagina
     $estado = array('activos' => array(), 'inactivos' => array());
     if (isset($this->_nodos_inicial) && !empty($this->_nodos_inicial)) {
         $raiz = $this->_nodos_inicial[0];
         if ($raiz->tiene_hijos_cargados()) {
             foreach ($raiz->get_hijos() as $nodo) {
                 $aux = $nodo->recuperar_estado_recursivo();
                 $estado['activos'] = array_merge($estado['activos'], $aux['activos']);
                 $estado['inactivos'] = array_merge($estado['inactivos'], $aux['inactivos']);
             }
         }
     }
     //Genero un par de arreglos que van a servir como lista en js
     $ids_activos = !empty($estado['activos']) ? array_fill_keys($estado['activos'], true) : array();
     $ids_desactivados = !empty($estado['inactivos']) ? array_fill_keys($estado['inactivos'], true) : array();
     echo ' var ' . $id_js . '_items_activos = ' . toba_js::arreglo($ids_activos, true) . "; \n";
     echo ' var ' . $id_js . '_items_desactivados = ' . toba_js::arreglo($ids_desactivados, true) . "; \n";
     echo "\t\t\t\n\t\t\t{$id_js}.cambiar_acceso = function(id_input)\n\t\t\t{\n\t\t\t\tvar id_elemento = '{$id_gral}' + '_' + id_input; \t\t\t\t\t\n\t\t\t\tif (isset({$this->objeto_js}_items_activos[id_input])) {\t\t\t//Esta visible, hay que ocultarlo\t\t\t\t\t\n\t\t\t\t\tdelete({$this->objeto_js}_items_activos[id_input]);\n\t\t\t\t\t{$this->objeto_js}_items_desactivados[id_input] = true;\n\t\t\t\t\t\$\$(id_elemento + '_acceso_img').src = '{$img_sin_acceso}';\t\t\t\t\t\t\n\t\t\t\t} else if (isset({$this->objeto_js}_items_desactivados[id_input])) {\t\t//Esta oculto, hay que mostrarlo\t\t\t\t\t\n\t\t\t\t\tdelete({$this->objeto_js}_items_desactivados[id_input]);\n\t\t\t\t\t{$this->objeto_js}_items_activos[id_input] = true;\n\t\t\t\t\t\$\$(id_elemento + '_acceso_img').src = '{$img_acceso}';\t\t\t\t\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t{$id_js}.marcar = function(id_input, valor)\n\t\t\t{\t\t\t\t\n\t\t\t\tvar id_final = '{$id_gral}' + '_' + id_input + '_carpeta';\n\t\t\t\tvar padre = \$\$(id_final).parentNode.parentNode;\t\t\n\t\t\t\tvar nodo = this.buscar_primer_marca(padre, 'UL');\n\t\t\t\tif (nodo) {\t\t\n\t\t\t\t\tfor (var i=0; i < nodo.childNodes.length; i++) {\n\t\t\t\t\t\tvar hijo = nodo.childNodes[i];\n\t\t\t\t\t\tif (hijo.tagName && (hijo.tagName == 'LI')) {\n\t\t\t\t\t\t\tif (! this.buscar_primer_marca(hijo, 'UL')) {\n\t\t\t\t\t\t\t\tthis.cambiar_estado_acceso(hijo, valor);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.marcar_recursivo(hijo, valor);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t\n\t\t\t{$id_js}.marcar_recursivo = function(carpeta, valor) \n\t\t\t{\n\t\t\t\tvar marca_carpeta = this.buscar_primer_marca(carpeta, 'SPAN');\n\t\t\t\tif (marca_carpeta) {\n\t\t\t\t\tfor (var i=0; i < marca_carpeta.childNodes.length; i++) {\n\t\t\t\t\t\tvar hc = marca_carpeta.childNodes[i];\n\t\t\t\t\t\tif (hc.tagName && (hc.tagName == 'INPUT')) {\n\t\t\t\t\t\t\t\$\$(hc.id).value = valor;\n\t\t\t\t\t\t\t\$\$(hc.id).checked = (valor == 0) ? true : false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvar nodo = this.buscar_primer_marca(carpeta, 'UL');\t\t\n\t\t\t\tfor (var i=0; i < nodo.childNodes.length; i++) {\n\t\t\t\t\tvar hijo = nodo.childNodes[i];\n\t\t\t\t\tif (hijo.tagName && (hijo.tagName == 'LI')) {\n\t\t\t\t\t\tif (!this.buscar_primer_marca(hijo, 'UL')) {\n\t\t\t\t\t\t\tthis.cambiar_estado_acceso(hijo, valor);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.marcar_recursivo(hijo, valor);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t{$id_js}.cambiar_estado_acceso = function(nodo, valor)\n\t\t\t{\n\t\t\t\tfor (var i=0; i < nodo.childNodes.length; i++) {\n\t\t\t\t\tif (nodo.childNodes[i].tagName == 'SPAN') {\n\t\t\t\t\t\tvar hijo = nodo.childNodes[i];\n\t\t\t\t\t\tfor (var j=0; j < hijo.childNodes.length; j++) {\n\t\t\t\t\t\t\tif (hijo.childNodes[j].tagName == 'IMG') {\t\n\t\t\t\t\t\t\t\thijo.childNodes[j].onclick();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t{$id_js}.buscar_primer_marca = function (nodo, marca) {\n\t\t\t\tfor (var i=0; i < nodo.childNodes.length; i++) {\n\t\t\t\t\tif (nodo.childNodes[i].tagName == marca) {\n\t\t\t\t\t\treturn nodo.childNodes[i];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t\n\t\t\t{$id_js}.submit = function()\n\t\t\t{\t\t\t\t\n\t\t\t\tvar padre_esta_en_proceso = this.controlador && !this.controlador.en_submit();\n\t\t\t\tif (padre_esta_en_proceso) {\n\t\t\t\t\treturn this.controlador.submit();\n\t\t\t\t}\n\t\t\t\tif (this._evento) {\n\t\t\t\t\t//Si es la selección de una semana marco la semana\n\t\t\t\t\tif (this._evento.id == 'ver_propiedades') {\n\t\t\t\t\t\tdocument.getElementById(this._input_submit + '__seleccion').value = this._evento.parametros;\n\t\t\t\t\t}\n\t\t\t\t\t//Marco la ejecucion del evento para que la clase PHP lo reconozca\n\t\t\t\t\tdocument.getElementById(this._input_submit).value = this._evento.id;\t\t\t\n\t\t\t\t}\n\t\t\t\tdocument.getElementById(this._input_submit + '__apertura_datos').value = this.datos_apertura();\t\t\t\t\n\n\t\t\t\t//Agrego como lista los nodos seleccionados y deseleccionados\n\t\t\t\tvar claves = [];\n\t\t\t\tfor (var i in {$id_js}_items_activos) {\n\t\t\t\t\tclaves.push(i);\n\t\t\t\t}\n\t\t\t\tdocument.getElementById('{$id_gral}__nodos_seleccionados').value = claves.join(toba_hilo_separador_interno);\n\n\t\t\t\tvar claves = [];\t\t\t\t\n\t\t\t\tfor (var i in {$id_js}_items_desactivados) {\n\t\t\t\t\tclaves.push(i);\n\t\t\t\t}\n\t\t\t\tdocument.getElementById('{$id_gral}__nodos_deseleccionados').value = claves.join(toba_hilo_separador_interno);\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t";
 }
Exemple #6
0
 function set_abrir_nueva_ventana($imagen = 'nucleo/abrir_nueva_ventana.gif')
 {
     if (toba::memoria()->get_celda_memoria_actual_id() != $this->celda_memoria) {
         $this->abrir_nueva_ventana = true;
         $this->imagen_nueva_ventana = toba_recurso::imagen_toba($imagen, false);
     }
 }
 function extender_objeto_js()
 {
     $img_oculto = toba_recurso::imagen_toba('no-visible.png', false);
     $img_visible = toba_recurso::imagen_toba('visible.png', false);
     $img_solo_lectura = toba_recurso::imagen_toba('no-editable.gif', false);
     $img_editable = toba_recurso::imagen_toba('editable.gif', false);
     echo "\n\t\t\tfunction cambiar_oculto(id_input) {\n\t\t\t\tvar valor_actual = \$(id_input).value;\n\t\t\t\tif (valor_actual == 1) {\n\t\t\t\t\t//Esta oculto, hay que mostrarlo\n\t\t\t\t\t\$\$(id_input + '_img').src = '{$img_visible}';\n\t\t\t\t\t\$\$(id_input).value = 0;\n\t\t\t\t} else {\n\t\t\t\t\t//Esta visible, hay que ocultarlo\n\t\t\t\t\t\$\$(id_input + '_img').src = '{$img_oculto}';\n\t\t\t\t\t\$\$(id_input).value = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tfunction cambiar_editable(id_input) {\n\t\t\t\tvar valor_actual = \$\$(id_input).value;\n\t\t\t\tif (valor_actual == 1) {\n\t\t\t\t\t//Esta oculto, hay que mostrarlo\n\t\t\t\t\t\$\$(id_input + '_img').src = '{$img_editable}';\n\t\t\t\t\t\$\$(id_input).value = 0;\n\t\t\t\t} else {\n\t\t\t\t\t//Esta visible, hay que ocultarlo\n\t\t\t\t\t\$\$(id_input + '_img').src = '{$img_solo_lectura}';\n\t\t\t\t\t\$\$(id_input).value = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t";
 }
Exemple #8
0
 function generar_layout()
 {
     $icono = toba_recurso::imagen_toba('objetos/multi_etapa.gif', true);
     $icono_pant = toba_recurso::imagen_toba('objetos/pantalla.gif', true);
     $arbol = toba_recurso::imagen_proyecto('tutorial/ci-arbol.png');
     $tabs = toba_recurso::imagen_proyecto('tutorial/ci-tabs.png');
     echo "\n\t\t\t<div style='float:right;padding: 10px;width: 310px;'>\n\t\t\t<img src='{$arbol}'><br>\n\t\t\t<span class='caption'>Definición en el editor web de una operación con un CI de dos pantallas.\n\t\t\t</span>\n\t\t\t</div>\n\t\n\t\t\t<p>\n\t\t\tEl Controlador de interface {$icono}  o CI es el componente raiz que necesitamos definir en nuestra\n\t\t\toperación, ya que tiene la capacidad de contener otros componentes, formando las \n\t\t\tdistintas ramas del árbol de una operación.\n\t\t\t</p>\n\t\t\t<p>\n\t\t\tPara organizar la operación, el CI tiene la capacidad de definir\n\t\t\t <span style='white-space:nowrap;'>{$icono_pant} <strong>Pantallas</strong> </span>\n\t\t\tsiendo responsable de la lógica de navegación entre las mismas y de los componentes que utiliza\tcada una.\n\t\t\t La forma más usual de navegación entre estas pantallas es usar solapas o tabs horizontales.\n\t\t\t</p>\n\t\t\t\n\t\t\t<div style='padding: 10px;width: 360px;clear:both;'>\n\t\t\t<img src='{$tabs}'><br>\n\t\t\t<span class='caption'>Ejecución de la operación, las pantallas se ven como solapas horizontales</span>\n\t\t\t</div>\t\t\t\t\n\n\n\t\t";
 }
Exemple #9
0
 protected function comienzo_cuerpo()
 {
     $this->cabecera_aplicacion();
     $wait = toba_recurso::imagen_toba('wait.gif');
     echo "<div id='div_toba_esperar' class='div-esperar' style='display:none'>";
     echo "<img src='{$wait}' style='vertical-align: middle;' alt='' /> Procesando...";
     echo "</div>\n";
 }
 function get_html(toba_ef $ef)
 {
     $objeto_js = $ef->objeto_js();
     $javascript = "alert('Estado actual: ' + {$objeto_js}.get_estado());";
     $salida = "<a class='icono-utileria' href='formato_archivo.html' onclick=\"{$javascript}\">";
     $salida .= toba_recurso::imagen_toba('descripcion.gif', true, null, null, "Debe ser un archivo txt");
     $salida .= "</a>";
     return $salida;
 }
Exemple #11
0
 function get_html(toba_ef $ef)
 {
     $objeto_js = $ef->objeto_js();
     $javascript = "{$objeto_js}.resetear_estado();";
     $salida = "<a class='icono-utileria' href='#' onclick=\"{$javascript}\">";
     $salida .= toba_recurso::imagen_toba('limpiar.png', true, null, null, "Resetear estado actual del campo");
     $salida .= "</a>";
     return $salida;
 }
Exemple #12
0
 static function generar_input_ef($origen, $img, $objeto_js, $fila = '')
 {
     $predeterminada = toba_recurso::imagen_toba('image-missing-16.png', false);
     if ($img != '') {
         $actual = admin_util::url_imagen_de_origen($img, $origen);
     } else {
         $actual = $predeterminada;
     }
     echo "<img nohack='1' title='Elegir la imagen desde un listado' onclick='{$objeto_js}.elegir_imagen({$fila})'\n\t\t\t\t\tid='editor_imagen_src{$fila}' src='{$actual}' onError='this.src=\"{$predeterminada}\"'/>";
 }
Exemple #13
0
 function get_html(toba_ef $ef)
 {
     $editable = toba_recurso::imagen_toba('objetos/editar.gif', false);
     $objeto_js = $ef->objeto_js();
     echo "<script>\n\t\t\tfunction toggle_editable() {\n\t\t\t\tvar ef = {$objeto_js}\n\t\t\t\tif (!ef.input().disabled) {\n\t\t\t\t\tef.input().disabled = true;\n\t\t\t\t\t\$\$('utileria_identificador').src = '{$editable}';\n\t\t\t\t\t\$\$('utileria_identificador').title = 'Editar Identificador';\n\t\t\t\t} else {\n\t\t\t\t\tef.input().disabled = false;\t\t\t\t\n\t\t\t\t\t\$\$('utileria_identificador').src = '{$editable}';\n\t\t\t\t\t\$\$('utileria_identificador').title = 'Resetar Identificador';\n\t\t\t\t\tef.seleccionar();\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t</script>";
     $salida = "<a class='icono-utileria' href='#' onclick=\"toggle_editable(); return false\">";
     $salida .= "<img id='utileria_identificador' src='{$editable}' title='Editar Identificador'>";
     $salida .= '</a>';
     return $salida;
 }
Exemple #14
0
    protected function estilos_css()
    {
        parent::estilos_css();
        ?>
		<style type="text/css">
			.codigo {
				padding: 10px; 
				margin-top: 5px;
				margin-bottom: 5px;
				border: 1px solid black; 
				background-color:#EEEAEE;		
			}
			.ci-cuerpo, .ci-wiz-cont {
				border: none;
				background-color: white;
				font-size: 12px;
			}
			.ci-wiz-enc {
				border: 0;
			}
			.ci-wiz-titulo, h2 {
				font-size: 1.5em; 
			}
			.lista-separada {
				list-style-image: url('<?php 
        echo toba_recurso::imagen_toba('nucleo/carpeta.gif');
        ?>
');
			}
			.lista-separada li {
				margin-top: 10px;
			}	
			.lista-separada .proyectos {
				background-color: #EEEAEE;
				border: 1px solid gray;
			}
			li {
				margin-bottom: 4px;
			}
			.caption {
				text-align: left;
				margin-left: 10px;
				margin-right: 10px;
				font-size:80%;
				font-style: italic;
				display:block;
			}
			.img-ef {
				background-color: #D5CECD;
				border: 1px solid gray;
			}			
		</style>			
		<?php 
    }
Exemple #15
0
 function generar_layout()
 {
     //--- Barra SVN
     echo "<div class='editor-vista-previa'>" . $this->controlador()->get_info_archivo();
     echo '<div>';
     $this->generar_botones_eventos(true);
     echo '</div></div>';
     //--- Barra de convenciones
     $mensajes_linea = array();
     $modelo = toba_editor::get_modelo_proyecto();
     $estandar = $modelo->get_estandar_convenciones();
     $path = $this->controlador()->get_path_archivo();
     if (file_exists($path)) {
         $resultado = $estandar->validar(array($path));
         $titulo = '<strong>Convenciones</strong>';
         $cant_errores = $resultado['totals']['errors'];
         $cant_warnings = $resultado['totals']['warnings'];
         $extra = '';
         if ($cant_errores === 0 && $cant_warnings === 0) {
             $nivel = 'info';
             $salida = 'Ok!';
         } else {
             $nivel = $cant_errores !== 0 ? 'error' : 'warning';
             $salida = "{$cant_errores} ";
             $salida .= $cant_errores !== 1 ? 'errores' : 'error';
             $salida .= " / {$cant_warnings} ";
             $salida .= $cant_warnings !== 1 ? 'avisos' : 'aviso';
             foreach ($resultado['files'][$path]['messages'] as $linea => $columnas) {
                 $textos = array();
                 foreach ($columnas as $column => $mensajes) {
                     foreach ($mensajes as $mensaje) {
                         //$extra .= "<strong>$linea</strong>:{$mensaje['message']}";
                         $imagen = $mensaje['type'] == 'ERROR' ? 'error.gif' : 'warning.gif';
                         $textos[] = $estandar->parsear_mensaje($mensaje['message']);
                         //Cambia el id de la convencion por una url
                     }
                 }
                 $ayuda = implode('<br><br>', $textos);
                 $ayuda = str_replace("'", "`", $ayuda);
                 $mensajes_linea[$linea] = toba_recurso::imagen_toba($imagen, true, null, null, $ayuda);
             }
         }
         $this->generar_html_descripcion("{$titulo}: {$salida} {$extra}", $nivel);
     }
     //-- Vista previa
     echo "<div class='editor-vista-previa-codigo'>";
     $codigo = $this->controlador()->get_previsualizacion();
     require_once toba_dir() . '/php/3ros/PHP_Highlight.php';
     $h = new PHP_Highlight(false);
     $h->loadString($codigo);
     $formato_linea = "<span class='editor-linea-codigo'>%02d</span>&nbsp;&nbsp;";
     echo @$h->toHtml(true, true, $formato_linea, true, $mensajes_linea);
     echo '</div>';
 }
Exemple #16
0
 function __construct()
 {
     parent::__construct('Grupos de Acceso');
     foreach (toba_info_permisos::get_grupos_acceso() as $grupo) {
         $hijos[] = new catalogo_perfiles_grupo($this, $grupo['usuario_grupo_acc'], $grupo['nombre']);
     }
     $this->set_hijos($hijos);
     $this->agregar_icono(array('imagen' => toba_recurso::imagen_toba('nucleo/preferencias.gif', false), 'ayuda' => 'Administrar GRUPOS de ACCESO'));
     $opciones['menu'] = true;
     $opciones['celda_memoria'] = 'central';
     $this->agregar_utileria(array('imagen' => toba_recurso::imagen_toba('nucleo/agregar.gif', false), 'ayuda' => 'Crear un nuevo grupo de acceso', 'vinculo' => toba::vinculador()->get_url(toba_editor::get_id(), 1000261, null, $opciones), 'target' => apex_frame_centro));
 }
Exemple #17
0
 function get_input($id)
 {
     $html = '';
     $id_js = $this->id_js_arbol;
     $id_input = $id . '_carpeta';
     if ($this->comunicacion_elemento_input) {
         $img_marcar = toba_recurso::imagen_toba('aplicar.png', false);
         $html .= "<img src='{$img_marcar}' id='" . $id_input . "_img' onclick='{$id_js}.marcar(\"{$this->get_id()}\")' />";
     }
     $html .= "<input type='checkbox' value='1' id='{$id_input}' name='{$id_input}' onclick='{$id_js}.marcar(\"{$this->get_id()}\", this.value)' />";
     return $html;
 }
 function __construct($padre, $id, $nombre)
 {
     parent::__construct($nombre, $padre);
     $this->id = $id;
     $this->nombre_largo = $nombre;
     $this->agregar_icono(array('imagen' => toba_recurso::imagen_toba('usuarios/usuario.gif', false), 'ayuda' => null));
     $opciones['menu'] = true;
     $opciones['celda_memoria'] = 'central';
     $parametros = array(apex_hilo_qs_zona => toba_editor::get_proyecto_cargado() . apex_qs_separador . $this->id);
     $this->agregar_utileria(array('imagen' => toba_recurso::imagen_toba('usuarios/permisos.gif', false), 'ayuda' => 'Editar DERECHOS del grupo de acceso', 'vinculo' => toba::vinculador()->get_url(toba_editor::get_id(), '3278', $parametros, $opciones), 'target' => apex_frame_centro));
     $this->agregar_utileria(array('imagen' => toba_recurso::imagen_toba('usuarios/grupo.gif', false), 'ayuda' => 'Editar el acceso a ITEMs del grupo de acceso', 'vinculo' => toba::vinculador()->get_url(toba_editor::get_id(), '3288', $parametros, $opciones), 'target' => apex_frame_centro));
     $this->agregar_utileria(array('imagen' => toba_recurso::imagen_toba('objetos/editar.gif', false), 'ayuda' => 'Editar GRUPO de ACCESO', 'vinculo' => toba::vinculador()->get_url(toba_editor::get_id(), 1000261, $parametros, $opciones), 'target' => apex_frame_centro));
 }
Exemple #19
0
 /**
  * Metodo que retorna los datos para cargar el app_launcher, se obtienen del usuario y de la clase de autenticacion
  */
 private function cargar_app_launcher_data()
 {
     // datos por defecto
     $appLauncherDataDefault = array('usuario_id' => toba::usuario()->get_id(), 'usuario_nombre' => toba::usuario()->get_nombre(), 'usuario_foto' => toba_recurso::imagen_toba('usuarios/foto_perfil_defecto.png'), 'aplicaciones' => array());
     // datos provenientes de la autenticacion
     $atributos_usuario = toba::manejador_sesiones()->get_autenticacion()->get_atributos_usuario();
     if (isset($atributos_usuario['appLauncherData']) && !empty($atributos_usuario['appLauncherData'])) {
         $appLauncherData = json_decode(current($atributos_usuario['appLauncherData']), true);
     } else {
         $appLauncherData = array();
     }
     // mergeo entre los datos por defecto y los datos de la autenticacion
     return array_merge($appLauncherDataDefault, $appLauncherData);
 }
Exemple #20
0
 protected function generar_html_encabezado()
 {
     echo "<html><head>";
     $estilo = toba::proyecto()->get_parametro('estilo');
     echo toba_recurso::link_css("toba_impr", 'screen');
     echo toba_recurso::link_css("toba_impr", 'print');
     echo "<style type='text/css' media='print'>\n\t\t\t.barra-impresion {\n\t\t\t\tdisplay: none;\t\t\t\t\n\t\t\t}\n\t\t\t</style>\n";
     toba_js::cargar_consumos_basicos();
     echo "</head><body>\n";
     echo "<div class='barra-impresion'>";
     echo "<button onclick='window.print()'>" . toba_recurso::imagen_toba('impresora.gif', true, null, null) . "    Imprimir</button>";
     echo "</div>";
     echo $this->encabezado();
 }
Exemple #21
0
 function post_configurar()
 {
     parent::post_configurar();
     $img = toba_recurso::imagen_toba('nucleo/php.gif', true);
     $cliente = 'servicios/seguro_configuracion/ci_cliente.php';
     $url_cliente = toba::vinculador()->get_url('toba_editor', '30000014', array('archivo' => $cliente), array('prefijo' => toba_editor::get_punto_acceso_editor()));
     $url_servicio = toba::vinculador()->get_url('toba_editor', '30000014', array('archivo' => $this->path_servicio), array('prefijo' => toba_editor::get_punto_acceso_editor()));
     $html = "<div style='float:right; background-color:white; padding: 10px'><a target='logger' href='{$url_cliente}'>{$img} Ver .php del Cliente</a>";
     $html .= "<br><a target='logger' href='{$url_servicio}'>{$img} Ver .php del Servicio</a>";
     $url_ejemplos = 'http://repositorio.siu.edu.ar/trac/toba/wiki/Referencia/ServiciosWeb';
     $html .= "<br>Documentación de <a target='_blank' href='{$url_ejemplos}'>servicios web en toba</a></div>";
     $html .= $this->pantalla()->get_descripcion();
     $this->pantalla()->set_descripcion($html);
 }
Exemple #22
0
 function barra_superior()
 {
     echo "<div id='barra-superior' class='barra-superior barra-superior-tit barra-popup'>\n";
     $info = toba::solicitud()->get_datos_item();
     echo "<div class='item-barra'>";
     if (trim($info['item_descripcion']) != '') {
         $desc = toba_parser_ayuda::parsear(trim($info['item_descripcion']));
         $ayuda = toba_recurso::ayuda(null, $desc, 'item-barra-ayuda', 0);
         echo "<div {$ayuda}>";
         echo toba_recurso::imagen_toba("ayuda_grande.gif", true);
         echo "</div>";
     }
     echo "<div class='item-barra-tit'>" . $this->titulo_item() . "</div>";
     echo "</div>\n\n";
 }
Exemple #23
0
 /**
  * Genera el HTML que posibilita cambiar entre procesos
  * @ventana
  */
 protected function cambio_proyecto()
 {
     $proyectos = toba::instancia()->get_proyectos_accesibles();
     $actual = toba::proyecto()->get_id();
     if (count($proyectos) > 1) {
         //-- Si hay al menos dos proyectos
         echo '<div class="enc-cambio-proy">';
         echo '<a href="#" title="Ir a la inicio" onclick="vinculador.ir_a_proyecto(\'' . $actual . '\');">' . toba_recurso::imagen_toba("home.png", true) . '</a>';
         $datos = rs_convertir_asociativo($proyectos, array(0), 1);
         echo toba_form::select(apex_sesion_qs_cambio_proyecto, $actual, $datos, 'ef-combo', 'onchange="vinculador.ir_a_proyecto(this.value)"');
         echo toba_js::abrir();
         echo 'var url_proyectos = ' . toba_js::arreglo(toba::instancia()->get_url_proyectos(array_keys($datos)), true);
         echo toba_js::cerrar();
         echo '</div>';
     }
 }
Exemple #24
0
 function get_iconos()
 {
     if (isset($this->imagen) && $this->imagen != '' && $this->imagen_origen != '') {
         if ($this->imagen_origen == 'apex') {
             $imagen = toba_recurso::imagen_toba($this->imagen, false);
         } else {
             $imagen = toba_recurso::url_proyecto($this->proyecto) . '/img/' . $this->imagen;
         }
     }
     if (!isset($imagen)) {
         $imagen = toba_recurso::imagen_toba($this->icono, false);
     }
     $iconos = array();
     $iconos[] = array('imagen' => $imagen, 'ayuda' => $this->nombre_corto);
     return $iconos;
 }
Exemple #25
0
 function conf__cuadro(toba_ei_cuadro $cuadro)
 {
     if (!isset($this->s__datos) || $this->filtrar) {
         $carpeta = toba::instancia()->get_path_proyecto(toba_editor::get_proyecto_cargado()) . '/php';
         $carpeta = toba_manejador_archivos::path_a_plataforma($carpeta);
         $extra = '';
         if (isset($this->s__filtro['nombre'])) {
             $extra = "{$this->s__filtro['nombre']}.*";
         }
         $archivos = toba_manejador_archivos::get_archivos_directorio($carpeta, "/{$extra}\\.php\$/", true);
         $modelo = toba_editor::get_modelo_proyecto();
         $estandar = $modelo->get_estandar_convenciones();
         $datos = array();
         foreach ($archivos as $archivo) {
             $path_relativo = substr($archivo, strlen($carpeta) + 1);
             $nombre = basename($archivo);
             if (strlen($nombre) > 30) {
                 $nombre = substr($nombre, 0, 30) . '...';
             }
             $info = array('archivo' => $nombre, 'path' => $path_relativo);
             if (isset($this->s__filtro['convenciones']) && $this->s__filtro['convenciones']) {
                 $errores = $estandar->validar(array($archivo));
                 $info['errores'] = $errores['totals']['errors'];
                 $info['warnings'] = $errores['totals']['warnings'];
             }
             $datos[] = $info;
         }
         $this->s__datos = rs_ordenar_por_columna($datos, 'archivo');
     }
     if (isset($this->s__filtro['convenciones']) && $this->s__filtro['convenciones']) {
         $columnas = array();
         $columnas[0]['clave'] = 'errores';
         $columnas[0]['titulo'] = toba_recurso::imagen_toba('error.gif', true);
         $columnas[0]['estilo'] = 'col-num-p1';
         $columnas[1]['clave'] = 'warnings';
         $columnas[1]['titulo'] = toba_recurso::imagen_toba('warning.gif', true);
         $columnas[1]['estilo'] = 'col-num-p1';
         $cuadro->agregar_columnas($columnas);
     }
     $cuadro->desactivar_modo_clave_segura();
     $cuadro->set_datos($this->s__datos);
 }
Exemple #26
0
 function evt__post_cargar_datos_dependencias()
 {
     if (isset($this->dependencias['formulario'])) {
         $eventos = $this->dependencias['formulario']->get_lista_eventos();
         $eventos += eventos::evento_estandar('otro_evento', 'Otro Evento');
         $this->dependencias['formulario']->set_eventos($eventos);
     }
     if (isset($this->dependencias['cuadro_abm'])) {
         //Se le agrega un botón cancelar
         $eventos = $this->dependencias['cuadro_abm']->get_lista_eventos();
         $eventos += eventos::cancelar();
         //Se le agrega un evento seleccion_borrar a cada fila
         $borra = eventos::duplicar(eventos::seleccion(), 'seleccion_borrar');
         $borra['seleccion_borrar']['imagen'] = toba_recurso::imagen_toba('borrar.gif');
         $borra['seleccion_borrar']['confirmacion'] = '¿Está seguro que quiere borrar la fila?';
         $borra['seleccion_borrar']['ayuda'] = 'Borra la fila';
         $eventos += $borra;
         $this->dependencias['cuadro_abm']->set_eventos($eventos);
     }
 }
Exemple #27
0
 function conf__columnas(toba_ei_cuadro $cuadro)
 {
     $columnas = toba::db($this->fuente, toba_editor::get_proyecto_cargado())->get_definicion_columnas($this->s__tabla);
     foreach (array_keys($columnas) as $id) {
         if ($columnas[$id]['pk']) {
             $columnas[$id]['pk'] = toba_recurso::imagen_toba('aplicar.png', true, null, null);
         } else {
             $columnas[$id]['pk'] = '&nbsp;';
         }
         if ($columnas[$id]['not_null']) {
             $columnas[$id]['not_null'] = toba_recurso::imagen_toba('aplicar.png', true, null, null);
         } else {
             $columnas[$id]['not_null'] = '&nbsp;';
         }
         if (!$columnas[$id]['secuencia']) {
             $columnas[$id]['secuencia'] = '&nbsp;';
         }
     }
     $cuadro->set_datos($columnas);
 }
 protected function cabecera_aplicacion()
 {
     $mostrar_app_launcher = toba::proyecto()->get_parametro('proyecto', 'app_launcher', false);
     if (!$mostrar_app_launcher) {
         $acceso_unico = toba::manejador_sesiones()->get_cantidad_proyectos_cargados() == 1;
         $js = $acceso_unico ? 'salir()' : 'window.close()';
         echo '<a href="#" class="enc-salir" title="Cerrar la sesión" onclick="javascript:' . $js . '">';
         echo toba_recurso::imagen_toba('finalizar_sesion.gif', true);
         echo '</a>';
         //--- Usuario
         $this->info_usuario();
     } else {
         //--- Usuario y aplicaciones
         $this->info_usuario_aplicaciones();
     }
     //--- Logo
     echo "<div id='enc-logo' style='height:{$this->alto_cabecera}'>";
     $this->mostrar_logo();
     echo "</div>\n";
 }
Exemple #29
0
 function conf__items($ml)
 {
     $filas = $this->dep('datos')->get_filas();
     foreach ($filas as $id => $fila) {
         if ($fila['carpeta']) {
             $img = toba_recurso::imagen_toba('nucleo/carpeta.gif', true);
         } else {
             $img = toba_recurso::imagen_proyecto('item.gif', true);
         }
         if ($fila['imagen'] != '') {
             $url = admin_util::url_imagen_de_origen($fila['imagen'], $fila['imagen_recurso_origen']);
             $img = "<img src='{$url}' />";
         }
         $filas[$id]['imagen'] = "<div style='text-align:right'>{$img}</div>";
         if ($fila['item'] == $fila['padre']) {
             unset($filas[$id]);
         }
     }
     $ml->set_datos($filas);
 }
 protected function generar_ayuda()
 {
     $mensaje = toba::mensajes()->get_operacion_actual();
     if (isset($mensaje)) {
         if (strpos($mensaje, ' ') !== false) {
             //Detecta si es una url o un mensaje completo
             $desc = toba_parser_ayuda::parsear($mensaje);
             $ayuda = toba_recurso::ayuda(null, $desc, 'item-barra-ayuda', 0);
             echo "<div {$ayuda}>";
             echo toba_recurso::imagen_toba("ayuda_grande.gif", true);
             echo "</div>";
         } else {
             if (!toba_parser_ayuda::es_texto_plano($mensaje)) {
                 $mensaje = toba_parser_ayuda::parsear($mensaje, true);
                 //Version resumida
             }
             $js = "abrir_popup('ayuda', '{$mensaje}', {width: 800, height: 600, scrollbars: 1})";
             echo "<a class='barra-superior-ayuda' href='#' onclick=\"{$js}\" title='Abrir ayuda'>" . toba_recurso::imagen_toba("ayuda_grande.gif", true) . "</a>";
         }
     }
 }