Topic #409: propiedades_imagenes.2.php

File propiedades_imagenes.2.php, 20.3 KB (added by acodoner, 4 years ago)

/opt/opengnsys/www/propiedades/propiedades_imagenes.php para versión 1.1.1c

Line 
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: propiedades_imagenes.php
8// Descripción :
9//               Presenta el formulario de captura de datos de una imagen para insertar,modificar y eliminar
10// *******************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/AdoPhp.php");
13include_once("../includes/constantes.php");
14include_once("../includes/opciones.php");
15include_once("../includes/CreaComando.php");
16include_once("../includes/HTMLSELECT.php");
17include_once("../includes/TomaDato.php");
18include_once("../includes/comunes.php");
19include_once("../includes/restfunctions.php");
20include_once("../idiomas/php/".$idioma."/propiedades_imagenes_".$idioma.".php");
21include_once("../idiomas/php/".$idioma."/avisos_".$idioma.".php");
22//________________________________________________________________________________________________________
23
24if (isset($_POST["opcion"])) {$opcion=$_POST["opcion"];}else{$opcion=0;} // Recoge parametros
25$opciones=array($TbMsg[0],$TbMsg[1],$TbMsg[2],$TbMsg[3]);
26//________________________________________________________________________________________________________
27
28// Valores iniciales para variables.
29$idimagen=0;
30$nombreca="";
31$ruta="";
32$directorio_ou=""; //añadido por acodoner
33$descripcion="";
34$modelo="";
35$numdisk=0;
36$numpar=0;
37$codpar=0;
38$tipopar="";
39$idperfilsoft=0;
40$perfilsoft="";
41$comentarios="";
42$inremotepc="";
43$scheduler="";
44$grupoid=0;
45$litamb="";
46$tipoimg=0;
47$idrepositorio=0;
48$repoip="";
49$repokey="";
50$sistoperativo="";
51$fechacreacion="";
52$revision=0;
53$imagenid=0;
54$validnombreca="";
55$validdescripcion="";
56if (isset($_POST["validnombreca"])) {$opcion=$_POST["validnombreca"];}else{$validnombreca="";} // Recoge parametros
57if (isset($_POST["datospost"])) {$datospost=$_POST["datospost"];}else{$datospost=0;} // Recoge parametros
58if (isset($_GET["opcion"])) $opcion=$_GET["opcion"];  // Recoge parametros
59if (isset($_GET["idimagen"])) $idimagen=$_GET["idimagen"]; 
60if (isset($_GET["grupoid"])) $grupoid=$_GET["grupoid"]; 
61if (isset($_GET["identificador"])) $idimagen=$_GET["identificador"];
62if (isset($_GET["litamb"])) $litamb=$_GET["litamb"];
63if (isset($_GET["tipoimg"])) $tipoimg=$_GET["tipoimg"];
64//________________________________________________________________________________________________________
65//________________________________________________________________________________________________________
66$cmd=CreaComando($cadenaconexion); // Crea objeto comando
67if (!$cmd)
68        header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
69if  ($opcion!=$op_alta)
70        $resul=TomaPropiedades($cmd,$idimagen);
71else
72        $resul=TomaConfiguracion($cmd);
73if (!$resul)
74        header('Location: '.$pagerror.'?herror=3'); // Error de recuperación de datos.
75
76if ($opcion == 1 && $datospost == 1) {
77        if (isset($_POST["opcion"])) $opcion=$_POST["opcion"];// Recoge parametros
78        if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"];
79        if (isset($_POST["idimagen"])) $idimagen=$_POST["idimagen"];
80        if (isset($_POST["nombreca"])) {
81                $nombreca=$_POST["nombreca"];
82                ValidaNombre($cmd,$nombreca,$idrepositorio);
83        }
84        if ($validnombreca != 1) {$validnombreca=0;}
85        if (isset($_POST["ruta"])) $ruta=$_POST["ruta"];
86        if (isset($_POST["directorio"])) $directorio_ou=$_POST["directorio"]; //Añadido por acodoner   
87        if (isset($_POST["descripcion"])) {$descripcion=$_POST["descripcion"];}
88        if (isset($_POST["grupoid"])) $grupoid=$_POST["grupoid"];
89        if (isset($_POST["idperfilsoft"])) $idperfilsoft=$_POST["idperfilsoft"]; 
90        if (isset($_POST["comentarios"])) $comentarios=$_POST["comentarios"]; 
91        if (isset($_POST["inremotepc"])) $inremotepc=$_POST["inremotepc"]; 
92        if (isset($_POST["identificador"])) $idimagen=$_POST["identificador"];
93        if (isset($_POST["modelo"])) $numpar=$_POST["modelo"]; 
94        if (isset($_POST["numdisk"])) $numpar=$_POST["numdisk"]; 
95        if (isset($_POST["numpar"])) $numpar=$_POST["numpar"]; 
96        if (isset($_POST["codpar"])) $codpar=$_POST["codpar"]; 
97        if (isset($_POST["idrepositorio"])) $idrepositorio=$_POST["idrepositorio"]; 
98        if (isset($_POST["imagenid"])) $imagenid=$_POST["imagenid"]; 
99        if (isset($_POST["tipoimg"])) $tipoimg=$_POST["tipoimg"]; 
100        if (isset($_POST["fechacreacion"])) $fechacreacion=$_POST["fechacreacion"]; 
101        if (isset($_POST["litamb"])) $litamb=$_POST["litamb"]; 
102        }
103// Solicitar datos del fichero de imagen a la API REST de su repositorio.
104if  ($opcion!=$op_alta and isset($repokey)) {
105        //$repo[0]['url'] = "https://$repoip/opengnsys/rest/repository/image/$nombreca";
106        //Añadido por acodoner
107        if ($directorio_ou === "") {
108                $repo[0]['url'] = "https://$repoip/opengnsys/rest/repository/image/$nombreca";
109        }
110        else {
111                $repo[0]['url'] = "https://$repoip/opengnsys/rest/repository/image/$directorio_ou/$nombreca";
112        } //Añadido por acodoner
113        $repo[0]['header'] = array('Authorization: '.$repokey);
114        $result = multiRequest($repo);
115        if ($result[0]['code'] === 200) {
116                $result = json_decode($result[0]['data']);
117                $imgpath = (@$result->type==="dir" ? @$result->name : @$result->name.".".@$result->type);
118                $imgsize = humanSize(@$result->size);
119                $imgdatasize = humanSize(@$result->datasize);
120                $imgbackup = @$result->backedup;
121                $imgbksize = isset($result->backupsize) ? humanSize($result->backupsize) : 0;
122                $imglock = @$result->locked;
123        } else {
124                $imgpath = $imgsize = $imgbackup = $imglock = "";
125        }
126}
127
128//________________________________________________________________________________________________________
129?>
130<HTML>
131<HEAD>
132    <TITLE>Administración web de aulas</TITLE>
133        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
134        <LINK rel="stylesheet" type="text/css" href="../estilos.css">
135        <SCRIPT language="javascript" src="../jscripts/validators.js"></SCRIPT>
136        <SCRIPT language="javascript" src="../jscripts/constantes.js"></SCRIPT>
137        <SCRIPT language="javascript" src="../jscripts/propiedades_imagenes.js"></SCRIPT>
138        <SCRIPT language="javascript" src="../jscripts/opciones.js"></SCRIPT>
139        <?php echo '<SCRIPT language="javascript" src="../idiomas/javascripts/'.$idioma.'/propiedades_imagenes_'.$idioma.'.js"></SCRIPT>'?>
140</HEAD>
141<BODY>
142<DIV align=center>
143<?php if ( $opcion == 1 && $datospost == 1 && $validnombreca == 0 && $validdescripcion == 0 || $opcion != 1) { ?>
144<FORM name="fdatos" action="../gestores/gestor_imagenes.php" method="post">
145<?php }else{ ?>
146<FORM name="fdatos" action="./propiedades_imagenes.php" method="post"> 
147<?php } ?>
148
149        <INPUT type="hidden" name="opcion" value="<?php echo $opcion?>">
150        <INPUT type="hidden" name="idimagen" value="<?php echo $idimagen?>">
151        <INPUT type="hidden" name="grupoid" value="<?php echo $grupoid?>">
152        <INPUT type="hidden" name="tipoimg" value="<?php echo $tipoimg?>">
153        <INPUT type="hidden" name="litamb" value="<?php echo $litamb?>">
154        <INPUT type="hidden" name="datospost" value="1">
155        <?php
156                switch($tipoimg){
157                case $IMAGENES_MONOLITICAS:
158                        $lit=$TbMsg[4];
159                        break;
160                case
161                        $IMAGENES_BASICAS:
162                        $lit=$TbMsg[12];
163                        break;
164                case $IMAGENES_INCREMENTALES:
165                        $lit=$TbMsg[13];
166                }
167               
168        ?>
169        <P align=center class=cabeceras><?php echo $lit?><BR>
170                <SPAN class=subcabeceras><?php echo $opciones[$opcion]?></SPAN>
171        </P>
172
173        <TABLE  align=center border=0 cellPadding=1 cellSpacing=1 class=tabla_datos>
174        <!-- -------------------------------------------------------------------------------- -->
175                <TR>
176                        <TH align=center>&nbsp;<?php echo $TbMsg[11]?>&nbsp;</TH>
177                        <?php   if ($opcion==$op_eliminacion || !empty($idperfilsoft) || $opcion == 2)
178                                        echo '<TD style="width:150px">'.$nombreca.'
179                                        &nbsp;<INPUT type="hidden" name="nombreca" value="'.$nombreca.'"></TD>';
180                                else
181                                        echo '<TD><INPUT  class="formulariodatos" name=nombreca style="width:150px" type=text value="'.$nombreca.'">';
182                                if ($validnombreca == 1){echo '<div style="color: red; font-weight: bold;">&nbsp;'.$TbMsg[18].'</div>';}
183                                echo '</TD>';?>
184                </TR>
185        <!-- -------------------------------------------------------------------------------- -->
186                <TR>
187                        <TH align=center>&nbsp;<?php echo $TbMsg[5]?>&nbsp;</TH>
188                        <?php   if ($opcion==$op_eliminacion) {
189                                        echo '<TD style="width:300px">'.$descripcion.'
190                                        &nbsp;<INPUT type="hidden" name="descripcion" value="'.$descripcion.'"></TD>';
191                                } else {
192                                        echo '<TD><INPUT  class="formulariodatos" name=descripcion style="width:350px" type=text value="'.$descripcion.'">';
193                                        if ($validnombreca == 0 && $validdescripcion == 1){echo '<div style="color: red; font-weight: bold;">&nbsp;'.$TbMsg[22].'</div>';}
194                                        echo '</TD>';
195                                } ?>
196                </TR>
197        <!-- -------------------------------------------------------------------------------- -->
198        <?php if($tipoimg==$IMAGENES_INCREMENTALES){?>
199                <TR>
200                        <TH align=center>&nbsp;<?php echo $TbMsg[14]?>&nbsp;</TH>
201                        <?php   if ($opcion==$op_eliminacion || !empty($idperfilsoft))
202                                        echo '<TD>'.TomaDato($cmd,$idcentro,'imagenes',$imagenid,'imagenid','descripcion').'
203                                        &nbsp;<INPUT type="hidden" name="imagenid" value="'.$imagenid.'"></TD>';
204                                else
205                                        echo '<TD>'.HTMLSELECT($cmd,$idcentro,'imagenes',$imagenid,'idimagen','descripcion',300,"","","
206                                        tipo=".$IMAGENES_BASICAS,"imagenid").'</TD>';
207                        ?>
208                </TR>   
209        <?php } ?>
210        <?php if($tipoimg!=$IMAGENES_INCREMENTALES){?>
211        <!-- -------------------------------------------------------------------------------- -->
212                <TR>
213                        <TH align=center>&nbsp;<?php echo $TbMsg[10]?>&nbsp;</TH>
214                        <?php   if ($opcion==$op_eliminacion || !empty($idperfilsoft))
215                                        echo '<TD>'.$nombrerepositorio.'
216                                        &nbsp;<INPUT type="hidden" name="idrepositorio" value="'.$idrepositorio.'"></TD>';
217                                else
218                                        echo '<TD>'.HTMLSELECT($cmd,$idcentro,'repositorios',$idrepositorio,'idrepositorio','nombrerepositorio',300).'</TD>';
219                        ?>
220                </TR>                           
221        <!-- -------------------------------------------------------------------------------- -->
222        <?php if($tipoimg==$IMAGENES_BASICAS){?>       
223                <TR>
224                        <TH align=center>&nbsp;<?php echo $TbMsg[16]?>&nbsp;</TH>
225                        <?php   if ($opcion==$op_eliminacion || !empty($idperfilsoft))
226                                        echo '<TD>'.$ruta.'
227                                        &nbsp;<INPUT type="hidden" name="ruta" value="'.$ruta.'"></TD>';
228                                else
229                                        echo '<TD><INPUT  class="formulariodatos" name=ruta style="width:350px" type=text value="'.$ruta.'"></TH>';?>
230                </TR>   
231        <?php }?>                               
232        <!-- -------------------------------------------------------------------------------- -->
233                <TR>
234                        <TH align=center>&nbsp;<?php echo $TbMsg[7]?>&nbsp;</TH>
235                        <?php   if ($opcion==$op_eliminacion)
236                                        echo '<TD>'.$comentarios.'</TD>';
237                                else
238                                        echo '<TD><TEXTAREA   class="formulariodatos" name=comentarios rows=3 cols=55>'.$comentarios.'</TEXTAREA></TH>';
239                        ?>
240                </TR>
241                <!-- Acceso remoto -->
242                <tr>
243                        <th align="center">&nbsp;<?php echo $TbMsg['PROP_REMOTEACCESS']?>&nbsp;</th>
244                        <?php   if ($opcion==$op_eliminacion) {
245                                        echo '<td><input name="inremotepc" type="checkbox" disabled readonly';
246                                        if ($inremotepc)  echo ' checked ';
247                                        echo '></td>';
248                                } else {
249                                        echo '<td><input name="inremotepc" type="checkbox" value="1"';
250                                        if ($inremotepc)  echo ' checked ';
251                                        if ($scheduler)
252                                                echo '> <em>('.$TbMsg['COMM_REMOTEACCESS'].')<em></td>';
253                                        else
254                                                echo 'disabled> <em>'.$TbMsg['WARN_SCHEDULER'].'<em></td>';
255                                }
256                        ?>
257                </tr>
258
259            <?php if ($opcion!=$op_alta) { ?>
260                <!-- Equipo modelo (aula) -->
261                <tr>
262                        <th align=center>&nbsp;<?php echo $TbMsg[19]?>&nbsp;</th>
263                        <td>&nbsp;<?php echo $modelo ?>
264                            &nbsp;<input type="hidden" name="modelo" value="<?php echo $modelo ?>">
265                </tr>
266                <!-- Disco, partición y tipo de partición -->
267                <tr>
268                        <th align="center">&nbsp;<?php echo $TbMsg[8]?>&nbsp;</th>
269                        <td>&nbsp;<?php if (! empty($modelo)) echo "$numdisk, $numpar (".dechex($codpar)."-$tipopar)" ?>
270                            <input type="hidden" name="numdisk" value="<?php echo $numdisk ?>">
271                            <input type="hidden" name="numpar" value="<?php echo $numpar ?>"></td>
272                </tr>
273                <!-- Fecha de creación -->
274                <tr>
275                        <th align="center">&nbsp;<?php echo $TbMsg[20]?>&nbsp;</th>
276                        <td>&nbsp;<?php if (! empty ($modelo)) echo "$fechacreacion ".($revision>0 ? "(r$revision)" : "") ?>
277                            <input type="hidden" name="fechacreacion" value="<?php echo $fechacreacion ?>"></td>
278                </tr>
279                <!-- Perfil de software -->
280                <TR>
281                        <TH align=center>&nbsp;<?php echo $TbMsg[6]?>&nbsp;</TH>
282                        <?php
283                                if (isset($modelo)) {
284                                        echo '<TD>&nbsp;'.$perfilsoft.'
285                                        &nbsp;<INPUT type="hidden" name="idperfilsoft" value="'.$idperfilsoft.'"></TD>';
286                                } else {
287                                        echo '<TD>'.HTMLSELECT($cmd,$idcentro,'perfilessoft',$idperfilsoft,'idperfilsoft','descripcion',300).'</TD>';
288                                }
289                        ?>
290                </TR>                   
291                <!-- Sistema Operativo -->
292                <tr>
293                        <th align="center">&nbsp;<?php echo $TbMsg['PROP_OS']?>&nbsp;</th>
294                        <td>&nbsp;<?php echo $sistoperativo?> </td>
295                </tr>
296                <!-- Tamaño de los datos -->
297                <tr>
298                        <th align="center">&nbsp;<?php echo $TbMsg['DATA_SIZE']?>&nbsp;</th>
299                        <td>&nbsp;<?php echo $imgdatasize?> </td>
300                </tr>
301            <?php
302                // Datos de imagen en el repositorio
303                if (isset($imgpath)) {
304                        print <<< EOT
305                <tr>
306                        <th colspan="2" align="center">Datos del repositorio</th>
307                </tr>
308                <tr>
309                        <th align="center">Camino</th>
310                        <td>&nbsp;$directorio_ou/$imgpath&nbsp;</td> <!-- Modificado por acodoner -->
311                        <!-- <td>&nbsp;/$imgpath&nbsp;</td> -->
312                </tr>
313                <tr>
314                        <th align="center">Tamaño</th>
315                        <td>&nbsp;$imgsize&nbsp;</td>
316                </tr>
317EOT;
318                        if ($imgbackup) {
319                                print <<< EOT
320                <tr>
321                        <th align="center">Copia de seguridad</th>
322                        <td>&nbsp;$imgbksize&nbsp;</td>
323                </tr>
324EOT;
325                        }
326                        if ($imglock) {
327                                print <<< EOT
328                <tr>
329                        <th align="center">Bloqueada</th>
330                        <td>&nbsp;Atención: la imagen está bloqueda por operación de uso exclusivo&nbsp;</td>
331                </tr>
332EOT;
333                        }
334                }
335            ?>
336            <?php  } // fin if != op_alta
337            // Mensaje aviso ruta de origen
338            if ($opcion==$op_alta && $tipoimg==$IMAGENES_BASICAS) {
339                echo '<tr><th colspan="14">'.$TbMsg["WARN_SOURCE_PATH"].'</th></tr>';
340            }
341        }?>     
342        <!-- -------------------------------------------------------------------------------- -->
343        </TABLE>
344</FORM>
345
346<?php
347if (!empty($idperfilsoft)){ // Nota a pie de página indicando que cuando la imagen tiene perfilsoft no pueden modificarse ciertos campos
348        echo '
349                <DIV id="Layer_nota" align=center >
350                        <SPAN class=notas><em>'.$TbMsg[15].'</em></SPAN>
351                </DIV><br>';
352}
353//________________________________________________________________________________________________________
354
355
356if ($validnombreca=="0"){
357echo '<script type="text/javascript">';
358echo 'confirmar('.$opcion.')';
359echo '</script>';
360}
361if ($validnombreca=="1"){
362echo '<script type="text/javascript">';
363echo 'alert('.$TbMsg[17].')';
364echo '</script>';
365}
366
367include_once("../includes/opcionesbotonesop.php");
368//________________________________________________________________________________________________________
369
370?>
371</BODY>
372</HTML>
373<?php
374//________________________________________________________________________________________________________
375
376//      Recupera los datos de una imagen
377//              Parametros:
378//              - cmd: Una comando ya operativo (con conexión abierta) 
379//              - id: El identificador de la imagen
380//________________________________________________________________________________________________________
381
382function TomaPropiedades($cmd,$idmagen){
383        global $nombreca;
384        global $ruta;
385        global $directorio_ou; //Añadido por acodoner
386        global $descripcion;
387        global $comentarios;
388        global $inremotepc;
389        global $scheduler;
390        global $idperfilsoft;
391        global $modelo;
392        global $numdisk;
393        global $numpar;
394        global $codpar;
395        global $tipopar;
396        global $nombrerepositorio;
397        global $idrepositorio;
398        global $repoip;
399        global $repokey;
400        global $perfilsoft;
401        global $sistoperativo;
402        global $imagenid;
403        global $fechacreacion;
404        global $revision;
405       
406        $rs=new Recordset; 
407        //centros.directorio AS directorio, y LEFT OUTER JOIN centros ON centros.idcentro=imagenes.idcentro añadido por acodoner
408        $cmd->texto="SELECT imagenes.*, tipospar.tipopar, repositorios.nombrerepositorio,
409                        repositorios.ip, repositorios.apikey, centros.directorio AS directorio,
410                        perfilessoft.descripcion AS perfilsoft, nombreso AS sistoperativo,
411                        CONCAT (ordenadores.nombreordenador,' (',aulas.nombreaula,')') AS modelo,
412                        IF(@@GLOBAL.event_scheduler='ON',1,0) AS scheduler
413                        FROM imagenes
414                        LEFT OUTER JOIN tipospar ON tipospar.codpar=imagenes.codpar
415                        LEFT OUTER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio
416                        LEFT OUTER JOIN centros ON centros.idcentro=imagenes.idcentro
417                        LEFT OUTER JOIN perfilessoft ON perfilessoft.idperfilsoft=imagenes.idperfilsoft
418                        LEFT OUTER JOIN ordenadores ON ordenadores.idordenador=imagenes.idordenador
419                        LEFT OUTER JOIN aulas ON ordenadores.idaula=aulas.idaula
420                        LEFT OUTER JOIN nombresos ON perfilessoft.idnombreso=nombresos.idnombreso
421                        WHERE imagenes.idimagen=".$idmagen;
422        $rs->Comando=&$cmd; 
423        if (!$rs->Abrir()) return(0); // Error al abrir recordset
424        $rs->Primero(); 
425        if (!$rs->EOF){
426                $nombreca=$rs->campos["nombreca"];
427                $ruta=$rs->campos["ruta"];
428                $directorio_ou=$rs->campos["directorio"];//Añadido por acodoner
429                $descripcion=$rs->campos["descripcion"];               
430                $idperfilsoft=$rs->campos["idperfilsoft"];
431                $comentarios=$rs->campos["comentarios"];
432                $inremotepc=$rs->campos["inremotepc"];
433                $scheduler=$rs->campos["scheduler"];
434                $modelo=$rs->campos["modelo"];
435                $numdisk=$rs->campos["numdisk"];
436                $numpar=$rs->campos["numpar"];
437                $tipopar=$rs->campos["tipopar"];
438                $codpar=$rs->campos["codpar"];
439                $idrepositorio=$rs->campos["idrepositorio"];
440                $nombrerepositorio=$rs->campos["nombrerepositorio"];
441                $repoip=$rs->campos["ip"];
442                $repokey=$rs->campos["apikey"];
443                $perfilsoft=$rs->campos["perfilsoft"];
444                $sistoperativo=$rs->campos["sistoperativo"];
445                $imagenid=$rs->campos["imagenid"];
446                $fechacreacion=$rs->campos["fechacreacion"];
447                $revision=$rs->campos["revision"];
448                $rs->Cerrar();
449                return(true);
450        }
451        return(false);
452}
453
454//________________________________________________________________________________________________________
455//      Recupera los algunos datos de configuración de la base de datos
456//              Parametros:
457//              - cmd: comando ya operativo (con conexión abierta) 
458//________________________________________________________________________________________________________
459function TomaConfiguracion($cmd) {
460        global $scheduler;
461
462        $rs=new Recordset; 
463        $cmd->texto="SELECT IF(@@GLOBAL.event_scheduler='ON',1,0) AS scheduler";
464        $rs->Comando=&$cmd; 
465        if (!$rs->Abrir()) return(0); // Error al abrir recordset
466        if (!$rs->EOF){
467                $scheduler=$rs->campos["scheduler"];
468                $rs->Cerrar();
469                return(true);
470        }
471        return(false);
472}
473
474//________________________________________________________________________________________________________
475
476//      Comprueba Nombre de la imagen
477//              Parametros:
478//              - cmd: Una comando ya operativo (con conexión abierta) 
479//              - nombreca: Nombre de la imagen
480//              - descripcion: Descripcion de la imagen
481//________________________________________________________________________________________________________
482
483function ValidaNombre($cmd,$nombreca,$idrepositorio){
484        global $nombreca;
485        global $validnombreca;
486        global $idrepositorio;
487
488        $rs=new Recordset;
489        $cmd->texto="SELECT * from imagenes WHERE nombreca='$nombreca'";
490        $rs->Comando=&$cmd;
491        if (!$rs->Abrir()) return(0); // Error al abrir recordset
492        $rs->Primero();
493        if (!$rs->EOF){
494                $nombrecabase=$rs->campos["nombreca"];
495                $idrepositoriobase=$rs->campos["idrepositorio"];
496                if ( $nombrecabase == $nombreca &&  $idrepositoriobase == $idrepositorio)
497                {$validnombreca="1";}else{$validnombreca="0";}
498        }
499        $rs->Cerrar();
500}
501
502//________________________________________________________________________________________________________
503
504//      Comprueba Descripcion del nombre canónico
505//              Parametros:
506//              - cmd: Una comando ya operativo (con conexión abierta) 
507//              - nombreca: Nombre de la imagen
508//              - descripcion: Descripcion de la imagen
509//________________________________________________________________________________________________________
510
511function ValidaDescripcion($cmd,$nombreca,$descripcion){
512        global $nombreca;
513        global $validnombreca;
514        global $descripcion;
515        global $validdescripcion;
516
517        $rs=new Recordset; 
518        $cmd->texto="SELECT * from imagenes WHERE nombreca='$nombreca'";
519        $rs->Comando=&$cmd; 
520        if (!$rs->Abrir()) return(0); // Error al abrir recordset
521        $rs->Primero(); 
522        if (!$rs->EOF){
523                $nombrecabase=$rs->campos["nombreca"];
524                $descripcionbase=$rs->campos["descripcion"];
525                if ( $nombrecabase == $nombreca && "$descripcionbase" == "$descripcion" )
526                {$validdescripcion="1";}else{$validdescripcion="0";}
527        }
528        $rs->Cerrar();
529}