<?php
error_reporting(0);//Desactiva ver warnings
ini_set('display_errors', 1);ini_set('display_startup_errors', 1);error_reporting(E_ALL);//Activa ver warnings

/*Site generals*/{
$siteName="SportMaster Mexico";
$logo="./multimedia/logo.jpg";
$SiteDescription="Administración de contratos";
$favIcon="./multimedia/logo.png";
$rutamultimedia="./multimedia";
$extensionesvalidas=array("jpg","png","pdf");
}
/*conectar bdd, smtp y librerias*/{
if($_SERVER["HTTP_HOST"] == 'localhost'){
    $host_name = 'localhost';
    $database = 'test';
    $user_name = 'root';
    $password = '';    
}else{
    $host_name = 'localhost';
    $database = 'contratos';
    $user_name = 'contratos';
    $password = 'Documentos2022';
}
$link = mysqli_connect($host_name, $user_name, $password, $database);    
if ($link->connect_error) {die("Connection failed: " . $link->connect_error);}else{ /*echo "Connected successfully";/**/}
/*character set to utf8mb4 */$link->set_charset(" utf8mb4");

$smtp=array();
$smtp['server'] = 'smtp.ionos.mx';// Set the SMTP server to send through
$smtp['user']   = 'no-reply@alexcd2000.com';// SMTP username
$smtp['pwd']    = 'NoResponder.';// SMTP password
$smtp['secure'] = 'tls';// Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
$smtp['port']   = 587;// TCP port to connect to, use 465 for PHPMailer::ENCRYPTION_SMTPS` above
    
include_once "./librerias/PHPMailer/EnviarEmail.php";    
}

/*Urls*/{
$url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === ' on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]";
$uri = $_SERVER['REQUEST_URI'];
//echo $url.$uri;  if(strpos($uri,'') ){}
//echo $_SERVER[HTTP_HOST];
$pestana = explode("?", $uri);
}
/*Login super basico*/{
    if (session_status() == PHP_SESSION_NONE) {session_start();}//start once
    
    if(isset($_POST['botonLogin']) ){
        $sql="SELECT id FROM olga_users WHERE email='".$_POST['email']."' AND pwd='".$_POST['pwd']."' LIMIT 1;"; $ejecutarquery=mysqli_query($link,$sql); 
        if(mysqli_num_rows($ejecutarquery)>0){
            $row=mysqli_fetch_assoc($ejecutarquery);
            $_SESSION['user']=$row["id"]; // la sesión se guarda como un cookie hasheado en el navegador parece ser    
            $_SESSION['LAST_ACTIVITY'] = time(); // update last activity time stamp
        }else{
			session_unset();//esto las null ea
			session_destroy();//esto las borra 
            header("Location: ./login?error=1");
            //echo '<script>window.location.replace("./login.php?error=1");</script>';
            //echo "Sin resultados";
        }
    }

    if(!isset($_SESSION['user']) ){//revisa que estes loggeado
        //echo "Not logged in";//no puedes hacer echo antes de header
        if( !strpos($uri,"login") ){//saca a login excepto en login o alguna otra que quieras poner con and !strpos($uri,"index")
            header("Location: ./login");
            //echo "-will redirect";
            //echo '<script>window.location.replace("./login.php");</script>';
        }
    }else{
        $_SESSION['LAST_ACTIVITY'] = time(); // update last activity time stamp
        //echo "uR Logged in: ".$_SESSION['user'];
    }

    if (isset($_SESSION['user']) and isset($_SESSION['LAST_ACTIVITY']) and (time() - $_SESSION['LAST_ACTIVITY'] > 1800)) {// last request was more than 30 minutes ago
        session_unset();     // unset $_SESSION variable for the run-time 
        session_destroy();   // destroy session data in storage
    }
    if( isset($_SESSION['user']) and strpos($uri,"login") ){//destruye sesion siempre en login
        session_unset();//esto las null ea
        session_destroy();//esto las borra 
    }    
}
/*Reset pwd*/{
    if(isset($_POST['reset-pwd']) ){//envia email con token
         $sql="SELECT pwd FROM olga_users WHERE email='".$_POST['reset-pwd']."' LIMIT 1;"; 
        $ejecutarquery=mysqli_query($link,$sql); 
        if(mysqli_num_rows($ejecutarquery)>0){
            $row=mysqli_fetch_assoc($ejecutarquery);
            $email='Your password is: '.$row["pwd"].'<br /><br />It seems you forgot it or someone else is trying to log in to your account. Remember you can change it in your settings any time.';
            $whtvr = enviarmail($_POST['reset-pwd'],"","no-reply@".$_SERVER['HTTP_HOST'],$siteName,"Password Reset",$email,$smtp);
            //echo $email." - ".$whtvr;
        }       
    }
    if(isset($_GET['token']) ){//crea sesion y en settings resetea su pwd
        //esto en caso le quieras crear un pwd nuevo en el mail... pero mas facil darselo
    }
}
/*Traer datos usuario*/{
if(isset($_SESSION['user']) ){//revisa que estes loggeado    
    $sql="SELECT * FROM olga_users WHERE id='".$_SESSION['user']."' ;"; 
    $ejecutarquery=mysqli_query($link,$sql);
    //no puede fallar, jala datos de usuario
    $row=mysqli_fetch_assoc($ejecutarquery);
	$usuario=array("nombre"=>$row["nombre"],"email"=>$row["email"],"tipo"=>$row["tipo"]);    
}
}
/*menus*/{
$menu='
<!-- Page Sidebar -->
<div class="page-sidebar">
	<a class="logo-box" href="index.php">
		<span>'.$siteName.'</span>
	</a>
	<div class="page-sidebar-inner">
		<div class="page-sidebar-menu">
			<ul class="accordion-menu">
				<li class="active-page">
					<a href="./">
						<i class="menu-icon icon-home4"></i><span>Inicio</span>
					</a>
				</li>
				<li>
					<a href="javascript:void(0)">
						<i class="menu-icon icon-show_chart"></i><span>Pedidos</span><i class="accordion-icon fa fa-angle-left"></i>
					</a>
					<ul class="sub-menu">
						<li><a href="pedidos.php">Ver todos</a></li>
						<!--<li><a href="mpago.php">Notificaciones MercadoPago</a></li>-->
					</ul>
				</li>
				<li>
					<a href="javascript:void(0)">
						<i class="menu-icon icon-cart"></i><span>Productos</span><i class="accordion-icon fa fa-angle-left"></i>
					</a>
					<ul class="sub-menu">
						<li><a href="productos.php">Ver todos</a></li>
						<li><a href="categorias.php">Categorias</a></li>
						<li><a href="productos-meta.php">Meta</a></li>
					</ul>
				</li>
				<li>
					<a href="javascript:void(0)">
						<i class="menu-icon icon-user"></i><span>Usuarios</span><i class="accordion-icon fa fa-angle-left"></i>
					</a>
					<ul class="sub-menu">
						<li><a href="users">Ver todos</a></li>
					</ul>
				</li>
				<li>
					<a href="javascript:void(0)">
						<i class="menu-icon icon-photo"></i><span>Multimedia</span><i class="accordion-icon fa fa-angle-left"></i>
					</a>
					<ul class="sub-menu">
						<li><a href="multimedia.php">Ver todo</a></li>
					</ul>
				</li>
				<li>
					<a href="javascript:void(0)">
						<i class="menu-icon icon-cog"></i><span>Configuraciones</span><i class="accordion-icon fa fa-angle-left"></i>
					</a>
					<ul class="sub-menu">
						<li><a href="settings">Basicas</a></li>
						<!--<li><a href="template.php">Equivalencias del template</a></li>-->
						<!--<li><a href="seo.php">SEO</a></li>-->
						<li><a href="backup.php">Backup / Restaurar BDD</a></li>
					</ul>
				</li>
				<li class="menu-divider"></li>
				<li>
					<a href="./login?logout=1">
						<i class="menu-icon icon-exit"></i><span>Cerrar sesión</span><span class="label label-danger">V 1.5</span>
					</a>
				</li>
				<li>
					<a href="http://alexcd2000.com/" target="_blank" style="font-size: 80%;"><i class="menu-icon icon-help"></i><span>Hecho por alexcd2000</span></a>
				</li>
			</ul>
		</div>
	</div>
</div><!-- /Page Sidebar -->
';   
}
/*funciones*/{
//el echo de las tablas en el backend	
$warning="";		
//este borra registros
if(isset($_POST['botonborrar'])){
$warning= '<div class="alert alert-danger alert-dismissible fade in" role="alert">
				<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
				Borrado (id: '.$_POST['botonborrar'].')
			</div>';
$sql  =   "DELETE FROM ".$tabla." WHERE `id` = ".$_POST['botonborrar'].";";  
$ejecutarquery = mysqli_query($link, $sql);
unset($_POST);//para que no siga actualizando cada refresh
}
//este los cambia
if(isset($_POST['botoncambiar'])){
$validarrepetidos=validacionrepetidos ($columnas,$_POST,$tabla,$link);	
	if(strpos($validarrepetidos, 'Error') !== false){
		$warning= '<div class="alert alert-danger alert-dismissible fade in" role="alert">
					<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
					'.$validarrepetidos.'
				</div>';
	}else{
		$warning= '<div class="alert alert-info alert-dismissible fade in" role="alert">
					<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
					Actualizado (id: '.$_POST['botoncambiar'].')
				</div>';
		
		$exitosubir = fileupload ($_FILES,$extensionesvalidas,(3*1000000),$rutamultimedia); 
		if(strpos($exitosubir, 'alert') !== false){
			if(strpos($exitosubir, 'No subio ningun archivo') === false){echo $exitosubir;}//el script errror al subir
		}else{
			$_POST["imagen"] = $exitosubir;//la ruta correcta para guardarla
		}

		foreach( $_POST as $key=>$feach){  //las keys que no existen las tira en principio el mysql
			$sql = " UPDATE ".$tabla."  SET ultmodif= CURRENT_TIMESTAMP, ".$key."='".mysqli_real_escape_string($link,eliminar_acentos($feach))."'  WHERE id='".$_POST['botoncambiar']."';"; 
			$ejecutarquery=mysqli_query($link,$sql);    
		}
	}
unset($_POST);//para que no siga actualizando cada refresh
}
//este crea nuevos
if(isset($_POST['botonnuevo'])){
$validarrepetidos=validacionrepetidos ($columnas,$_POST,$tabla,$link);
	if(strpos($validarrepetidos, 'Error') !== false){
		$warning= '<div class="alert alert-danger alert-dismissible fade in" role="alert">
					<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
					'.$validarrepetidos.'
				</div>';
	}else{
		$exitosubir = fileupload ($_FILES,$extensionesvalidas,(3*1000000),$rutamultimedia); 
		if(strpos($exitosubir, 'alert') !== false){
			if(strpos($exitosubir, 'No subio ningun archivo') === false){echo $exitosubir;}//el script errror al subir
		}else{
            if(isset($_POST['meta']) ){//solo en nuevos, al cambiar usa el campo texto
                $_POST["valor"] = $exitosubir;//cuando guardas en meta, el campo se llama valor
            }else{
                $_POST["imagen"] = $exitosubir;//la ruta correcta para guardarla                                                
            }
		}
		
		
		$sql = " INSERT INTO ".$tabla."  ("; 
		$sql2=" VALUES (";
		foreach( $_POST as $key=>$feach){
            if($key == 'idcambiar' || $key == 'MAX_FILE_SIZE' || $key == 'file' || $key == 'botonnuevo' ){//boton nuevo no siempre es el ultimo
				//nada esas las tira
			}else{
				//if($ == 'es imagen'){$sql2.= "'".$feach."',";}else{$sql2.= "'".$feach."',";}
				//fileupload ($_FILES,array('pdf','jpeg','txt'),(5*1000000),"/multimedia")
				
			$sql .= $key.","; 
			$sql2.= "'".mysqli_real_escape_string($link,eliminar_acentos($feach))."',";
			}
		}
        $sql=substr($sql, 0, -1);
        $sql2=substr($sql2, 0, -1);//remove last ,
        $sql .= ")"; //cierra
        $sql2.= ")";            

		$sql=$sql.$sql2." ;";
		$warning= '<div class="alert alert-success alert-dismissible fade in" role="alert">
						<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
						Éxito, se guardo:<br>'.str_replace(",", " - ",str_replace(")", "",str_replace("(", "",str_replace(" VALUES ", "", $sql2)))).'
					</div>';//.$sql;//.json_encode($_POST).
		$ejecutarquery=mysqli_query($link,$sql);    
	}
unset($_POST);//para que no siga actualizando cada refresh
}
	
function echotabla($columnas,$sql){
	global $link;
	$ejecutarquery = mysqli_query($link, $sql);

	$output='	
	        <thead>
			<tr>
				<th>Acciones</th>
                <th>Fechas</th>';
    $i=0; foreach( $columnas as $key=>$feach){  
        $output.= '<th style="min-width:100px">'.$feach[0].'</th>';		
        //$output.= '<th class="sorting_desc" tabindex="0" aria-controls="example3" rowspan="1" colspan="1" aria-label="sort column ascending" aria-sort="descending">'.$feach[0].'</th>';
    $i++;}    
		$output.= '	</tr>
			</thead>	   	   
			<tbody>
		';   
    while($row = mysqli_fetch_assoc($ejecutarquery) ) {
        $output.= "<tr>";
        $output.= "<td>";
		if(isset($_POST['botoneditar']) and $row['id']==$_POST['botoneditar']){
			$output.=  "
			<button type='submit' name='botoncambiar' class='btn btn-success' value='".$row['id']."'> Guardar (".$row['id'].")</button>";
			$output.=  "<input type='hidden' name='idcambiar' value='".$row['id']."'>";//para la validacion
			//hay que guardar botoneditar en botoncambiar porque el boton pierde su valor al darle clic a otro boton
			}else{
            $output.= "
			<button type='submit' name='botoneditar' class='btn btn-info' value='".$row['id']."'>".sprintf('%05d', $row['id'])." Editar</button>
			<button type='submit' name='botonborrar' class='btn btn-danger' value='".$row['id']."'>Borrar</button>";
			}              
        $output.= "</td>";
        $output.= "<td style='font-size:50%;'>Creado:<br>".$row['creacion']."<br>Ult. modif:<br>".$row['ultmodif']."</td>";
			$i=0; foreach( $columnas as $key=>$feach){
				$output.=  "<td>";
				if(isset($_POST['botoneditar']) and $row['id']==$_POST['botoneditar']){
					$output.=  tipoinput($feach,$row[$feach[0]]);	
					//hay que guardar botoneditar en botoncambiar porque el boton pierde su valor al darle clic a otro boton
				}else{
					if($feach[1] == 'imagen' or (strpos($row[$feach[0]], '/multimedia') !== false and strpos($row[$feach[0]], ' ') == false ) ){
                        if(!file("..".$row[$feach[0]]) ){
                            //Image is not available
                            $output.=  'ERROR IMAGEN<br>'.$row[$feach[0]];							
                        }else{
                            //$output.=  '<a href="'.$row[$feach[0]].'" target="_blank"><img  onerror="this.parentNode.removeChild(this)" src="'.$row[$feach[0]].'" style="height:50px"></a>';	
                            //con tanto producto se volvia lento... mejor quite la mini imagen
                            $output.=  '<a href="'.$row[$feach[0]].'" target="_blank">'.$row[$feach[0]].'</a>';								
                        }
					}else if($feach[1] == 'meta'){
						$output.=  '<a href="'.$feach[2].$row[$feach[3]].'"class="btn btn-success">Editar</a>';						               
                    }else{
						$output.=  $row[$feach[0]];							
					}
				}                    
				$output.=  "</td>";
			}$i++; 
		$output.=  "</tr>";
        }
    $output.=  "</tbody>";
	return $output;
}
function salvartabla($columnas){//esta es la tabla de nuevas entradas
	$output="";
	foreach( $columnas as $key=>$feach){
		$output.= '<div class="form-group">';
        $output.=  tipoinput($feach,"");	
		$output.= '</div>';
	}            
	return $output;
}
function tipoinput($columnas,$previo){
	$output="";	
	if(strpos($columnas[1], 'select:') !== false){
		$arr = explode(",", str_replace("select:", "", $columnas[1]) );
		$output.= '<select class="form-control" name="'.$columnas[0].'">';
		$i=0; foreach( $arr as $key=>$feach){  
	       $output.='<option value="'.$feach.'"';
            if($previo == $feach){ $output.=' selected '; }
            $output.='>'.$feach.'</option>';
		$i++;}
		$output.= '</select>';
	}else if(strpos($columnas[1], 'imagen') !== false){
		$output.= '<!-- Must precede the file input field 100000000=100mb se define en el func el limite real...-->
		<input type="hidden" name="MAX_FILE_SIZE" value="100000000" />	
		<input type="file" name="archivo">
		';
	}else if(strpos($columnas[1], 'number') !== false){
		$output.= '
		<div style="" class="input-group">
			<span class="input-group-addon">$</span>
			<input type="number" step=".01" class="form-control" aria-label="Monto" placeholder="'.$columnas[0].'"  id="'.$columnas[0].'-input" name="'.$columnas[0].'" value="'.$previo.'" '.$columnas[2].'>
		</div>';
	}else if(strpos($columnas[1], 'block') !== false){
		$output.= $previo;
	}else if(strpos($columnas[1], 'meta') !== false){
		$output.= "";//Nada porque la meta se edita aparte como los atributos que se cuelgan al id de producto por ejemplo
	}else{
		if($columnas[2] == 'required'){$aster=" *";}else{$aster="";}
		$output.= '<input type="'.$columnas[1].'" id="'.$columnas[0].'-input" name="'.$columnas[0].'" class="form-control" placeholder="'.$columnas[0].$aster.'"  value="'.$previo.'" '.$columnas[2].'>';
	}
	return $output;
}
function validacionrepetidos ($columnas,$post,$tabla,$link) {
	$output="";
	if( !isset($post['idcambiar']) ){ $post["idcambiar"] = 0; }
	foreach( $columnas as $key=>$feach){
		if($feach[3] == 'unique'){
			$sql="SELECT * FROM ".$tabla."  WHERE (".$feach[0]."='".$post[$feach[0]]."' AND id != '".$post["idcambiar"]."') ORDER BY creacion DESC LIMIT 1;"; 
			$ejecutarquery=mysqli_query($link,$sql); 
			if(mysqli_num_rows($ejecutarquery)>0){
				$totalrow=mysqli_num_rows($ejecutarquery); 
				$row=mysqli_fetch_assoc($ejecutarquery);
				$output.="Error, no se puede repetir ".$feach[0].". Ya existe en el id: ".$row["id"]."<br>";
			}else{
				$output.="";
			}
		}
	}            
	return $output;
}
	
//elimina acentos por sus equivalencias antes de guardarlos
function eliminar_acentos($cadena){
		//Reemplazamos la A y a
		$cadena = str_replace(
		array('Á', 'À', 'Â', 'Ä', 'á', 'à', 'ä', 'â', 'ª'),
		array('&Aacute;', 'A', 'A', 'A', '&aacute;', 'a', 'a', 'a', 'a'),
		$cadena );
 
		//Reemplazamos la E y e
		$cadena = str_replace(
		array('É', 'È', 'Ê', 'Ë', 'é', 'è', 'ë', 'ê'),
		array('&Eacute;', 'E', 'E', 'E', '&eacute;', 'e', 'e', 'e'),
		$cadena );
 
		//Reemplazamos la I y i
		$cadena = str_replace(
		array('Í', 'Ì', 'Ï', 'Î', 'í', 'ì', 'ï', 'î'),
		array('&Iacute;', 'I', 'I', 'I', '&iacute;', 'i', 'i', 'i'),
		$cadena );
 
		//Reemplazamos la O y o
		$cadena = str_replace(
		array('Ó', 'Ò', 'Ö', 'Ô', 'ó', 'ò', 'ö', 'ô'),
		array('&Oacute;', 'O', 'O', 'O', '&oacute;', 'o', 'o', 'o'),
		$cadena );
 
		//Reemplazamos la U y u
		$cadena = str_replace(
		array('Ú', 'Ù', 'Û', 'Ü', 'ú', 'ù', 'ü', 'û'),
		array('&Uacute;', 'U', '&Uuml;', 'U', '&uacute;', 'u', '&uuml;', 'u'),
		$cadena );
 
		//Reemplazamos la N, n, C y c
		$cadena = str_replace(
		array('Ñ', 'ñ', 'Ç', 'ç'),
		array('&Ntilde', '&ntilde', 'C', 'c'),
		$cadena
		);		
		return $cadena;
}	
//sube archivos y borra
function fileupload ($files,$ExtensionesValidas,$TamanoMaximo,$ruta){
	if(isset($files['archivo']) ){
	    $ArchivoNombre=$files['archivo']['name'];
        $ArchivoTemporal=$files['archivo']['tmp_name'];
        $ArchivoTamano=$files['archivo']['size'];
        $ArchivoError=$files['archivo']['error'];
        $ArchivoTipo=$files['archivo']['type'];
         
        $PartirNombre= explode('.',$ArchivoNombre);
        $Extension= '.'.end($PartirNombre);
        $Nombre = str_replace($Extension ,'',$ArchivoNombre);
        $ExtensionMinusculas= strtolower(end($PartirNombre));
        
        //Revisa Errores y si no hay lo sube
        if( empty($ExtensionMinusculas) ){
            return '<script>alert("No subio ningun archivo");</script>';	
		}elseif (!in_array($ExtensionMinusculas,$ExtensionesValidas)){//prueba todo el array en la variable
            return '<script>alert("La extensión del archivo no es valida");</script>';
        }elseif($ArchivoError!=0)//Checa si hubo error al subir el archivo
            {return '<script>alert("Hubo un error en la carga, intente de nuevo por favor");</script>';}
        elseif($ArchivoTamano>$TamanoMaximo)//1000kb=1mb
            {return "<script>alert('El archivo es demasiado grande, pesa ".(floor($ArchivoTamano/1000000*100)/100)." mb. El limite es ".($TamanoMaximo/1000000)." MB');</script>";}//substr trunca el string del caracter 0 al 3
        else//Exito y se sube el archivo
            {
				//El nombre nuevo debe ser único Si No se Reescribe, pero también debes tener una forma con la BDD SQL de llamarlo 
				//Ya sea guardando la ruta en BDD o renombrando el archivo de cierta manera
				date_default_timezone_set('America/Mexico_City');    // Choose local time
				$FechaHora = date('d.m.Y-G.i', time());              // Get local time //REPLANCHA TODO EN EL MISMO MINUTO
				$NuevoNombre= $Nombre.'-'.$FechaHora.'.'.$ExtensionMinusculas;
				//return $NuevoNombre;

				$RutaArchivo=$_SERVER['DOCUMENT_ROOT'] . $ruta .'/'.$NuevoNombre;//esto cambia de servidor a servidor 
				//$RutaArchivo='archivossubidos/'.$NuevoNombre;
				if (  move_uploaded_file($ArchivoTemporal,$RutaArchivo) ) {
					//return '<script>alert("'.$ArchivoNombre.' uploaded OK!");</script>';
					//Ahora guardas el nombre del archivo en SQL de alguna forma 
					return $ruta .'/'.$NuevoNombre;//si el return no tiene alert, fue exito y ya solo guardas la ruta
				} else {
					return '<script>alert("Error al subir, contacta a soporte y dale esto:\n Temp:'.$ArchivoTemporal.' \n Final:'.$RutaArchivo.' ");</script>';
				}
            }
	}
}
if(isset($_POST['botonborrarfiles'])){
$warning= '<div class="alert alert-danger alert-dismissible fade in" role="alert">
				<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
				Borrado (archivo: '.$_POST['botonborrarfiles'].')
			</div>';
unlink($_POST['botonborrarfiles']);//esto lo borra
unset($_POST);//para que no siga actualizando cada refresh
}

//Esto crea y remplaza la base de datos
function listabackups($path){//es igual a archivos solo cambian los botones y columnas
	$output='	
	        <thead>
			<tr>
				<th>Acciones</th>
                <th>Descargar</th>
            </tr>
			</thead>	   	   
			<tbody>
		';   
    $files = scandir($path);
    $i=0; foreach( $files as $key=>$feach){  
        if($feach !== '..' and $feach !== '.'){
            $output.="<tr>";
            $output.= "<td>
            <button type='submit' name='botonborrarfiles' class='btn btn-danger' value='".$path."/".$feach."'>Borrar</button>
            <button type='submit' name='botonrestore' class='btn btn-info' value='".$path."/".$feach."'>Restaurar</button>
                </td>";
            //<button type='submit' name='botonborrar' class='btn btn-danger' value='".$path."/".$feach."'>Borrar ".$feach."</button>
            $output.=  '<td>
                <a href="'.$path.'/'.$feach.'" target="_blank">'.$path.'/'.$feach.'</a>
                </td>';	
            $output.="</tr>";
        }else{}
    $i++;}
		$output.="</tbody>";
	return $output;    
}
function creabackupbdd($backupfile,$host_name,$user_name,$password,$database){//La ruta y el nombre del archivo
    $backupfile=$backupfile."-".date("Y.m.d")."-". date("Hi").".sql";

    //Export of the database and output of the status
    $command='mysqldump --opt -h' .$host_name .' -u' .$user_name .' -p' .$password .' ' .$database .' > ' .$backupfile;
    exec($command,$output,$worked);
    switch($worked){
        case 0:
            return 'La base de datos ' .$database .' se guardo correctamente en '.getcwd().'   ' .$backupfile ;
        break;
        case 1:
            return 'Error al exportar ' .$database .' a '.getcwd().'   ' .$backupfile ;
        break;
        case 2:
            return 'Error, revisa el login de la BDD';
        break;
    }
}
function restaurarbdd($backupfile,$host_name,$user_name,$password,$database){//La ruta y el nombre del archivo
    //Import of the database and output of the status
    $command='mysql -h' .$host_name .' -u' .$user_name .' -p' .$password .' ' .$database .' < ' .$backupfile;
    exec($command,$output,$worked);
    switch($worked){
    case 0:
        return 'Se restauro ' .$backupfile .' exitosamente a la base de datos ' .$database ;
    break;
    case 1:
        return 'Error, revisa el login de la BDD y la ruta que sea correcta';
    break;
    }
}
if(isset($_POST['botonbackup'])){
$warning= '<div class="alert alert-info alert-dismissible fade in" role="alert">
				<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
				'.creabackupbdd('./backups/Backup',$host_name,$user_name,$password,$database).'
			</div>';
unset($_POST);//para que no siga actualizando cada refresh
}
if(isset($_POST['botonrestore'])){
$warning= '<div class="alert alert-danger alert-dismissible fade in" role="alert">
				<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
				'.restaurarbdd($_POST['botonrestore'],$host_name,$user_name,$password,$database).'<h3><a href="/admin/admin.php" target="_blank" style="color:red">Verifica o actualiza el email de administrador primero para no quedarte fuera de este panel (clic aquí)</a></h3>
			</div>';
unset($_POST);//para que no siga actualizando cada refresh
}

}
?>