<?php
session_start();
include "verifica.php";
include "validaciones.php";

@$xnombres=$_REQUEST['xnombres'];
@$xabreviatura=$_REQUEST['xabreviatura'];
@$xaccion=$_REQUEST['xaccion'];
@$xid=$_REQUEST['xid'];
@$xestado=$_REQUEST['xestado'];
@$xusuario_sesion=$_SESSION['nombre_usuario'];

@$xfecha_inicio = $_REQUEST['xfecha_inicio'];
@$xfecha_fin = $_REQUEST['xfecha_fin'];


if(isset($_REQUEST['xactivar_fechas'])){
	$xactivar_fechas = 1;
}else{
	$xactivar_fechas = 0;
}

include "../conexion.php";

$prom = new Promociones;

switch($xaccion){
	
	case "adicionar": 
		if($prom->adicionar($conexion)==1){
			//echo "adicionar";
			?>			
			<script language="javascript">
			alert("Promoci&oacute;n creada satisfactoriamente.")
			parent.location.href="../promociones.php";
			</script>			
			<?php
			
		}		
		break;
		
	case "modificar": 
		if($prom->modificar($conexion)==1){
			//echo "modificar";
			?>			
			<script language="javascript">
			alert("Promoci&oacute;n modificada satisfactoriamente.")
			parent.location.href="../promociones.php";
			</script>			
			<?php

		}		
		break;
	
	case "eliminar":
		if($prom->eliminar($conexion)==1){
			//echo "modificar";
			?>			
			<script language="javascript">
			alert("Promoci&oacute;n eliminada satisfactoriamente.")
			parent.location.href="../promociones.php";
			</script>			
			<?php

		}		
		break;

	case "activar":
		if($prom->activar($conexion)==1){
			?>			
			<script language="javascript">
			parent.buscar();
			</script>			
			<?php
			
		}		
		break;


}

class Promociones{

	//Adiciona nueva familia
	function adicionar($conexion){
		global $xnombres, $xabreviatura, $xaccion, $xid, $xusuario_sesion, $xactivar_fechas, $xfecha_inicio, $xfecha_fin;		

		$r = mysqli_query($conexion,"insert into promociones (prom_nombre, 
												  	prom_abreviatura,
												  	prom_usu_crea,
												  	prom_activado,
													prom_fecha_inicio,
													prom_fecha_fin)
										values ('$xnombres', 
													'$xabreviatura',
													'$xusuario_sesion',
													'$xactivar_fechas',
													'$xfecha_inicio',
													'$xfecha_fin');");
		
		if($r){		
			return 1;
		}else{
			?>
			<script language="javascript">
			alert("ADVERTENCIA: LA PROMOCION YA EXISTE EN LOS REGISTROS.");
			</script>
			<?php				
		}	
				
	}	

	//Modifica una familia
	function modificar($conexion){
		global $xnombres, $xabreviatura, $xaccion, $xid, $xusuario_sesion, $xactivar_fechas, $xfecha_inicio, $xfecha_fin;		

		$r = mysqli_query($conexion,"update promociones set prom_nombre = '$xnombres', 
												  	prom_abreviatura = '$xabreviatura',
												  	prom_usu_modifica = '$xusuario_sesion',
												  	prom_activado = '$xactivar_fechas',
													prom_fecha_inicio = '$xfecha_inicio',
													prom_fecha_fin = '$xfecha_fin'
										where prom_codi = $xid;");
		
		if($r){		
			return 1;
		}else{
			?>
			<script language="javascript">
			alert("ADVERTENCIA: LA PROMOCION YA EXISTE EN LOS REGISTROS.");
			</script>
			<?php				
		}	
	
	}	
	

	//Elimina una familia
	function eliminar($conexion){
		global $xnombres, $xabreviatura, $xaccion, $xid;		

		$r = mysqli_query($conexion,"delete from promociones where prom_codi = $xid;");
		
		if($r){	
			$rd = mysqli_query($conexion,"delete from promociones_detalle where prom_codi_fk = $xid;");
			return 1;
		}	
	}		


	//Activa una promocion
	function activar($conexion){
		global $xestado, $xaccion, $xid;		
		$r = mysqli_query($conexion,"update promociones set prom_estado = '$xestado',
															prom_usu_activa = '$xusuario_sesion' 
														where prom_codi = $xid;");		
		if($r){	
			$r_productos_aplicables =  mysqli_query($conexion,"SELECT pd.prd_codi_fk FROM promociones p
															INNER JOIN promociones_detalle pd ON pd.prom_codi_fk=p.prom_codi
															WHERE prom_codi=$xid;");
			while($row_productos_aplicables = mysqli_fetch_array($r_productos_aplicables)){
				$xprd_codi = $row_productos_aplicables['prd_codi_fk']; 						
				$r_desactiva = mysqli_query($conexion,"SELECT p.prom_codi FROM promociones p
													INNER JOIN promociones_detalle pd ON pd.prom_codi_fk=p.prom_codi
													WHERE prom_estado=1
													AND pd.prd_codi_fk=$xprd_codi
													AND prom_codi!=$xid
													ORDER BY p.prom_codi DESC;");													
				while($row_desactiva = mysqli_fetch_array($r_desactiva)){
					$xprom_codi = $row_desactiva['prom_codi'];								
					$r_desactiva_actualiza = mysqli_query($conexion,"UPDATE promociones SET prom_estado=0 WHERE prom_codi=$xprom_codi;");
				}									
			}			
			return 1;
		}	
	}	

}


?>
