Пример #1
0
function dispatcher()
{
    switch ($_GET["action"]) {
        case "del":
            $response = json_decode(InstanciasController::Eliminar($_GET["id"]));
            if ($response->success === "false") {
                ?>
                        <script>
                         (function(){alert("<?php 
                echo $response->reason;
                ?>
");})();
                        </script>
                    <?php 
            } else {
                ?>
                        <script>
                         (function(){alert("Instancia eliminada correctamente");location.href="instancias.lista.php";})();
                        </script>
<?php 
            }
            break;
        default:
            return;
    }
}
Пример #2
0
 public function testRestarurarBD()
 {
     echo " >> Intentando restaurar la base de datos\n";
     if (!is_null(InstanciasController::Restaurar_Instancias(json_encode(array(self::$instance_id))))) {
         echo "\tRestauración exitosa\n";
     } else {
         echo "\tSe ha producido un error al realizar la restauración\n";
         $this->assertTrue(false);
     }
 }
Пример #3
0
function dispatcher()
{
    global $response;
    switch ($_GET["action"]) {
        case "mod":
            $response = json_decode(InstanciasController::Editar($_GET["id"], $_GET["activa"], $_GET["descripcion"], $_GET["token"], $_GET["status"]));
            break;
        default:
            return;
    }
}
Пример #4
0
function parseRequests()
{
    switch ($_GET["do"]) {
        case "nueva":
            Logger::log("---------------------------");
            Logger::log("Jedi requested new instance");
            $N_I_ID = InstanciasController::Nueva($_GET["t"], $_GET["d"]);
            if (is_null($N_I_ID)) {
                //algo salio mal
                Logger::log("xxxxx algo salio mal con la instancia xxxxxxx");
                break;
            }
            //todo salio bien...
            header("Location: instancias.ver.php?id=" . $N_I_ID);
            break;
        default:
    }
}
Пример #5
0
set_time_limit(0);
$ids = json_decode($_GET["instance_ids"]);
$ids = $ids->instance_ids;
$prefix = time() . rand();
$files = array();
$file_id = array();
for ($i = 0; $i < sizeof($ids); $i++) {
    //validar que existan
    $r = InstanciasController::BuscarPorId($ids[$i]);
    if (is_null($r)) {
        $page->addComponent("La instancia " . $ids[$i] . " no existe");
        $page->render();
        exit;
    }
}
$result = InstanciasController::Respaldar_Instancias($ids);
//Respaldar_Instancias recibe como params un array
if (strlen($result) > 0) {
    die("<html><head><meta HTTP-EQUIV='REFRESH' content='3; url=instancias.bd.php'><title>Error al descargar, perimisos</title></head><body><h1><center>" . $result . "</center></h1></body></html>");
}
$f = new zipfile();
for ($i = 0; $i < sizeof($ids); $i++) {
    //$f->add_file(file_get_contents($files[$i]), $file_id[$i] . ".sql");
    $final_path = str_replace("server", "static_content/db_backups", POS_PATH_TO_SERVER_ROOT);
    $dbs_instance = trim(shell_exec("ls -lat -m1 " . $final_path . "| grep " . $ids[$i] . ".sql"));
    Logger::log("Respaldos encontrados: " . $dbs_instance);
    /*dbs_instance almacena una cadena con un listado donde se encuentran archivos que tengan la teminacion
    	con el id de la instancia y .sql, ademas de que la lista viene ordenada de mas reciente a antiguo
    	la lista seria como lo siguiente:
    	1353617611_pos_instance_82.sql 1353608687_pos_instance_82.sql 1353608206_pos_instance_82.sql 1353608191_pos_instance_82.sql
    	en found se coloca un array y en cada posicion el nombre de cada respaldo
Пример #6
0
function parseRequests()
{
    switch ($_GET["do"]) {
        case "actualizar_instancias":
            Logger::log("---------------------------");
            Logger::log("Jedi requested update instances");
            $result = InstanciasController::Actualizar_Todas_Instancias($_GET['instance_ids']);
            if (!is_null($result)) {
                //algo salio mal
                Logger::log("Algo salió mal al actualizar: " . $result);
                break;
            }
            Logger::log("Actualizacion(es) a BD terminada(s) con éxito");
            header("Location: instancias.lista.php");
            break;
        case "respaldar_instancias":
            Logger::log("---------------------------");
            Logger::log("Jedi requested respaldar instances");
            $json = "{ \"instance_ids\" : {$_GET['instance_ids']} }";
            //$result = InstanciasController::Respaldar_Instancias($_GET['instance_ids']);
            $result = POSController::BdInstanciasRespaldarBd($json);
            if ($result['status'] != "ok") {
                //algo salio mal
                Logger::log("Algo salió mal al respaldar: " . $result['mensaje']);
                ?>
						<script>
						 (function(){alert(<?php 
                echo "'" . $result['mensaje'] . "'";
                ?>
); location.href="instancias.bd.php" })();
						</script>
					<?php 
                break;
            }
            Logger::log("Respaldo(s) realizado(s) con éxito");
            header("Location: instancias.lista.php");
            break;
        case "restaurar_instancias":
            Logger::log("---------------------------");
            Logger::log("Jedi requested restaurar instances");
            $json = "{ \"instance_ids\" : {$_GET['instance_ids']} }";
            //$result = InstanciasController::Restaurar_Instancias($_GET['instance_ids']);
            $result = POSController::BdInstanciasRestaurarBd($json);
            if ($result['status'] != "ok") {
                //algo salio mal
                Logger::log("Algo salió mal al restaurar: " . $result['mensaje']);
                //header("Location: instancias.bd.php");
                ?>
						<script>
						 (function(){alert(<?php 
                echo "'" . $result['mensaje'] . "'";
                ?>
); location.href="instancias.bd.php" })();
						</script>
					<?php 
                break;
            }
            Logger::log("Restauracion(es) realizada(s) con éxito");
            header("Location: instancias.lista.php");
            break;
        default:
    }
}
Пример #7
0
<?php

define("BYPASS_INSTANCE_CHECK", true);
require_once "../../server/bootstrap.php";
$request = InstanciasController::BuscarRequests($_GET["rid"]);
$this_request = $request[0];
/***
 * 
 *  Page Rendering
 * 
 * 
 * */
$p = new JediComponentPage();
$m = new MenuComponent();
$m->addItem("Reenviar correo de confirmacion", "");
$m->addItem("Re-instalar instancia", "javascript:forceValidate();");
$p->addComponent($m);
$headers = array("id_request" => "request_id", "email" => "email", "ip" => "ip", "fecha" => "date_requested", "date_validated" => "date_validated", "date_installed" => "date_installed");
$t = new TableComponent($headers, $request);
function FormatTimeSpecial($ut)
{
    if (is_null($ut) or strlen($ut) == 0) {
        return "";
    }
    return FormatTime($ut);
}
$t->addColRender("fecha", "FormatTimeSpecial");
$t->addColRender("date_validated", "FormatTimeSpecial");
$t->addColRender("date_installed", "FormatTimeSpecial");
$p->addComponent($t);
$p->addComponent('
<?php

define("BYPASS_INSTANCE_CHECK", true);
require_once "../../server/bootstrap.php";
InstanciasController::desactivarInstanciasPrueba();
Пример #9
0
<?php

define("BYPASS_INSTANCE_CHECK", true);
require_once "../../server/bootstrap.php";
$p = new JediComponentPage();
$p->addComponent(new TitleComponent("Instancias"));
$p->addComponent(new TitleComponent("Instancias instaladas", 3));
$headers = array("instance_id" => "instance_id", "instance_token" => "instance_token", "fecha_creacion" => "creada", "descripcion" => "descripcion", "activa" => "activa", "status" => "status");
$t = new TableComponent($headers, InstanciasController::Buscar());
$t->addColRender("activa", "FormatBoolean");
$t->addColRender("pos_instance", "FormatBoolean");
function FormatBoolean($activa)
{
    if ($activa === "0") {
        return "<font style = \"color:red;\">no</font>";
    }
    if ($activa === "1") {
        return "s&iacute;";
    }
    return "undefined";
}
$t->addColRender("fecha_creacion", "FormatTime");
$t->addOnClick("instance_id", "(function(i){window.location='instancias.ver.php?id='+i; })");
$p->addComponent(new FreeHtmlComponent('<div class="POS Boton OK"  onclick="window.location=\'instancias.bd.php\'">BD de Instancias</div>'));
$p->addComponent($t);
$p->render();
Пример #10
0
								});								
							})

						</script>
					<?php 
        ?>
				<?php 
        break;
        ?>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
				
				<?php 
    case "ajax_validation":
        ?>
				<?php 
        $r = InstanciasController::validateDemo($_GET["key"]);
        ?>
				<?php 
        break;
        ?>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
				
				<?php 
    case "signup":
        ?>
				<table border='0'>
				<tr>
					<td rowspan='2'>
						<img class="" style="width: 100px; float:left" src="media/main_site/caffeina-logo.png">
					</td>
					<td>
Пример #11
0
 public function testRestarurarBD()
 {
     $this->assertNull(InstanciasController::Restaurar_Instancias(array(IID)));
 }
Пример #12
0
$CadenaJS .= "            }\n";
$CadenaJS .= "      }\n";
$CadenaJS .= "      Ext.MessageBox.show(\n";
$CadenaJS .= "      {\n";
$CadenaJS .= "                 title:\"Borrar?\",\n";
$CadenaJS .= "                 msg:\"Desea borrar el respaldo seleccionado?\",\n";
$CadenaJS .= "                 buttons: Ext.MessageBox.YESNO,\n";
$CadenaJS .= "                 icon: Ext.MessageBox.QUESTION,\n";
$CadenaJS .= "                 fn:Resp\n";
$CadenaJS .= "       });\n";
$CadenaJS .= "      }\n";
$CadenaJS .= "</script>";
$page->addComponent($CadenaJS);
$CadenaJSForm = "<div align=\"left\"><form name=\"frmRes\">";
$Contador = 0;
foreach (InstanciasController::BuscarRespaldosComponents(INSTANCE_ID) as $Cadena) {
    $Contador++;
    $CadenaJSForm .= "  <br><input type=\"radio\" name=\"GRespaldo\" value=\"{$Cadena}\"" . ($Contador == 1 ? " checked " : "") . "> Respaldo no {$Contador}, creado " . date("D d/m/Y g:i a", $Cadena) . "<br>";
}
unset($Cadena);
//Elimina la referencia usada en FOREACH
$CadenaJSForm .= "<br>";
if ($Contador > 0) {
    $CadenaJSForm .= "</form></div><br/><div class=\"POS Boton\" onclick=\"fn();\">Restaurar</div>";
    $CadenaJSForm .= "<div class=\"POS Boton\" onclick=\"fnB();\">Borrar</div><hr>";
    $page->addComponent($CadenaJSForm);
} else {
    $page->addComponent(new TitleComponent("--- No hay respaldos disponibles ---", 3));
}
//Descargar Instancia
$dwdInts = "<script>";
Пример #13
0
 /**
  *
  *Descarga un archivo .zip con los ultimos respaldos que se encuentren en el servidor de las instancias seleccionadas
  *
  * @param instance_ids json Lista de los id de las instancias a respaldar
  * @return status string Respuesta enviada del servidor
  * @return mensaje string Mensaje de respuesta del servidor
  **/
 public static function BdInstanciasDescargarBd($instance_ids)
 {
     if (!is_array($instance_ids)) {
         return array("status" => "failure", "mensaje" => "Los datos enviados no son en validos");
     }
     if (sizeof($instance_ids) < 1) {
         return array("status" => "failure", "mensaje" => "No se envio ninguna instancia");
     }
     for ($i = 0; $i < sizeof($instance_ids); $i++) {
         //validar que existan
         $r = InstanciasController::BuscarPorId($instance_ids[$i]);
         if (is_null($r)) {
             return array("status" => "failure", "mensaje" => "La instancia " . $instance_ids[$i] . " no existe");
         }
     }
     //$path_to_download_script = "../../jedi/instancias.bd.dl.php"; /*str_replace("server", "www/jedi/instancias.bd.dl.php", POS_PATH_TO_SERVER_ROOT);*/
     //Logger::log("---->Ruta dl: ".$path_to_download_script);
     $json = "{ \"instance_ids\" : " . json_encode($instance_ids) . " }";
     $salida = InstanciasController::descargar_instancias($json);
     //header("Location: ".$path_to_download_script."?&instance_ids=".$json);//hacer esta funcionalidad en un Instancias.Controller
     if ($salida != null) {
         Logger::log("********************************* Salida trae el archivo");
         header("Content-type: application/zip");
         header("Content-disposition: attachment; filename={$salida['nombre_folder']}");
         echo $salida['archivo'];
         /*return array(
               "status" => "ok",
               "mensaje" => "Archivo: "
           );*/
     } else {
         return array("status" => "failure", "mensaje" => $salida);
     }
 }