| 1 | <?php |
|---|
| 2 | //importando nuestras las referencias XAJAX |
|---|
| 3 | require ("xajax.common.php"); |
|---|
| 4 | |
|---|
| 5 | |
|---|
| 6 | //funcion que lista las Particiones segun la IP elegida |
|---|
| 7 | function ListarOrigenMaster($ip){ |
|---|
| 8 | |
|---|
| 9 | include_once("../includes/ctrlacc.php"); |
|---|
| 10 | include_once("../clases/AdoPhp.php"); |
|---|
| 11 | include_once("../includes/constantes.php"); |
|---|
| 12 | include_once("../includes/comunes.php"); |
|---|
| 13 | include_once("../includes/CreaComando.php"); |
|---|
| 14 | include_once("../includes/HTMLSELECT.php"); |
|---|
| 15 | |
|---|
| 16 | |
|---|
| 17 | //instanciamos el objeto para la respuesta AJAX |
|---|
| 18 | $objResponse = new xajaxResponse(); |
|---|
| 19 | |
|---|
| 20 | $SelectHtml=" "; |
|---|
| 21 | $SelectHtml='<select name="source"> '; |
|---|
| 22 | |
|---|
| 23 | $cmd=CreaComando($cadenaconexion); |
|---|
| 24 | $rs=new Recordset; |
|---|
| 25 | |
|---|
| 26 | //Primera consulta: Particiones del MASTER potencialmente clonables. |
|---|
| 27 | $cmd->texto='SELECT ordenadores_particiones.numdisk as DISK,ordenadores_particiones.numpar as PART,nombresos.nombreso as OS |
|---|
| 28 | FROM ordenadores_particiones INNER JOIN tipospar ON tipospar.codpar=ordenadores_particiones.codpar |
|---|
| 29 | INNER JOIN nombresos ON ordenadores_particiones.idnombreso=nombresos.idnombreso |
|---|
| 30 | INNER JOIN ordenadores ON ordenadores_particiones.idordenador=ordenadores.idordenador |
|---|
| 31 | WHERE ordenadores.ip="' .$ip . '" |
|---|
| 32 | AND tipospar.clonable>0 |
|---|
| 33 | AND ordenadores_particiones.idnombreso>0 |
|---|
| 34 | ORDER BY ordenadores_particiones.numdisk,ordenadores_particiones.numpar'; |
|---|
| 35 | $rs->Comando=&$cmd; |
|---|
| 36 | |
|---|
| 37 | if ($rs->Abrir()){ |
|---|
| 38 | $cantRegistros=$rs->numeroderegistros; |
|---|
| 39 | if($cantRegistros>0){ |
|---|
| 40 | $rs->Primero(); |
|---|
| 41 | while (!$rs->EOF){ |
|---|
| 42 | $SelectHtml.='<OPTION value=" '.$rs->campos["DISK"].' '.$rs->campos["PART"].'"'; |
|---|
| 43 | $SelectHtml.='>'; |
|---|
| 44 | $SelectHtml.='DISK '.$rs->campos["DISK"].',PART '.$rs->campos["PART"].': '. $rs->campos["OS"].'</OPTION>'; |
|---|
| 45 | $rs->Siguiente(); |
|---|
| 46 | } |
|---|
| 47 | } |
|---|
| 48 | else |
|---|
| 49 | { |
|---|
| 50 | $objResponse->alert("No partion found in this host for use it to cloning other computers."); |
|---|
| 51 | } |
|---|
| 52 | $rs->Cerrar(); |
|---|
| 53 | } |
|---|
| 54 | //Segunda consulta: Imagenes del MASTER registradas como si fuese un repo. |
|---|
| 55 | |
|---|
| 56 | # $cmd->texto='SELECT *,repositorios.ip as iprepositorio FROM imagenes |
|---|
| 57 | #INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio |
|---|
| 58 | #where repositorios.ip="' .$ip .'"'; |
|---|
| 59 | |
|---|
| 60 | $cmd->texto='select cache from ordenadores_particiones where codpar = 202 and idordenador = (SELECT idordenador from ordenadores where ip="' .$ip . '")'; |
|---|
| 61 | $rs->Comando=&$cmd; |
|---|
| 62 | |
|---|
| 63 | if ($rs->Abrir()){ |
|---|
| 64 | $cantRegistros=$rs->numeroderegistros; |
|---|
| 65 | if($cantRegistros>0){ |
|---|
| 66 | $rs->Primero(); |
|---|
| 67 | while (!$rs->EOF){ |
|---|
| 68 | $files = explode(",", $rs->campos["cache"]); |
|---|
| 69 | foreach ($files as $file) { |
|---|
| 70 | if ( preg_match ( "/img$/", $file ) ) { |
|---|
| 71 | $imgname = rtrim($file, ".img"); |
|---|
| 72 | $SelectHtml.='<OPTION value=" CACHE /'.ltrim($imgname).'"'; |
|---|
| 73 | $SelectHtml.='>'; |
|---|
| 74 | $SelectHtml.='IMG-CACHE: ' . ltrim($imgname).'</OPTION>'; |
|---|
| 75 | } |
|---|
| 76 | } |
|---|
| 77 | $rs->Siguiente(); |
|---|
| 78 | } |
|---|
| 79 | } |
|---|
| 80 | else |
|---|
| 81 | { |
|---|
| 82 | $objResponse->alert("No image found in CACHE in this host for use it to cloning other compuers."); |
|---|
| 83 | } |
|---|
| 84 | $rs->Cerrar(); |
|---|
| 85 | } |
|---|
| 86 | |
|---|
| 87 | //Tercera consulta: Imagenes del REPO, que el MASTER se encargara de enivarlas |
|---|
| 88 | $cmd->texto='SELECT *,repositorios.ip as iprepositorio FROM imagenes |
|---|
| 89 | INNER JOIN repositorios ON repositorios.idrepositorio=imagenes.idrepositorio |
|---|
| 90 | where repositorios.idrepositorio=(select idrepositorio from ordenadores where ordenadores.ip="' .$ip .'")'; |
|---|
| 91 | |
|---|
| 92 | $rs->Comando=&$cmd; |
|---|
| 93 | |
|---|
| 94 | if ($rs->Abrir()){ |
|---|
| 95 | $cantRegistros=$rs->numeroderegistros; |
|---|
| 96 | if($cantRegistros>0){ |
|---|
| 97 | $rs->Primero(); |
|---|
| 98 | while (!$rs->EOF){ |
|---|
| 99 | $SelectHtml.='<OPTION value=" REPO /'.$rs->campos["nombreca"].'"'; |
|---|
| 100 | $SelectHtml.='>'; |
|---|
| 101 | $SelectHtml.='IMG-REPO: ' . $rs->campos["nombreca"].'</OPTION>'; |
|---|
| 102 | $rs->Siguiente(); |
|---|
| 103 | } |
|---|
| 104 | } |
|---|
| 105 | else |
|---|
| 106 | { |
|---|
| 107 | $objResponse->alert("No image found in REPO from this host for use it to cloning other computers."); |
|---|
| 108 | } |
|---|
| 109 | $rs->Cerrar(); |
|---|
| 110 | } |
|---|
| 111 | |
|---|
| 112 | $SelectHtml.= '</SELECT>'; |
|---|
| 113 | |
|---|
| 114 | //asignando el contenido de la varabiale $SelectHTML al div que esta en la paquina inicial |
|---|
| 115 | $objResponse->assign("divListado","innerHTML",$SelectHtml); |
|---|
| 116 | |
|---|
| 117 | return $objResponse; //retornamos la respuesta AJAX |
|---|
| 118 | } |
|---|
| 119 | |
|---|
| 120 | $xajax->processRequest(); //procesando cualquier peticion AJAX |
|---|
| 121 | |
|---|
| 122 | |
|---|
| 123 | |
|---|
| 124 | |
|---|
| 125 | ?> |
|---|