diff --git a/CHANGELOG b/CHANGELOG
index 056cca8..f0c8459 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,7 @@
-Versión 1.07
+-creado el programa instalar.php que permitirá configurar el acceso a la base de datos, comprobar la configuración del servidor y la creación del usuario administrador
+-Añadido un parámetro en el archivo configuracion.inc que permite o no ejecutar el programa instalar.php
+
+Versión 1.07 31-03-2014
-Añadido bootstrap-select a la solicitud de informes de inventario de esta forma se pueden buscar artículos o ubicaciones en el select
-Añadido bootstrap-select al mantenimiento para que en el alta de elementos se puedan buscar artículos o ubicaciones en el el select
-Corregido un problema que permitía cambiar fechas en el formulario de bajas
diff --git a/Instalar.php b/Instalar.php
new file mode 100644
index 0000000..5822bff
--- /dev/null
+++ b/Instalar.php
@@ -0,0 +1,248 @@
+.
+ *
+ */
+//Se incluyen los módulos necesarios
+function __autoload($class_name) {
+ require_once $class_name . '.php';
+}
+include 'inc/configuracion.inc';
+define('NUMPASOS', 3);
+define('MINBYTES', 4096000); // post_max_size y max_upload van con esto
+define('CADENAMINBYTES', '4M');
+
+// Si ya se ha ejecutado con anterioridad esta script no continúa.
+if (INSTALADO != 'no') {
+ echo "El programa ya está instalado";
+ return 1;
+}
+
+$instalar = new Instalar();
+echo $instalar->ejecuta();
+
+class Instalar {
+ private $resultados;
+ private $contenido;
+ private $plant;
+
+ public function __construct()
+ {
+ //Selecciona la plantilla a utilizar
+ $this->plant='plant/';
+ $this->plant.=PLANTILLA;
+ $this->plant.='.html';;
+ }
+
+ public function ejecuta()
+ {
+ $paso = isset($_GET['paso']) ? $_GET['paso'] : 0;
+ $paso = $paso > NUMPASOS ? '0' : $paso;
+ //Si quiere ir a un determinado paso se asegura que estén completos los anteriores
+ for ($i = 0; $i < $paso; $i++) {
+ if (!$this->resultado[$i]) {
+ //$funcion = "paso" . $i;
+ //$this->contenido = $this->$funcion();
+ break;
+ }
+ }
+ if ($paso == NUMPASOS) {
+ $this->contenido = $this->pasoFinal();
+ } else {
+ $funcion = "paso" . $i;
+ $this->contenido = $this->$funcion();
+ }
+ $salida = new Distribucion($this->plant, $this);
+ return $salida->procesaPlantilla();
+ }
+
+ private function inicializa()
+ {
+ for ($i = 0; $i < NUMPASOS; $i++) {
+ $funcion = "validaPaso" . $i;
+ $resultado[] = $funcion();
+ }
+ }
+
+ // Resumen de cuestiones realizadas
+ private function pasoFinal()
+ {
+
+ }
+
+ // Cuestiones relacionadas con el servidor
+ private function paso0()
+ {
+ $displayErr = ini_get('display_errors');
+ $info = '
';
+ $mensaje = $mysql ? $this->retornaLabel(false, 'Tiene que estar cargada la extensión MySQLi para poder funcionar') :
+ $this->retornaLabel(true, 'Tiene que estar cargada la extensión MySQLi para poder funcionar');
+ $info .= $mensaje . ' extensión MySQLi: ' . $mysql . ' ' . '';
+
+ $info .='