| 1 | <?php | 
|---|
| 2 | // ************************************************************************************************************************************************* | 
|---|
| 3 | // Aplicación WEB: ogAdmWebCon | 
|---|
| 4 | // Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla | 
|---|
| 5 | // Fecha Creación: Año 2009-2010 | 
|---|
| 6 | // Fecha Última modificación: Agosto-2010 | 
|---|
| 7 | // Nombre del fichero: gestor_perfilhardwares.php | 
|---|
| 8 | // Descripción : | 
|---|
| 9 | //              Gestiona el mantenimiento de la tabla de perfileshard | 
|---|
| 10 | // ************************************************************************************************************************************************* | 
|---|
| 11 | include_once("../includes/ctrlacc.php"); | 
|---|
| 12 | include_once("../clases/AdoPhp.php"); | 
|---|
| 13 | include_once("../clases/XmlPhp.php"); | 
|---|
| 14 | include_once("../clases/ArbolVistaXML.php"); | 
|---|
| 15 | include_once("../includes/CreaComando.php"); | 
|---|
| 16 | include_once("../includes/constantes.php"); | 
|---|
| 17 | include_once("../includes/opciones.php"); | 
|---|
| 18 | include_once("../includes/tftputils.php"); | 
|---|
| 19 | include_once("./relaciones/perfileshard_eliminacion.php"); | 
|---|
| 20 | //________________________________________________________________________________________________________ | 
|---|
| 21 | $opcion=0; // Inicializa parametros | 
|---|
| 22 |  | 
|---|
| 23 | $idperfilhard=0; | 
|---|
| 24 | $descripcion=""; | 
|---|
| 25 | $comentarios=""; | 
|---|
| 26 | $grupoid=0; | 
|---|
| 27 |  | 
|---|
| 28 | $urlimgth=""; // Url de la imagen del tipo de hardware al que pertenece el perfil | 
|---|
| 29 |  | 
|---|
| 30 | if (isset($_POST["opcion"])) $opcion=$_POST["opcion"]; // Recoge parametros | 
|---|
| 31 |  | 
|---|
| 32 | if (isset($_POST["idperfilhard"])) $idperfilhard=$_POST["idperfilhard"]; | 
|---|
| 33 | if (isset($_POST["descripcion"])) $descripcion=$_POST["descripcion"]; | 
|---|
| 34 | if (isset($_POST["comentarios"])) $comentarios=$_POST["comentarios"]; | 
|---|
| 35 | if (isset($_POST["grupoid"])) $grupoid=$_POST["grupoid"]; | 
|---|
| 36 | if (isset($_POST["identificador"])) $idperfilhard=$_POST["identificador"]; | 
|---|
| 37 | if (isset($_POST["winboot"])) $winboot=$_POST["winboot"]; | 
|---|
| 38 |  | 
|---|
| 39 | $tablanodo=""; // Arbol para nodos insertados | 
|---|
| 40 |  | 
|---|
| 41 | $cmd=CreaComando($cadenaconexion); // Crea objeto comando | 
|---|
| 42 | $resul=false; | 
|---|
| 43 | if ($cmd){ | 
|---|
| 44 | $resul=Gestiona(); | 
|---|
| 45 | $cmd->Conexion->Cerrar(); | 
|---|
| 46 | } | 
|---|
| 47 | if($opcion!=$op_movida){ | 
|---|
| 48 | echo '<HTML>'; | 
|---|
| 49 | echo '<HEAD>'; | 
|---|
| 50 | echo '  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">'; | 
|---|
| 51 | echo '<BODY>'; | 
|---|
| 52 | echo '<P><SPAN style="visibility:hidden" id="arbol_nodo">'.$tablanodo.'</SPAN></P>'; | 
|---|
| 53 | echo '  <SCRIPT language="javascript" src="../jscripts/propiedades_perfilhardwares.js"></SCRIPT>'; | 
|---|
| 54 | echo '<SCRIPT language="javascript">'.chr(13); | 
|---|
| 55 | if ($resul){ | 
|---|
| 56 | echo 'var oHTML'.chr(13); | 
|---|
| 57 | echo 'var cTBODY=document.getElementsByTagName("TBODY");'.chr(13); | 
|---|
| 58 | echo 'o=cTBODY.item(1);'.chr(13); | 
|---|
| 59 | } | 
|---|
| 60 | } | 
|---|
| 61 | $literal=""; | 
|---|
| 62 | switch($opcion){ | 
|---|
| 63 | case $op_alta : | 
|---|
| 64 | $literal="resultado_insertar_perfilhardwares"; | 
|---|
| 65 | break; | 
|---|
| 66 | case $op_modificacion: | 
|---|
| 67 | $literal="resultado_modificar_perfilhardwares"; | 
|---|
| 68 | break; | 
|---|
| 69 | case $op_eliminacion : | 
|---|
| 70 | $literal="resultado_eliminar_perfilhardwares"; | 
|---|
| 71 | break; | 
|---|
| 72 | case $op_movida : | 
|---|
| 73 | $literal="resultado_mover"; | 
|---|
| 74 | break; | 
|---|
| 75 | default: | 
|---|
| 76 | break; | 
|---|
| 77 | } | 
|---|
| 78 |  | 
|---|
| 79 | if ($resul){ | 
|---|
| 80 | if ($opcion==$op_alta ) | 
|---|
| 81 | echo $literal."(1,'".$cmd->DescripUltimoError()." ',".$idperfilhard.",o.innerHTML);".chr(13); | 
|---|
| 82 | else | 
|---|
| 83 | echo $literal."(1,'".$cmd->DescripUltimoError()." ','".$descripcion."');".chr(13); | 
|---|
| 84 | } | 
|---|
| 85 | else | 
|---|
| 86 | echo $literal."(0,'".$cmd->DescripUltimoError()."',".$idperfilhard.")"; | 
|---|
| 87 |  | 
|---|
| 88 | if($opcion!=$op_movida){ | 
|---|
| 89 | echo '  </SCRIPT>'; | 
|---|
| 90 | echo '</BODY>   '; | 
|---|
| 91 | echo '</HTML>'; | 
|---|
| 92 | } | 
|---|
| 93 | /************************************************************************************************************************************************** | 
|---|
| 94 | Inserta, modifica o elimina datos en la tabla perfileshard | 
|---|
| 95 | ________________________________________________________________________________________________________*/ | 
|---|
| 96 | function Gestiona(){ | 
|---|
| 97 | global  $cmd; | 
|---|
| 98 | global  $opcion; | 
|---|
| 99 |  | 
|---|
| 100 | global  $idcentro; | 
|---|
| 101 | global  $idperfilhard; | 
|---|
| 102 | global  $descripcion; | 
|---|
| 103 | global  $comentarios; | 
|---|
| 104 | global  $grupoid; | 
|---|
| 105 | global  $winboot; | 
|---|
| 106 | global  $idioma; | 
|---|
| 107 | global  $urlimgth; | 
|---|
| 108 |  | 
|---|
| 109 | global  $op_alta; | 
|---|
| 110 | global  $op_modificacion; | 
|---|
| 111 | global  $op_eliminacion; | 
|---|
| 112 | global  $op_movida; | 
|---|
| 113 |  | 
|---|
| 114 | global  $tablanodo; | 
|---|
| 115 |  | 
|---|
| 116 | $cmd->CreaParametro("@idcentro",$idcentro,1); | 
|---|
| 117 | $cmd->CreaParametro("@idperfilhard",$idperfilhard,1); | 
|---|
| 118 | $cmd->CreaParametro("@descripcion",$descripcion,0); | 
|---|
| 119 | $cmd->CreaParametro("@comentarios",$comentarios,0); | 
|---|
| 120 | $cmd->CreaParametro("@grupoid",$grupoid,1); | 
|---|
| 121 | $cmd->CreaParametro("@winboot",$winboot,0); | 
|---|
| 122 |  | 
|---|
| 123 | switch($opcion){ | 
|---|
| 124 | case $op_alta : | 
|---|
| 125 | $cmd->texto="INSERT INTO perfileshard (descripcion,comentarios,idcentro,grupoid,winboot) VALUES (@descripcion,@comentarios,@idcentro,@grupoid,@winboot)"; | 
|---|
| 126 | $resul=$cmd->Ejecutar(); | 
|---|
| 127 | if ($resul){ // Crea una tabla nodo para devolver a la página que llamó ésta | 
|---|
| 128 | $idperfilhard=$cmd->Autonumerico(); | 
|---|
| 129 | $arbolXML=SubarbolXML_perfileshard($idperfilhard,$descripcion); | 
|---|
| 130 | $baseurlimg="../images/signos"; // Url de las imagenes de signo | 
|---|
| 131 | $clasedefault="texto_arbol"; // Hoja de estilo (Clase por defecto) del árbol | 
|---|
| 132 | $arbol=new ArbolVistaXML($arbolXML,0,$baseurlimg,$clasedefault); | 
|---|
| 133 | $tablanodo=$arbol->CreaArbolVistaXML(); | 
|---|
| 134 | } | 
|---|
| 135 | break; | 
|---|
| 136 | case $op_modificacion: | 
|---|
| 137 | $cmd->texto="UPDATE perfileshard SET descripcion=@descripcion,comentarios=@comentarios,winboot=@winboot WHERE idperfilhard=@idperfilhard"; | 
|---|
| 138 | $resul=$cmd->Ejecutar(); | 
|---|
| 139 | // Actualizar ficheros PXE de todos los ordenadores afectados. | 
|---|
| 140 | updateBootMode ($cmd, "idperfilhard", $idperfilhard, $idioma); | 
|---|
| 141 | break; | 
|---|
| 142 | case $op_eliminacion : | 
|---|
| 143 | $resul=EliminaPerfileshard($cmd,$idperfilhard,"idperfilhard"); | 
|---|
| 144 | break; | 
|---|
| 145 | case $op_movida : | 
|---|
| 146 | $cmd->texto="UPDATE perfileshard SET grupoid=@grupoid WHERE idperfilhard=@idperfilhard"; | 
|---|
| 147 | $resul=$cmd->Ejecutar(); | 
|---|
| 148 | break; | 
|---|
| 149 | default: | 
|---|
| 150 | break; | 
|---|
| 151 | } | 
|---|
| 152 | return($resul); | 
|---|
| 153 | } | 
|---|
| 154 | /*________________________________________________________________________________________________________ | 
|---|
| 155 | Crea un arbol XML para el nuevo nodo insertado | 
|---|
| 156 | ________________________________________________________________________________________________________*/ | 
|---|
| 157 | function SubarbolXML_perfileshard($idperfilhard,$descripcion){ | 
|---|
| 158 | global $LITAMBITO_PERFILESHARD; | 
|---|
| 159 | $cadenaXML='<PERFILESHARDWARES '; | 
|---|
| 160 | // Atributos | 
|---|
| 161 | $cadenaXML.=' imagenodo="../images/iconos/perfilhardware.gif"'; | 
|---|
| 162 | $cadenaXML.=' infonodo="'.$descripcion.'"'; | 
|---|
| 163 | $cadenaXML.=' nodoid='.$LITAMBITO_PERFILESHARD.'-'.$idperfilhard; | 
|---|
| 164 | $cadenaXML.=' clickcontextualnodo="menu_contextual(this,' ."'flo_".$LITAMBITO_PERFILESHARD."'" .')"'; | 
|---|
| 165 | $cadenaXML.='>'; | 
|---|
| 166 | $cadenaXML.='</PERFILESHARDWARES>'; | 
|---|
| 167 | return($cadenaXML); | 
|---|
| 168 | } | 
|---|
| 169 | ?> | 
|---|
| 170 |  | 
|---|