<?php $__env->startSection('CSS'); ?>
<?php echo HTML::style('bootstrap-select/css/bootstrap-select.min.css'); ?>

<?php echo HTML::style('bootstrap-daterangepicker/daterangepicker.css'); ?>

<?php echo HTML::style('DataTables/dataTables.bootstrap.min.css'); ?>

<?php echo HTML::style('DataTables/responsive.dataTables.min.css'); ?>

<?php echo HTML::style('DataTables/select.dataTables.min.css'); ?>

<?php echo HTML::style('DataTables/buttons.dataTables.min.css'); ?>

<style type="text/css">
	@media (max-width: 450px) { .ModalEliminar .modal-dialog { width: auto; } .ModalReiniciar .modal-dialog { width: auto; } }
	@media (min-width: 451px) { .ModalEliminar .modal-dialog { width: 450px; } .ModalReiniciar .modal-dialog { width: 450px; } }
	.ModalReiniciar .modal-footer { text-align: center; }	
	.mdAvatar .modal-dialog .modal-content .modal-header{ background-color: #363B3F; }
	table.dataTable.stripe tbody > tr.odd.selected, table.dataTable.stripe tbody > tr.odd > .selected, table.dataTable.display tbody > tr.odd.selected, table.dataTable.display tbody > tr.odd > .selected {
		background-color: #E9E9E9;
	}
	table.dataTable tbody > tr.selected, table.dataTable tbody > tr > .selected {
		background-color: #E9E9E9;
	}
	table.dataTable.display tbody > tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody > tr.odd.selected > .sorting_1 {
		background-color: #E9E9E9;
	}
	table.dataTable.order-column tbody > tr.selected > .sorting_1, table.dataTable.order-column tbody > tr.selected > .sorting_2, table.dataTable.order-column tbody > tr.selected > .sorting_3, table.dataTable.order-column tbody > tr > .selected, table.dataTable.display tbody > tr.selected > .sorting_1, table.dataTable.display tbody > tr.selected > .sorting_2, table.dataTable.display tbody > tr.selected > .sorting_3, table.dataTable.display tbody > tr > .selected {
		background-color: #E9E9E9;
	}
	table.dataTable.display tbody > tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody > tr.even.selected > .sorting_1 {
		background-color: #E9E9E9;
	}
	table.dataTable.display tbody > tr.selected:hover, table.dataTable.display tbody > tr > .selected:hover {
		background-color: #E9E9E9;
	}
	table.dataTable.display tbody > tr.selected:hover > .sorting_1, table.dataTable.order-column.hover tbody > tr.selected:hover > .sorting_1 {
		background-color: #E9E9E9;
	}
	.table-hover > tbody > tr:hover > td, .table-hover > tbody > tr:hover > th {
		background-color: #E9E9E9;
	}
	.form-inline .form-control.bootstrap-select {
		display: inline-block;
		width: auto;
	}
	.checkbox-inline {
		font-weight: bold;
	}
	.btnRadius{
  		border-radius: 4px !important;
	}
	#tblSuscriptores h3 {
    font-size: 21px;
	}
	.input-disableFecha {
		cursor: not-allowed !important;
	}
	.desactivado{
		pointer-events: none;
		opacity: 0.5;
	}
	input[type="checkbox"] + .custom-checkbox:before, input[type="radio"] + .custom-radio:before {
		border: 1px solid #CCCCCC;
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
		content: " ";
		display: inline-block;
		font-family: fontAwesome;
		font-size: 12px;
		height: 17px;
		width: 17px;
		text-align: center;
		vertical-align: middle;
	}
	.div-groupinput{
		min-height: auto !important;
		width: 210px;
	}
	.dataTables_filter{
		display: flex;
		justify-content: center;
	}
	.dataTables_filter button{
		margin-left: 0 !important;
		margin-right: 0 !important;
		opacity: 0.9;
	}
	.col-busqueda input[type=search]{
		min-height: auto !important;
		margin-left: 0 !important;
	}
	.div-groupinput .btn{
		padding: 6px 12px;
	}
</style>
<?php $__env->stopSection(); ?>

<?php $__env->startSection('Contenido'); ?>
<?php
	$idC =  Cliente::select('id')->where('users_id', '=', Auth::user()->id)->first()->id;
	$Cliente = Cliente::find( $idC );
	$select = 'listas_emails.id, listas_emails.nombre, listas_emails.tipo,
	(
		SELECT
			COUNT(cp.id)
		FROM
			campos_listas_emails AS cle
		INNER JOIN
			campos_personalizados AS cp
			ON cp.id = cle.campos_personalizados_id
		WHERE
			cp.id IN (1, 4, 5)
			AND cle.requerido = 1
			AND cle.listas_emails_id = listas_emails.id
	) AS matchGP, listas_emails.gestion_clientes as tipo';
	$ListasEmails = ListaEmail::select(DB::raw($select))
	->where('clientes_id', '=', $ListaEmail->clientes_id)
	->where('id', '<>', $ListaEmail->id)
	->get();
	$ListaCamposMatch =  ListaEmail::select(DB::raw($select))->where('clientes_id', '=', $ListaEmail->clientes_id)->where('id', '=', $ListaEmail->id)->get();
	$Productos = DB::table('productos_servicios AS ps')
	->select('ps.id AS idPS', 'ps.tipo', 'ps.nombre', 'ps.sin_variaciones', 'ps.precio AS precioPS', 'ps.cantidad_ilimitada AS ilimitado', 'vps.id AS idVPS', 'vps.precio AS precioVPS', 'vps.inventario', 'vps.margen_ganancia AS margenGanancia', 'vps.tipo_margen_ganancia AS tipoMargenGanancia')
	->join('variaciones_productos_servicios AS vps', 'vps.productos_servicios_id', '=', 'ps.id')
	->where('ps.clientes_id', '=', $Cliente->id)
	->where('ps.activo', '=', 1)
	->orderBy('ps.id', 'ASC')
	->groupBy('ps.id')
	->get();
	DB::statement('SET SESSION group_concat_max_len = 10000000000000000000;');
	$query = 'SELECT ps.id AS idPS, ps.nombre, ps.precio AS precioPS, ps.cantidad_ilimitada AS ilimitado, vps.id AS idVPS, ps.tipo, ps.sin_variaciones,
		(
			IF(
				(SELECT COUNT(vps.id) FROM variaciones_productos_servicios AS vps WHERE vps.productos_servicios_id = ps.id) > 0,
				(SELECT
					CONCAT(\'[\',
						GROUP_CONCAT(
							\'{\',
								\'"idPS":"\',ps.id,\'",\'
								\'"idVPS":"\',vps.id,\'",\'
								\'"nombre":"\',ps.nombre,\'",\',
								\'"precio":"\',vps.precio,\'",\',
								\'"inventario":"\',vps.inventario,\'",\'
								\'"ilimitado":"\',vps.cantidad_ilimitada,\'",\'
								\'"margenGanancia": "\',IF(vps.margen_ganancia > 0, vps.margen_ganancia, 0.00),\'",\'
								\'"tipoMargenGanancia": "\',IF(vps.tipo_margen_ganancia <> \'\', vps.tipo_margen_ganancia, \'\'),\'",\'
								\'"atributos": \',
									IF(  ps.sin_variaciones = 0,
										(
											SELECT
												CONCAT(\'[\',
													GROUP_CONCAT(\'"\',aps.nombre,\' : \',avps.valor,\'"\')
												,\']\')
											FROM
												atributos_x_variaciones_productos AS avps
											INNER JOIN
												atributos_productos_servicios AS aps
												ON aps.id = avps.atributos_productos_servicios_id
											WHERE
												avps.variaciones_productos_servicios_id = vps.id
										),
										\'[]\'
									),
								\'\'
							,\'}
						\')
					,\']\')
				FROM
					variaciones_productos_servicios AS vps
				WHERE
					vps.productos_servicios_id = ps.id
				),
				\'{"0":""}\'
			)
		) AS variaciones
	FROM
		productos_servicios  as ps
	INNER JOIN
		variaciones_productos_servicios as vps
		ON(vps.productos_servicios_id = ps.id)
	WHERE
		ps.activo = 1
	AND
		(ps.tipo IN(\'PD\', \'S\') OR (ps.tipo = \'P\'))
	AND
		ps.clientes_id = '.$Cliente->id.'
	GROUP BY (ps.id)';
	$ProductosV = DB::select(DB::raw($query));
	$ProductosJSON = json_encode($Productos);
	$ProductosJSON2 = json_encode($ProductosV);
	$Referencias = Referencia::select('referencias.id', 'referencias.nombre')
	->leftJoin('clientes AS c', 'c.id', '=', 'referencias.clientes_id')
	->where('referencias.clientes_id', '=', $idC)
	->get();
	$select = "empleados.id, empleados.nombre_completo,
	(SELECT COUNT(sc.id) FROM prospectos AS sc WHERE sc.asignado_a = empleados.id ) AS total,
	(SELECT COUNT(sc.id) FROM prospectos AS sc INNER JOIN seguimientos_x_prospectos AS exc ON exc.prospectos_id = sc.id WHERE sc.asignado_a = empleados.id AND exc.estado = 'V') AS vendidos,
	(SELECT COUNT(sc.id) FROM prospectos AS sc INNER JOIN seguimientos_x_prospectos AS exc ON exc.prospectos_id = sc.id WHERE sc.asignado_a = empleados.id AND exc.estado = 'R') AS rechazados,
	(
		(SELECT COUNT(sc.id) FROM prospectos AS sc WHERE sc.asignado_a = empleados.id )
		-
		(
			(SELECT COUNT(sc.id) FROM prospectos AS sc INNER JOIN seguimientos_x_prospectos AS exc ON exc.prospectos_id = sc.id WHERE sc.asignado_a = empleados.id AND exc.estado = 'V')
			+
			(SELECT COUNT(sc.id) FROM prospectos AS sc INNER JOIN seguimientos_x_prospectos AS exc ON exc.prospectos_id = sc.id WHERE sc.asignado_a = empleados.id AND exc.estado = 'R')
		)
	) pendientes";
	$Empleados = DB::table('empleados')
	->select(DB::raw($select))
	->join('users AS u', 'u.id', '=', 'empleados.users_id')
	->where('empleados.clientes_id', '=', $idC)
	->where('u.estado', '=', 1)
	->get();
	$MensajeCargaMasiva = RegistroDeImportacion::where('listas_emails_id', '=', $ListaEmail->id)->where('estado', '=', 1)->count();
?>
<div class="row">
	<div class="col-md-12">
		<h2><i class="fa fa-envelope-o"></i> E-Mail Marketing </h2>
	</div><!--/col-md-12-->
</div><!--/row-->

<div class="row">
	<?php /*
	<div class="col-md-12">
		<nav class="navbar navbar-inverse">
			<ul class="nav navbar-nav">
				<li><a href="<?php echo URL::to('templates'); ?>">Ver todos los Templates</a></li>
				<li><a href="<?php echo URL::to('templates/create'); ?>">Crear un Template</a>
			</ul>
		</nav>
	</div>
	*/ ?>
	<div class="col-md-12">
		<?php if(Session::has('message')): ?>
		<div class="alert alert-info"><?php echo Session::get('message'); ?></div>
		<?php endif; ?>
	</div>
</div>

<div class="row">
	<div class="col-md-12">
		<div class="block-web">
			<div class="header">
				<h3 class="content-header">
					Suscriptores de la lista <strong> <?php echo $ListaEmail->nombre; ?> </strong>
					&nbsp;&nbsp; <?php echo HTML::linkRoute('SysWebEmailMarketingListasSubscriptoresAgregarSubscriptor', 'Agregar', array($ListaEmail->id), array('class' => 'btn btn-primary btnRadius')); ?>

					<div data-toggle="buttons" class="button-group pull-right">
						<a class="tooltips" data-toggle="tooltip" data-original-title="Agregar etiquetas a subscriptores" id="etiquetasSub"  onclick="EtiquetasSubscriptores()" href="javascript:EtiquetasSubscriptores()" style="cursor:pointer; color: rgba(0, 0, 0, 0.3); padding-right: 6px;">
							<i class="fa fa-tag"> </i>
						</a>
						<a class="tooltips" data-toggle="tooltip" data-original-title="Exportar subscriptores a otra lista" id="importarSub"  onclick="ImportarSubscriptores()" href="javascript:ImportarSubscriptores()" style="cursor:pointer; color: rgba(0, 0, 0, 0.3); padding-right: 6px;">
							<i class="fa fa-arrows-h"> </i>
						</a>
						<a class="tooltips" data-toggle="tooltip" data-original-title="Descargar subscriptores" id="descargarSub" onclick="DescargarSubscriptores()" href="javascript:DescargarSubscriptores()" style="cursor:pointer; color: rgba(0, 0, 0, 0.3); padding-right: 6px;">
							<i class="fa fa-download"> </i>
						</a>
						<a class="refresh tooltips" data-toggle="tooltip" data-original-title="Actualizar registros" onclick="Actualizar()" href="javascript:Actualizar()" style="color: rgba(0, 0, 0, 0.3)">
							<i class="fa fa-repeat"> </i>
						</a>
					</div>
				</h3>
			</div>
			<div class="porlets-content">
				<form id="frmFiltroFechas" class="form-inline" style="padding-bottom: 15px;">
					<fieldset>
						<legend>Filtro básico y por etiquetas</legend>
						<div class="form-group">
							<label for="FiltroFechas" style="padding-top: 10px;"> Suscritos en: </label>
							<input id="FiltroFechas" type="text" name="filtrofechas" value="" readonly>
						</div>
						<div class="form-group">
							<label style="padding-left: 20px;">Filtro de estado: </label>
							<select name="slEstados" id="slEstados" class="form-control selectpicker">
								<option value="T" selected>Todos</option>
								<option value="S">Suscrito</option>
								<option value="NC">No confirmados</option>
								<option value="D">Desuscrito</option>
							</select>
						</div>
						<div class="form-group">
							<label class="checkbox-inline">
								<input type="checkbox" id="chEtiquetas" value="1" name="chEtiquetas">
								Filtrar por tiquetas <span class="custom-checkbox"></span> 
							</label>
						</div>
						<div class="form-group">
							<?php /* <label>Filtro de etiquetas: </label> */ ?>
							<select name="slEtiquetas" id="slEtiquetas" class="form-control selectpicker" multiple data-selected-text-format="count" title="Sel. etiquetas" disabled>
								<?php foreach( $Etiquetas as $Etiqueta ): ?>
								<option value="<?php echo $Etiqueta->id; ?>"><?php echo $Etiqueta->nombre; ?></option>
								<?php endforeach; ?>
							</select>
						</div>
						<button type="submit" class="btn btn-primary tooltips" data-toggle="tooltip" data-original-title="Buscar"><i class="fa fa-search"></i></button>
						<button id="btnLimpiar" type="button" class="btn btn-default tooltips" data-toggle="tooltip" data-original-title="Limpiar"><i class="fa fa-paint-brush"></i></button>
					</fieldset>
				</form>
				<form id="frmFiltroCS" class="form-inline" style="padding-bottom: 60px;">
					<fieldset>
						<legend>Filtro avanzado por interacción</legend>
						<div class="form-group">
							<label>Tipos de envio: </label>
							<select name="tipoCorreo" id="tipoCorreo" class="form-control selectpicker" data-width="130" onChange="tipoCorreosFiltro(this.value)">
								<option value="" selected >Seleccionar...</option>
								<option value="S">Seguimiento</option>
								<option value="C">Campaña</option>
							</select>
						</div>
						<div class="form-group">
							<label style="padding-left: 20px;">Correo a filtrar: </label>
							<select name="filtroCorreos" id="filtroCorreos" class="form-control selectpicker" data-width="220" data-live-search="true" disabled multiple>
							</select>
						</div>
						<div class="form-group">
							<label style="padding-left: 20px;">Estado del correo: </label>
							<select name="estadoCorreo" id="estadoCorreo" class="form-control selectpicker" data-width="115" disabled>
								<option value="">Todos</option>
								<option value="E">Enviado</option>
								<option value="NE">No enviado</option>
								<option value="A">Abierto</option>
								<option value="NA">No abierto</option>
								<option value="C">Click</option>
							</select>
						</div>
						<div class="form-group">
							<label for="FiltroFechasAvanzado" style="padding-top: 7px; padding-left: 20px;"> Fechas: </label>
							<input id="FiltroFechasAvanzado" class="input-disableFecha" type="text" name="FiltroFechasAvanzado" value="" disabled readonly>
						</div>
						<button type="submit" id="buscarFiltroAvanzado" disabled class="btn btn-primary tooltips" data-toggle="tooltip" data-original-title="Buscar"><i class="fa fa-search"></i></button>
						<button id="btnLimpiarFiltroCS" type="button" class="btn btn-default tooltips" data-toggle="tooltip" data-original-title="Limpiar"><i class="fa fa-paint-brush"></i></button>
					</fieldset>
				</form>
				<div class="table-responsive">
					<table class="table table-striped-old table-bordered table-hover display" id="tblSuscriptores">
						<thead>
							<tr>
								<th class=""></th>
								<th class="all"> Suscriptor </th>
								<th class="min-tablet-l col-md-2"> Acciones </th>
								<th> correo_electronico </th>
								<th> Fuente suscripción </th>
								<th> Fecha de creación </th>
							</tr>
						</thead>
					</table>
				</div>
			</div>
			<div class="bottom">
				<?php echo HTML::linkRoute('SysWebEmailMarketingListasSubscriptoresAgregarSubscriptor', 'Agregar', array($ListaEmail->id), array('class' => 'btn btn-primary')); ?>

				<button type="button" style="display: none;" class="btn btn-danger" id="btnEliminarSeleccionados"> Eliminar seleccionados </button>
				<?php echo HTML::linkRoute('SysWebEmailMarketingListasSubscriptores', 'Regresar', array(), array('class' => 'btn btn-default')); ?>

			</div>
		</div>
	</div>
</div><!--/row end-->
<?php $__env->stopSection(); ?>

<?php $__env->startSection('JS'); ?>
<?php echo HTML::script('bootstrap-select/js/bootstrap-select.min.js'); ?>

<?php echo HTML::script('bootstrap-select/js/i18n/defaults-es_CL.min.js'); ?>

<?php echo HTML::script('DataTables/jquery.dataTables.min.js'); ?>

<?php echo HTML::script('DataTables/dataTables.bootstrap.min.js'); ?>

<?php echo HTML::script('DataTables/dataTables.responsive.min.js'); ?>

<?php echo HTML::script('DataTables/dataTables.select.min.js'); ?>

<?php echo HTML::script('DataTables/dataTables.buttons.min.js'); ?>

<?php echo HTML::script('bootstrap-daterangepicker/moment.min.js'); ?>

<?php echo HTML::script('bootstrap-daterangepicker/daterangepicker.js'); ?>

<?php echo HTML::script('jQueryValidate/jquery.validate.min.js'); ?>

<?php echo HTML::script('Alphanum/jquery.alphanum.min.js'); ?>

<script type="text/javascript">
	function Info(id){
		var id = id;
		if( $("#Info"+id).hasClass("in") ){
			$("#Campos"+id).html("");
			$("#Etiquetas"+id).html("");
			//$("#tblSubscriptor"+id).DataTable().destroy();
		}
		else{
			$("#CargandoCampos"+id).show();
			$("#CargandoEtiquetas"+id).show();
			$.post(
				"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVerCampos', array($ListaEmail->id)); ?>",
				{ idS:id, idL:<?php echo $ListaEmail->id; ?> },
				function(data){
					if(data.success){
						$("#CargandoCampos"+id).hide();
						$("#CargandoEtiquetas"+id).hide();
						if( data.SuscriptorCampoValor.length > 0 ){
							var Campos = '<dl>';
							for(i=0;i<data.SuscriptorCampoValor.length;i++){
								if(data.SuscriptorCampoValor[i].value == ''){ Valor = '&nbsp;'; } else{ Valor = data.SuscriptorCampoValor[i].value; }
								if(data.SuscriptorCampoValor[i].nombre == 'Texto'){
									Campos += '<dt>'+data.SuscriptorCampoValor[i].nombre+'</dt><dd>'+Valor+' <a href="javascript:LeerTexto('+id+');">[Más]</a> </dd>';
								}
								else{
									Campos += '<dt>'+data.SuscriptorCampoValor[i].nombre+'</dt><dd>'+Valor+'</dd>';
								}
							}
							Campos += '</dl>';
							$("#Campos"+id).html(Campos);
						}
						if( data.EtiquetasxSuscriptor.length > 0 ){
							$.each(
								data.EtiquetasxSuscriptor,
								function(key, value){
									$("#Etiquetas"+id).append('<span class="label label-info">'+value.nombre+'</span> &nbsp;');
								}
							);
						}
						else{
							$("#Etiquetas"+id).html('<div class="alert alert-warning"> El suscriptor no tiene ningúna etiqueta asignada </div>');
						}
					}
					else{
						if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
					}
				},
				"json"
			);

			if(!$.fn.DataTable.isDataTable("#tblSubscriptor"+id)){
				$("#tblSubscriptor"+id).DataTable({
					"processing": true,
					"serverSide": true,
					"iDisplayLength": 5,
					"aLengthMenu": [[5], [5]],
					// preDrawCallback: function (settings) { $.isLoading("hide"); },
					"ajax": "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVerActividad', array('idS')); ?>".replace("idS", id),
					columns: [
						{data: "asunto", name: "asunto", "searchable": true, "orderable": true},
						{data: "fecha_enviado", name: "fecha_enviado", "searchable": false, "orderable": false},
						{data: "fecha_abierto", name: "fecha_abierto", "searchable": false, "orderable": false},
						{data: "fecha_clic", name: "fecha_clic", "searchable": false, "orderable": false}
					],
					"language": {
						"url": "<?php echo asset('DataTables/Spanish.json'); ?>"
					},
					"fnDrawCallback": function( oSettings ) {
						$(".tooltips").tooltip();
					},
					autoWidth: false,
					responsive: true,
					initComplete: function(){
						var input = $("#tblSubscriptor" + id + "_filter input").unbind(),
						self = this.api(),
						$searchButton = $('<button class="btn btn-primary tooltips" style="margin-left: 5px;" data-toggle="tooltip" data-original-title="Buscar" data-container="body">').html('<i class="fa fa-search"></i>').click(function(){
							self.search(input.val().trim()).draw();
						});
						$("#tblSubscriptor" + id + "_filter").append($searchButton);
						$("body").tooltip({selector: "[data-toggle='tooltip']"});
						$("input[type=search]").attr("placeholder", "Buscar...");
					}
				// }).on("processing.dt", function(e, settings, processing) {
				// 	if (processing) {
				// 		$.isLoading();
				// 	}
				// 	else{
				// 		$(".isloading-overlay").each(function(cargador){
				// 			$.isLoading("hide");
				// 		});
				// 	}
				});
			}
			else{
				$("#tblSubscriptor"+id).DataTable().ajax.reload(null, false);
			}
		}
	}
	function ActualizarInfoEC(id){
		var id = id
		$("#Etiquetas"+id).empty();
		$("#Campos"+id).empty();
		$("#CargandoCampos"+id).show();
		$("#CargandoEtiquetas"+id).show();
		$.post(
			"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVerCampos', array($ListaEmail->id)); ?>",
			{ idS:id, idL:<?php echo $ListaEmail->id; ?> },
			function(data){
				if(data.success){
					$("#CargandoCampos"+id).hide();
					$("#CargandoEtiquetas"+id).hide();
					if( data.SuscriptorCampoValor.length > 0 ){
						var Campos = '<dl>';
						for(i=0;i<data.SuscriptorCampoValor.length;i++){
							if(data.SuscriptorCampoValor[i].value == ''){ Valor = '&nbsp;'; } else{ Valor = data.SuscriptorCampoValor[i].value; }
							if(data.SuscriptorCampoValor[i].nombre == 'Texto'){
								Campos += '<dt>'+data.SuscriptorCampoValor[i].nombre+'</dt><dd>'+Valor+' <a href="javascript:LeerTexto('+id+');">[Más]</a> </dd>';
							}
							else{
								Campos += '<dt>'+data.SuscriptorCampoValor[i].nombre+'</dt><dd>'+Valor+'</dd>';
							}
						}
						Campos += '</dl>';
						$("#Campos"+id).html(Campos);
					}
					if( data.EtiquetasxSuscriptor.length > 0 ){
						$.each(
							data.EtiquetasxSuscriptor,
							function(key, value){
								$("#Etiquetas"+id).append('<span class="label label-info">'+value.nombre+'</span> &nbsp;');
							}
						);
					}
					else{
						$("#Etiquetas"+id).html('<div class="alert alert-warning"> El suscriptor no tiene ningúna etiqueta asignada </div>');
					}
				}
				else{
					if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
				}
			},
			"json"
		);
	}
	function Eliminar(id){
		var id = id;
		var idL = <?php echo $ListaEmail->id; ?>;
		var mensaje = "<div class='row'> \
							<div class='col-xs-12'> \
								<form id='frmEliminar'> \
									<h2> ¿Seguro que desea eliminar? </h2> \
									<input type='hidden' name='idL' value='"+idL+"'> \
									<input type='hidden' name='idS' value='"+id+"'> \
								</form> \
							</div> \
						</div>";
		BootstrapDialog.show({
			title: "Eliminar registro",
			type: BootstrapDialog.TYPE_DANGER,
			message: mensaje,
			draggable: true,
			closeByBackdrop: false,
			cssClass: "ModalEliminar mdAvatar",
			onshown: function(dialogItself){
				$("body").addClass("modal-open");
			},
			buttons: [{
				id: "btnEliminar",
				label: "Eliminar",
				cssClass: "btn-danger btn-block btn-lg",
				action: function(dialogItself){
					NProgress.start();
					$("#btnEliminar").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Eliminando');
					$.post(
						"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresSuscriptorEliminar'); ?>",
						{idS:id,idL:idL},
						function(data){
							NProgress.done();
							$("#btnEnviar").prop("disabled", false).html("Eliminar");
							if(data.success){
								new PNotify({ title: "Felicidades!", text: data.mensaje, type: "success" });
								dialogItself.close();
								tabla.ajax.reload(null, false);
							}
							else{
								if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
								$.each(data.errMensajes, function(key, value){ if(value != ''){ $("#err"+key).html(value); } else{ $("#err"+key).html(""); } });
							}
						},
						"json"
					);
				}
			}],
			onhidden: function(dialogItself){
				$("body").removeClass("modal-open");
			}
		});
	}
	function ReiniciarSecuencia(idS, idL){
		var idS = idS;
		var idL = idL;
		var mensaje = "<div class='row'> \
							<div class='col-xs-12'> \
								<form id='frmReiniciarSecuenciaSeguimiento'> \
									<strong> ¿Seguro que desea reiniciar la secuencia de seguimiento del suscriptor? </strong> \
									<p> \
										Al hacerlo se eliminará el historial de actividad (Abiertos, clics, rebotes y quejas) actual de suscriptor, alterando las estadisticas pues se reiniciará el registro de la actividad de dicho suscriptor \
									</p> \
									<input type='hidden' name='idS' value='"+idS+"'> \
									<input type='hidden' name='idL' value='"+idL+"'> \
								</form> \
							</div> \
						</div>";
		BootstrapDialog.show({
			title: "<strong> Reiniciar secuencias de seguimiento </strong>",
			type: BootstrapDialog.TYPE_WARNING,
			message: mensaje,
			draggable: true,
			cssClass: "ModalReiniciar mdAvatar",
			buttons: [{
				id: "btnReiniciar",
				label: "Reiniciar Secuencia de Seguimiento",
				cssClass: "btn-warning btn-block ",
				action: function(dialogItself){
					NProgress.start();
					$("#btnReiniciar").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Reiniciando...');
					$.post(
						"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresSuscriptorReiniciar'); ?>",
						$("#frmReiniciarSecuenciaSeguimiento").serialize(),
						function(data){
							NProgress.done();
							$("#btnReiniciar").prop("disabled", false).html("Reiniciar");
							if(data.success){
								new PNotify({ title: "Felicidades!", text: data.mensaje, type: "success" });
								dialogItself.close();
								tabla.ajax.reload(null, false);
							}
							else{
								if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
								$.each(data.errMensajes, function(key, value){ if(value != ''){ $("#err"+key).html(value); } else{ $("#err"+key).html(""); } });
							}
						},
						"json"
					);
				}
			}]
		});
	}
	function LeerTexto(id){
		var id = id;
		$.post(
			"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVerCamposTexto', array($ListaEmail->id)); ?>",
			{ idS:id },
			function(data){
				if(data.success){
					var mensaje = "<div class='row'> \
							<div class='col-xs-12'> \
								<p> "+data.texto+" </p> \
							</div> \
						</div>";
					BootstrapDialog.show({
						title: "Texto de suscriptor",
						type: BootstrapDialog.TYPE_INFO,
						message: mensaje,
						draggable: true,
						cssClass: "mdAvatar"
					});
				}
				else{
					if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
				}
			},
			"json"
		);
	}
	var tabla;
	function Actualizar(){
		tabla.ajax.reload(null, false);
	}
	function actualizarTblS(id){
		var tablaS = $("#tblSubscriptor"+id).DataTable();
		tablaS.ajax.reload(null, false);
	}
	function DescargarSubscriptores(sub){
		var filtroBasicoFechas = $("#FiltroFechas").val();
		var estado = $("#slEstados").val();
		var etiquetas = $("#slEtiquetas").val();
		var tCorreo = $("#tipoCorreo").val();
		var fCorreo = $("#filtroCorreos").val();
		var eCorreo = $("#estadoCorreo").val();
		var filtroAvanzadoFechas = $("#FiltroFechasAvanzado").val();
		var fechaAF = ( filtroAvanzadoFechas == undefined ) ? "" : filtroAvanzadoFechas
		var opcionesFiltros = new Array();
		var jsonFiltros = {
			filtroBasicoFechas: filtroBasicoFechas,
			estado: estado,
			etiquetas: etiquetas,
			tCorreo: tCorreo,
			fCorreo: fCorreo,
			eCorreo: eCorreo,
			accion: "D",
			filtroAvanzadoFechas: fechaAF
		};
		opcionesFiltros.push(jsonFiltros);
		var filtro = JSON.stringify(opcionesFiltros);
		filtro = btoa(filtro);
		var url = "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresFiltroDescargarImportar', array($ListaEmail->id, "sub")); ?>";
		url = url.replace("sub", filtro);
		window.location.href = url;
	}
	function tipoCorreosFiltro(val){
		var secuencias = <?php echo json_encode($SecuenciasSeguimientosS); ?>;
		var campanhas = <?php echo json_encode($CampanhaUL); ?>;
		switch (val) {
			case "C":
				opsDisponiblesCorreoFiltro(campanhas);
				var opcionCampanha = $("#filtroCorreos > option:first").val();
				$("#filtroCorreos").val(opcionCampanha);
				if(campanhas.length == 0){
					$("#filtroCorreos").prop("disabled", true);
					$("#estadoCorreo").prop("disabled", true);
					$("#buscarFiltroAvanzado").prop("disabled", true);
				}
				else{
					$("#filtroCorreos").prop("disabled", false);
					$("#estadoCorreo").prop("disabled", false);
					$("#buscarFiltroAvanzado").prop("disabled", false);
				}
				break;
			case "S":
				opsDisponiblesCorreoFiltro(secuencias);
				var opcionSecuencia = $("#filtroCorreos > option:first").val();
				$("#filtroCorreos").val(opcionSecuencia);
				if(secuencias.length == 0){
					$("#filtroCorreos").prop("disabled", true);
					$("#estadoCorreo").prop("disabled", true);
					$("#buscarFiltroAvanzado").prop("disabled", true);
				}
				else{
					$("#filtroCorreos").prop("disabled", false);
					$("#estadoCorreo").prop("disabled", false);
					$("#buscarFiltroAvanzado").prop("disabled", false);
				}
				break;
			case "":
				$("#filtroCorreos").html("");
				$("#filtroCorreos").prop("disabled", true);
				$("#estadoCorreo").prop("disabled", true);
				$("#buscarFiltroAvanzado").prop("disabled", true);
			default:
				break;
		}
		$("#filtroCorreos").selectpicker("refresh");
		$("#estadoCorreo").selectpicker("refresh");
	}
	function opsDisponiblesCorreoFiltro(listado){
		$("#filtroCorreos").html("");
		$.each(listado, function (i, value) {
			$("#filtroCorreos").append("<option value= \""+i+"\" > "+value+" </option>");
		});
	}
	function ImportarSubscriptores(){
		var filtroBasicoFechas = $("#FiltroFechas").val();
		var estado = $("#slEstados").val();
		var etiquetas = $("#slEtiquetas").val();
		var tCorreo = $("#tipoCorreo").val();
		var fCorreo = $("#filtroCorreos").val();
		var eCorreo = $("#estadoCorreo").val();
		var filtroAvanzadoFechas = $("#filtroAvanzadoFechas").val();
		var fechaAF = ( filtroAvanzadoFechas == undefined ) ? "" : filtroAvanzadoFechas
		var opcionesFiltros = new Array();
		var jsonFiltros = {
			filtroBasicoFechas: filtroBasicoFechas,
			estado: estado,
			etiquetas: etiquetas,
			tCorreo: tCorreo,
			fCorreo: fCorreo,
			eCorreo: eCorreo,
			accion: "I",
			filtroAvanzadoFechas: fechaAF
		};
		opcionesFiltros.push(jsonFiltros);
		var filtro = JSON.stringify(opcionesFiltros);
		filtro = btoa(filtro);
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmImportarLista" class="form-horizontal row-border"> \
					<div class="form-group"> \
						<label class="col-sm-3 control-label"> Lista de suscriptores de orígen </label> \
						<div class="col-sm-9"> \
							<select class="form-control selectpicker" id="slListaSuscriptoresO" disabled data-live-search="true" data-selected-text-format="count" name="listaEmail"> \
								<option value="<?php echo $ListaEmail->id; ?>" data-match-gp=" <?php echo json_encode( $ListaCamposMatch); ?> " > <?php echo $ListaEmail->nombre; ?></option> \
							</select> \
						</div> \
					</div> \
					<div class="form-group"> \
						<label class="col-sm-3 control-label"> Lista de suscriptores de destino </label> \
						<div class="col-sm-9"> \
							<?php if( $ListaEmail->gestion_clientes == "N"): ?> \
							<select class="form-control selectpicker" id="slListaSuscriptoresD" data-live-search="true" data-selected-text-format="count" name="listaEmail"> \
								<option value="">Selecciona una lista de suscripción</option> \
								<?php foreach($ListasEmails as $indice => $LE): ?> \
									<option value="<?php echo $LE->id; ?>" id="op<?php echo $LE->id; ?>" data-tipo="<?php echo $LE->tipo; ?>" data-mgp="<?php echo $LE->matchGP; ?>"> <?php echo $LE->nombre; ?> </option> \
								<?php endforeach; ?> \
							</select> \
							<?php else: ?> \
							<select class="form-control selectpicker" id="slListaSuscriptoresD" data-live-search="true" data-selected-text-format="count" name="listaEmail"> \
								<option value="">Selecciona una lista de suscripción</option> \
								<?php foreach($ListasEmails as $indice => $LE): ?> \
									<?php if( $LE->tipo == "N" ): ?> \
									<option value="<?php echo $LE->id; ?>" id="op<?php echo $LE->id; ?>" data-tipo="<?php echo $LE->tipo; ?>" data-mgp="<?php echo $LE->matchGP; ?>"> <?php echo $LE->nombre; ?> </option> \
									<?php endif; ?> \
								<?php endforeach; ?> \
							</select> \
							<?php endif; ?> \
							<span class="text-danger" id="errlistaEmail"></span> \
						</div> \
					</div> \
					<div class="crm" style="display:none"> \
						<div class="form-group"> \
							<label class="col-sm-3 control-label textoRegistro"> ¿Registrarlo(s) como ? </label> \
							<div class="col-sm-9"> \
								<label class="radio-inline"> \
									<input type="radio" name="registar_gp_l" id="rdSiregistar_gp" value="1"> \
									<span class="custom-radio"></span> \
									Si \
								</label> \
								<label class="radio-inline"> \
									<input type="radio" name="registar_gp_l" id="rdNoregistar_gp" value="0" checked> \
									<span class="custom-radio"></span> \
									No \
								</label> \
								<span class="text-danger" id="errregistar_gp_l" style="display: block;"> </span> \
								<input type="hidden" name="tipo_registro_gp" value="<?php echo $ListaEmail->gestion_clientes; ?>"> \
							</div> \
						</div> \
					</div> \
					<div id="dvPrecio" class="dvRegistroFP-L" style="display:none"> \
						<div class="form-group"> \
							<label class="col-sm-3 control-label"> Producto/Servicio a asociar (*)  </label> \
							<div class="col-sm-9"> \
								<table class="table table-bordered" id="tblProductosVenta"> \
									<thead> \
										<tr> \
											<th>Producto <span class="label label-success" style="cursor: pointer;" onclick="agregarProducto(this.id)" id="IPList"><i class="fa fa-plus"></i></span></th> \
											<th>Precio de lista (<?php echo $Cliente->codigo_moneda; ?> <?php echo $Cliente->simbolo_moneda; ?>)</th> \
											<th class="hide">Cantidad</th> \
											<th class="hide">Precio de unitario (<?php echo $Cliente->codigo_moneda; ?> <?php echo $Cliente->simbolo_moneda; ?>)</th> \
											<th>Total (<?php echo $Cliente->codigo_moneda; ?> <?php echo $Cliente->simbolo_moneda; ?>)</th> \
										</tr> \
									</thead> \
									<tbody> \
										<tr> \
											<th colspan="2" style="text-align: right;"> \
												Total (<?php echo $Cliente->codigo_moneda; ?> <?php echo $Cliente->simbolo_moneda; ?>) \
											</th> \
											<td> \
												<input class="form-control nmTT" type="text" readonly value="0"> \
											</td> \
										</tr> \
									</tbody> \
									</table> \
								<input type="hidden" name="productos_l" id="productos_l"> \
								<input type="hidden" name="idsPSRS" value=""> \
								<span class="text-danger" id="errproductos"></span> \
							</div> \
						</div> \
						<div class="form-group"> \
							<label class="col-sm-3 control-label"> Referencia </label> \
							<div class="col-sm-9"> \
								<select class="form-control selectpicker" data-live-search="true" id="slReferenciaGP-L" name="referenciaGP_l" title="Selecciona una referencia..."> \
									<?php foreach( $Referencias as $Referencia ): ?> \
									<option value="<?php echo $Referencia->id; ?>" <?php if( $Referencia->nombre == "Cliente existente (Oportunidad)" ): ?> disabled <?php endif; ?> ><?php echo $Referencia->nombre; ?></option> \
									<?php endforeach; ?> \
								</select> \
								<span class="text-danger" id="errreferenciaGP_l"> </span> \
							</div> \
						</div> \
						<div class="form-group"> \
							<label class="col-sm-3 control-label"> Asignar a... </label> \
							<div class="col-sm-9"> \
								<select class="form-control selectpicker" data-live-search="true" id="slUsuarioAsignarGP" name="usuarioAsignarGP" title="Seleccione el usuario a asignar..."> \
									<?php foreach( $Empleados as $Empleado ): ?> \
									<option value="<?php echo $Empleado->id; ?>"> <?php echo $Empleado->nombre_completo; ?> - Pendientes: <?php echo $Empleado->pendientes; ?> </option> \
									<?php endforeach; ?> \
								</select> \
								<span class="text-danger" id="errusuarioAsignarGP"> </span> \
							</div> \
						</div> \
					</div> \
					<div class="form-group"> \
						<label class="col-sm-3 control-label"> Acción </label> \
						<div class="col-sm-9"> \
							<div class="radio-inline"> \
								<label> \
									<input type="radio" value="C" id="rdAccionC" name="rdAccion"> \
									<span class="custom-radio"></span> Copiar \
								</label> \
							</div> \
							<div class="radio-inline"> \
								<label> \
									<input type="radio" checked value="M" id="rdAccionM" name="rdAccion"> \
									<span class="custom-radio"></span> Mover \
								</label> \
							</div> \
						</div> \
					</div> \
					<div class="form-group" hidden> \
						<label class="col-sm-3 control-label"> Secuencia de segimiento inicial </label> \
						<div class="col-sm-9"> \
							<select class="form-control selectpicker" data-live-search="true" id="secuencias_seguimientos" name="secuencias_seguimientos1" title="Seleccione el usuario a asignar..."> \
							</select> \
							<span class="text-danger" id="errsecuencias_seguimientos"> </span> \
						</div> \
					</div> \
					<div class="form-group" hidden> \
						<label class="col-sm-3 control-label"> Enviar secuencia </label> \
						<div class="col-sm-9" id="RbtnEnvio"> \
							<label class="radio-inline"> \
								<input type="radio" name="envio_secuencia_cm" id="rdEnvioSecuenciaInmediato" value="I"> \
								<span class="custom-radio"></span> \
								Inmediatamente \
							</label> \
							<label class="radio-inline"> \
								<input type="radio" name="envio_secuencia_cm" id="rdEnvioSecuenciaConf" value="C"> \
								<span class="custom-radio"></span> \
								Según programación \
							</label> \
							<span class="text-danger" id="errenvio_secuencia_cm" style="display: block;"> </span> \
						</div> \
					</div> \
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Exportar suscriptores a otra lista",
			type: BootstrapDialog.TYPE_WARNING,
			size: BootstrapDialog.SIZE_WIDE,
			message: mensaje,
			draggable: true,
			closeByBackdrop: false,
			cssClass: "mdAvatar",
			buttons: [{
				id: "btnImportar",
				label: "Exportar",
				cssClass: "btn-success btn-lg btn-block ",
				action: function(dialogItself){
					var vetanaA = dialogItself.getModalBody();
					NProgress.start();
					$("#btnImportar").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Importando...');
					var url = "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresFiltroDescargarImportar', array($ListaEmail->id, "sub")); ?>";
					url = url.replace("sub", filtro);
					if(vetanaA.find(".dvRegistroFP-L").find(".nmPV").length > 0){
						vetanaA.find("#frmImportarLista").find("#productos_l").val(1);
					}
					$.post(
						url,
						$("#frmImportarLista").serialize(),
						function(data){
							NProgress.done();
							confirmacionSalida = false;
							$("button[type='submit']").prop("disabled", false);
							$("#btnImportar").prop("disabled", false).html("Importar");
							if(data.success){
								new PNotify({ title: "Realizado", text: data.mensaje, type: "success" });
								setTimeout( function(){ window.location.href = "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVer', array($ListaEmail->id)); ?>"; }, 3000 );
								if(typeof data.MensajeError != "undefined"){ $("#MensajeError2").html(data.MensajeError); $("#MensajeError2").show(); }else{ $("#MensajeError2").hide(); $("#MensajeError2").html(""); }
							}
							else{
								if(typeof data.MensajeError != "undefined"){ $("#Errs").html(data.MensajeError); $("#MensajeError").show(); } else{ $("#MensajeError").hide(); $("#Errs").html("");}
								if(data.mensaje != ""){ new PNotify({ title: "Error", text: data.mensaje, type: "error" });}
								$.each(data.errMensajes, function(key, value){ if(value != ""){ $("#err"+key).html(value); } else{ $("#err"+key).html("");}});
							}
						},
						"json"
					);
				}
			}],
			onshown: function(dialogRef){
				var ventana = dialogRef.getModalBody();
				ventana.find(".selectpicker").selectpicker();
				ventana.find("#slListaSuscriptoresD").on("change", function(){
					var idLista = $(this).val();
					var opcion = $("option:selected", this).attr("data-tipo");
					var label_text = ventana.find(".textoRegistro").text();
					if( opcion == "P" ){
						ventana.find(".textoRegistro").text( label_text.replace(label_text, "¿Registrarlo(s) como Prospecto(s) ?") );
						ventana.find(".crm").show("slow");
						if( ventana.find('input[name="registar_gp_l"]:checked').val() == 1 ){
							ventana.find(".dvRegistroFP-L").show("slow");
						}
						else{
							ventana.find(".dvRegistroFP-L").hide("slow");
						}
					}
					else if( opcion == "C" ){
						ventana.find(".textoRegistro").text( label_text.replace(label_text, "¿Registrarlo(s) como Cliente(s) ? ") );
						ventana.find(".crm").show("slow");
						if( ventana.find('input[name="registar_gp_l"]:checked').val() == 1 ){
							ventana.find(".dvRegistroFP-L").show("slow");
						}
						else{
							ventana.find(".dvRegistroFP-L").hide("slow");
						}
					}
					else{
						ventana.find(".crm").hide("slow");
						ventana.find(".dvRegistroFP-L").hide("slow");
					}
					var ruta = "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresFiltroListasDisponibles', array("idL")); ?>";
					ruta = ruta.replace("idL", idLista);
					$.get(
						ruta,
						function(data){
							$("#secuencias_seguimientos").html('<option selected value=""> Seleccione una secuencia... </option>');
							if( data.length != 0 ){
								$("#secuencias_seguimientos").attr("name","secuencias_seguimientos");
								$("#secuencias_seguimientos").closest(".form-group").removeAttr("hidden");
								$("#RbtnEnvio").closest(".form-group").removeAttr("hidden");
								$.each(data, function(index, val) {
									$("#secuencias_seguimientos").append('<option value="'+index+'">'+val+'</option>');
								});
							}
							else{
								$("#secuencias_seguimientos").attr("name","secuencias_seguimientos1");
								$("#secuencias_seguimientos").closest(".form-group").attr("hidden","");
								$("#RbtnEnvio").closest(".form-group").attr("hidden","");
							}
							$("#secuencias_seguimientos").selectpicker("refresh");
						},
						"json"
					);
				});
				ventana.find('[name="registar_gp_l"]').click(function(e){
					var chRegistroGP = $(this);
					if( chRegistroGP.val() == 0 ){
						$(".dvRegistroFP-L").hide("slow");
					}
					else{
						$(".dvRegistroFP-L").show("slow");
					}
					$("#slListaSuscriptoresD").selectpicker("refresh");
				});
				var ListaOrigenMatch = <?php echo json_encode( $ListaCamposMatch); ?>;
				var ListaOCM = ListaOrigenMatch[0].matchGP;
				ventana.find("#slListaSuscriptoresD").find("option").each(function(e){
					var option = $(this);
					var tipo = option.attr("data-tipo");
					if( tipo == "P" || tipo == "C" ){
						if( ListaOCM < 3   ){
							option.attr("disabled", true);
						}
					}
				});
				ventana.find("#slListaSuscriptoresD").selectpicker("refresh");
			},
		});
	}
	function agregarProducto(id){
		var id = id;
		var productos = <?php echo $ProductosJSON; ?>;
		var productos2 = <?php echo $ProductosJSON2; ?>;
		if(id == "IPList"){
			Table = $(".dvRegistroFP-L").find("#tblProductosVenta");
		}
		var selectProductos = '<select class="form-control selectpicker" name="slProductos" data-live-search="true" data-selected-text-format="count" multiple>';
		$.each(productos, function(i, producto){
			if( (Table.find('tr[data-idPS="'+producto.idPS+'"]').length == 0 && producto.sin_variaciones == 1) || producto.sin_variaciones == 0 ){
				var option = '<option id="ops'+producto.idPS+'" data-variacion="'+producto.sin_variaciones+'" data-tipo="'+producto.tipo+'" value="'+producto.idPS+'" data-idPS="'+producto.idPS+'" data-precio="'+producto.precioVPS+'" data-ilimitado="'+producto.ilimitado+'" data-idVPS="'+producto.idVPS+'" data-inventario="'+producto.inventario+'"> \
					'+producto.nombre+'\
				</option>'
				selectProductos = selectProductos+option;
			}
		});
		selectProductos = selectProductos+"</select>";
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmAgregarProductos"> \
					<div class="form-group"> \
						<label for="slProductos">Productos a agregar</label> \
						'+selectProductos+' \
						<span class="text-danger" id="errslProductos"></span> \
						<div id="dvProductos" style="padding-top: 10px;"></div> \
					</div> \
					<div class="form-group variaciones" style="display: none;"> \
						<label for="slProductos">Variaciones de productos</label> \
						<select class="form-control productosvps" name="slProductosVPS" data-live-search="true" title="Seleccione una opción" data-selected-text-format="count" multiple> \
						<select> \
						<span class="text-danger" id="errslProductos"></span> \
						<div id="dvProductos" style="padding-top: 10px;"></div> \
					</div> \
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Agregar productos",
			type: BootstrapDialog.TYPE_SUCCESS,
			message: mensaje,
			draggable: true,
			cssClass: "mdAvatar color-head-modal",
			closable: false,
			buttons: [{
				id: "btnAgregar",
				label: "Agregar",
				cssClass: "btn-success btn-lg btn-block",
				action: function(dialogItself){
					var modalBody = dialogItself.getModalBody();
					var servicios = Array();
					modalBody.find('[name="slProductos"]>option[data-tipo="S"]:selected').each(function(){
						servicios.push($(this).attr("value"));
					});
					modalBody.find('[name="slProductos"]>option[data-variacion="1"]:selected').each(function(){
						if(servicios.indexOf($(this).attr("value")) == -1){
							servicios.push($(this).attr("value"));
						}
					});
					crearTabla(servicios);
					if(modalBody.find(".productosvps").val() != "" && modalBody.find(".productosvps").val() != null){
						crearTabla(modalBody.find(".productosvps").val());
					}
					programarTablaPrecios();
					var total = 0;
					Table.find(".nmTU").each(function(e){
						total = total+parseFloat( $(this).val() );
					});
					total = Math.round(total*100)/100;
					Table.find(".nmTT").val( total.toFixed(2) );
					dialogItself.close();
				}
			}],
			onshown: function(dialogItself){
				var modalBody = dialogItself.getModalBody();
				modalBody.find(".selectpicker").selectpicker();
				modalBody.find(".selectpicker").on("changed.bs.select", function(e, clickedIndex, isSelected, previousValue){
					var idP = $(this).val();
					$("#dvProductos").html("");
					$.each(
						$(this).val(),
						function(key, value){
							$("#dvProductos").append(' \
								<span class="label label-info" data-valor="'+$("#ops"+value).html()+'"> \
									'+$("#ops"+value).html()+' \
								</span> &nbsp; \
							');
						}
					);
					var option = "";
					var tipo = 0;
					$.each(productos2, function(i, producto){
						var id = String(producto.idPS);
						if(idP.indexOf(id) > -1){
							if(producto.tipo != "S" && producto.sin_variaciones == 0 ){
								option += '<optgroup label="Variaciones de '+producto.nombre+'">';
								$.each(JSON.parse(producto.variaciones), function(i, variaciones){
									var atrib = variaciones.atributos.join(" , ");
									if( Table.find('tr[data-idvps="'+variaciones.idVPS+'"]').length == 0 ){
										option += ' <option id="op'+variaciones.idVPS+'" data-subtext="[ '+atrib+' ]" value="'+variaciones.idVPS+'" data-idPS="'+variaciones.idPS+'" data-precio="'+variaciones.precio+'" data-ilimitado="'+variaciones.ilimitado+'" data-idVPS="'+variaciones.idVPS+'" data-inventario="'+variaciones.inventario+'">'+variaciones.nombre+'</option>';
									}
									else{
										option += ' <option id="op'+variaciones.idVPS+'" data-subtext="[ '+atrib+' ]" value="'+variaciones.idVPS+'" data-idPS="'+variaciones.idPS+'" data-precio="'+variaciones.precio+'" data-ilimitado="'+variaciones.ilimitado+'" data-idVPS="'+variaciones.idVPS+'" data-inventario="'+variaciones.inventario+'" disabled>'+variaciones.nombre+'</option>';
									}
								});
								option += '</optgroup>';
								tipo++;
							}
						}
					});
					if(tipo){
						modalBody.find(".variaciones").show("slow");
					}
					modalBody.find('[name="slProductosVPS"]').html(option);
					modalBody.find(".productosvps").selectpicker("refresh");
					modalBody.trigger("click");
				});
				modalBody.find(".productosvps").on("changed.bs.select", function(e, clickedIndex, isSelected, previousValue){
					modalBody.trigger("click");
				});
			}
		});
	}
	function crearTabla(valor){
		var valor = valor;
		$.each(
			valor,
			function(key, value){
				var nPA = $('tr[data-PA]').length;
				nPA = "00"+nPA;
				var option = $("select").find("#ops"+value);
				var max = "";
				var errInventario = "";
				if( parseInt(option.attr("data-ilimitado")) == 0 ){
					var valor = (option.attr("data-inventario") == 0)?1:option.attr("data-inventario");
					max = 'max="'+valor+'"';
					if(valor == 1){
						errInventario = '<span class="text-danger" id="errIn">Este producto actualmente no cuenta con inventario</span>';
					}
				}
				var precio = (option.attr("data-precio")==0)?1:option.attr("data-precio");
				var total = 1*parseFloat(precio);
				total = Math.round(total*100)/100;
				var variacion = (option.parent().attr("name") != "slProductos")?'<div class="atrib-product"><p class="pA"><strong>Variación</strong></p><p class="pA-text">'+option.attr("data-subtext")+'</p></div>':"";
				var tr = '<tr data-idPS="'+option.attr("data-idps")+'" data-idVPS="'+option.attr("data-idvps")+'" data-idVXP="0" data-PA="'+nPA+'"> \
					<td> \
						<span class="label label-warning" style="cursor: pointer;" onclick="eliminarProducto(\''+nPA+'\')"><i class="fa fa-trash"></i></span> \
						'+option.html()+' \
						<input type="hidden" name="PAproducto'+nPA+'" value="'+option.attr("data-idps")+'"> \
						<input type="hidden" name="PAvariacion'+nPA+'" value="'+option.attr("data-idvps")+'"> \
						<input type="hidden" name="PAilimitado'+nPA+'" value="'+option.attr("data-ilimitado")+'"> \
						'+variacion+'\
					</td> \
					<td class="precio"> \
						'+precio+' \
					</td> \
					<td class="hide"> \
						<input class="form-control nmPV nmPVC" data-id="'+nPA+'" type="number" name="PAcantidad'+nPA+'" value="1" min="1" '+max+'> \
						<span class="text-danger" id="errcantidad'+nPA+'"></span> \
						'+errInventario+' \
					</td> \
					<td class="hide"> \
						<input class="form-control nmPV nmPVPV" data-id="'+nPA+'" type="number" name="PAprecio_venta'+nPA+'" value="'+parseFloat(precio).toFixed(2)+'" min="0.01" step="0.01"> \
						<span class="text-danger" id="errprecio_ventaPA'+option.attr("data-idvps")+'"></span> \
					</td> \
					<td> \
						<input class="form-control nmTU" data-id="'+nPA+'" data-totalu="'+total+'" type="text" readonly value="'+total.toFixed(2)+'"> \
					</td> \
				</tr>';
				Table.find("tbody > tr:last").before(tr);
			}
		);
	}
	function programarTablaPrecios(){
		Table.find(".nmPVC").numeric({
			allowMinus: false,
			allowThouSep: false,
			allowDecSep: false
		});
		Table.find(".nmPVPV").alphanum({
			allow: ".0123456789",
			disallow: "abcdefghijklmnñopqrstuvwxyz",
			allowSpace: false,
			allowNumeric: true,
			allowUpper: false,
			allowCaseless: false,
			allowOtherCharSets: false,
			forceLower: true
		});
		Table.find(".table").find(".precio").each(function(){
			var precio = accounting.formatMoney($(this).text().trim(), {
				symbol: " ",
				precision: 2,
				decimal : ".",
				thousand: ",",
				format: "%s%v"
			});
			$(this).text(precio);
		});
		Table.find(".nmPV").blur(function(){
			var input = $(this);
			var nInput = $(this).attr("data-id");
			var precioVenta = Table.find('.nmPVPV[data-id="'+nInput+'"]').val();
			var totalUnitario = parseFloat(precioVenta);
			Table.find('.nmPVPV[data-id="'+nInput+'"]').val(totalUnitario.toFixed(2));
		});
		Table.find(".nmPV").off("input").on("input", function(e){
			var input = $(this);
			var nInput = $(this).attr("data-id");
			var cantidad = Table.find('.nmPVC[data-id="'+nInput+'"]').val();
			var precioVenta = Table.find('.nmPVPV[data-id="'+nInput+'"]').val();
			var totalUnitario = parseInt(cantidad)*parseFloat(precioVenta);
			totalUnitario = Math.round(totalUnitario*100)/100;
			Table.find('.nmTU[data-id="'+nInput+'"]').attr("data-totalu", totalUnitario);
			totalUnitario = accounting.formatMoney(totalUnitario, {
				symbol: " ",
				precision: 2,
				decimal : ".",
				thousand: ",",
				format: "%s%v"
			});
			Table.find('.nmTU[data-id="'+nInput+'"]').val(totalUnitario);
			var total = 0;
			Table.find(".nmTU").each(function(e){
				total = total+parseFloat( $(this).attr("data-totalu") );
			});
			total = accounting.formatMoney(total, {
				symbol: " ",
				precision: 2,
				decimal : ".",
				thousand: ",",
				format: "%s%v"
			});
			Table.find(".nmTT").val( total );
		});
	}
	function eliminarProducto(idP){
		var mensajeEl = "<h2> ¿Seguro que desea eliminar? </h2>";
		var classEl = "";
		if( $("#tblProductosVenta").find("tbody tr").length == 2 ){
			mensajeEl = '<div class="alert alert-warning" role="alert"> \
				<p style="font-size: 16px;"> Debes agregar un producto extra para poder eliminar este ya que no puede quedar vacía la venta... </p> \
			</div>';
			classEl = "disabled";
		}
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmEliminar"> \
					'+mensajeEl+' \
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Eliminar producto de la venta",
			type: BootstrapDialog.TYPE_WARNING,
			message: mensaje,
			draggable: true,
			cssClass: "mdAvatar",
			buttons: [{
				id: "btnEliminar",
				label: "Eliminar",
				cssClass: "btn-warning btn-lg btn-block "+classEl,
				action: function(dialogItself){
					if( Table.find("tbody tr").length > 1 ){
						if( idP.startsWith("00") ){
							$('tr[data-pa="'+idP+'"]').remove();
						}
						else{
							Table.append('<input type="hidden" name="PEidVXP'+idP+'" value="'+idP+'">')
							$('tr[data-idvxp="'+idP+'"]').remove();
						}
						var total = 0;
						Table.find(".nmTU").each(function(e){
							total = total+parseFloat( $(this).val() );
						});
						total = Math.round(total*100)/100;
						Table.find(".nmTT").val( total.toFixed(2) );
						programarTablaPrecios();
						dialogItself.close();
					}
				}
			}]
		});
	}
	function EtiquetasSubscriptores(sub){
		var filtroBasicoFechas = $("#FiltroFechas").val();
		var estado = $("#slEstados").val();
		var etiquetas = $("#slEtiquetas").val();
		var tCorreo = $("#tipoCorreo").val();
		var fCorreo = $("#filtroCorreos").val();
		var eCorreo = $("#estadoCorreo").val();
		var filtroAvanzadoFechas = $("#filtroAvanzadoFechas").val();
		var fechaAF = ( filtroAvanzadoFechas == undefined ) ? "" : filtroAvanzadoFechas
		var opcionesFiltros = new Array();
		var jsonFiltros = {
			filtroBasicoFechas: filtroBasicoFechas,
			estado: estado,
			etiquetas: etiquetas,
			tCorreo: tCorreo,
			fCorreo: fCorreo,
			eCorreo: eCorreo,
			accion: "E",
			filtroAvanzadoFechas: fechaAF
		};
		opcionesFiltros.push(jsonFiltros);
		var filtro = JSON.stringify(opcionesFiltros);
		filtro = btoa(filtro);
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmEtiquetas" class="form-horizontal row-border"> \
					<strong> Agregar etiquetas a subscriptores </strong> \
					<p> \
						Al hacerlo se agregaran las etiquetas que selecciones a los subscriptores obtenidos mediante los filtros que haz realizado. \
					</p> \
					<br> \
					<div class="row"> \
							<div class="col-sm-12">\
								<div class="col-sm-12">\
									<div class="input-group">\
										<label class="control-label"> Seleccione Etiquetas: </label> \
									</div>\
									<div class="input-group">\
										<select class="form-control selectpicker" multiple data-live-search="true" data-selected-text-format="count" id="etiquetas1" name="etiquetas[]"> \
											<option value="0" disabled> Seleccione las etiquetas a asociar... </option> \
											<?php foreach($Etiquetas as $indice => $Etiqueta): ?> \
											<option value="<?php echo $Etiqueta->id; ?>" id="op<?php echo $Etiqueta->id; ?>"> <?php echo $Etiqueta->nombre; ?> </option> \
											<?php endforeach; ?> \
										</select> \
										<div class="input-group-btn"> <button id="btnAddEtiqueta" class="btn btn-default" type="button"> <i class="fa fa-plus"></i> </button> </div>\
										<span class="text-danger" id="erretiquetas"> </span> \
									</div>\
									<div id="dvEtiquetas1" style="padding-top: 10px;"></div> \
								</div>\
							</div>\
						</div>\
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Agregar Etiquetas",
			type: BootstrapDialog.TYPE_WARNING,
			message: mensaje,
			draggable: true,
			closeByBackdrop: false,
			cssClass: "mdAvatar",
			buttons: [{
				id: "btnEtiquetas",
				label: "Aplicar etiquetas",
				cssClass: "btn-success btn-lg btn-block ",
				action: function(dialogItself){
					NProgress.start();
					$("#btnEtiquetas").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Asignando etiquetas...');
					var url = "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresFiltroDescargarImportar', array($ListaEmail->id, "sub")); ?>";
					url = url.replace("sub", filtro);
					$.post(
						url,
						$("#frmEtiquetas").serialize(),
						function(data){
							NProgress.done();
							$("#btnEtiquetas").prop("disabled", false).html("Aplicar etiquetas");
							if(data.success){
								new PNotify({ title: "Felicidades!", text: data.mensaje, type: "success" });
								dialogItself.close();
								tabla.ajax.reload(null, false);
							}
							else{
								if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
								$.each(data.errMensajes, function(key, value){ if(value != ''){ $("#err"+key).html(value); } else{ $("#err"+key).html(""); } });
							}
						},
						"json"
					);
				}
			}],
			onshown: function(dialogRef){
				var ventana = dialogRef.getModalBody();
				ventana.find(".selectpicker").selectpicker();
				ventana.find("#etiquetas1").on("changed.bs.select", function(e){
					var n = parseInt($(this).attr("id").replace("etiquetas", ""));
					$("#dvEtiquetas"+n).html("");
					if( $(this).val() ){
						$.each(
							$(this).val(),
							function(key, value){
								$("#dvEtiquetas"+n).append(' \
									<span class="label label-info" data-valor="'+$("#op"+value).html()+'"> \
										'+$("#op"+value).html()+' \
									</span> &nbsp; \
								');
							}
						);
						var info = $("#etiquetas"+n+", #hdnLid").serialize();
					}
					else{
						var info = $("#hdnLid").serialize();
					}
					cargarSecuencias(info, n);
				});
				ventana.find("#btnAddEtiqueta").on("click", function(e){
					var mensaje = '<div class="row"> \
							<div class="col-sm-12">\
								<div class="col-sm-12">\
									<div class="input-group">\
										<input type="text" placeholder="Agregar etiqueta..." class="form-control" id="txtEtiqueta">\
										<div class="input-group-btn"> <button id="btnTxtEtiqueta" class="btn btn-default" type="button"> <i class="fa fa-plus"></i> </button> </div>\
									</div>\
									<span class="text-danger" id="errcampo"> </span>\
									<div class="alert alert-warning" role="alert" style="margin-top: 10px;">\
										<strong>IMPORTANTE:</strong> Los campos tienen un limite de 40 caracteres y no pueden llevar caracteres especiales (¡#?)\
										<br>\
									</div>\
								</div>\
							</div>\
						</div>';
					BootstrapDialog.show({
					title: "Agregar Nueva Etiqueta (Opcional)",
					type: BootstrapDialog.TYPE_DANGER,
					message: mensaje,
					draggable: true,
					closeByBackdrop: false,
					cssClass: "ModalEtiqueta color-head-modal mdAvatar",
					onshown: function(dialogItself){
						$("body").addClass("modal-open");
						$("#btnTxtEtiqueta").click(function(){
							var nombre_etiqueta = $("#txtEtiqueta").val();
							$.isLoading({ text: "Cargando..." }); NProgress.start();
							$.post(
								"<?php echo URL::route('SysWebEmailMarketingEtiquetasAgregar'); ?>",
								{etiqueta:$("#txtEtiqueta").val()},
								function(data){
									if(data.success){
									var OpEtiquetas= $('#etiquetas1').val();
										if(OpEtiquetas != null ){
											OpEtiquetas.push(data.Etiqueta.id);
										}
										else{
											OpEtiquetas = data.Etiqueta.id;
										}
										$("#etiquetas1").append($("<option></option>").attr("value", data.Etiqueta.id).text(data.Etiqueta.nombre).attr("id", "op"+data.Etiqueta.id));
										$('.selectpicker').selectpicker('val',OpEtiquetas);
										$("#etiquetas1").selectpicker("refresh");
										dialogItself.close();
										new PNotify({ title: "Realizado", text: "Etiqueta creada con Exito.", type: "success" });
										data.Etiqueta.nombre,
										$("#dvEtiquetas1").append(' \
											<span class="label label-info" data-valor="'+data.Etiqueta.nombre+'"> \
												'+data.Etiqueta.nombre+' \
											</span> &nbsp; \
										');
									}
									else{
										if(data.mensaje != ""){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
										$.each(data.errMensajes, function(key, value){ if(value != ''){ $("#err"+key).html(value); } else{ $("#err"+key).html(""); } });
									}
									$("#txtEtiqueta").val("");
								},
								"json"
							);
							$(".tooltips").tooltip();
							$.isLoading("hide"); NProgress.done();
						});
					},
					onhidden: function(dialogItself){
					$("body").removeClass("modal-open");
					}
					});
				});
				ventana.find(".form-group").css("margin-bottom", "0px");
				ventana.closest(".modal-body").attr("style", "padding-bottom: 1px !important");
			}
		});
	}
	function cargarSecuencias(info, select){
		var info = info;
		var select = select;
		$.post(
			"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVerificarEtiquetas'); ?>",
			info,
			function(data){
				$("#secuencias_seguimientos"+select).html('<option value="" selected>Seleccione una secuencia...</option>');
				$.each(
					data,
					function(key, value){
						$("#secuencias_seguimientos"+select).append('<option value="'+value.id+'">'+value.posicion+' &#60;'+value.asunto+'&#62;</option>');
					}
				);
				$("#secuencias_seguimientos"+select).selectpicker("refresh");
			},
			"json"
		);
	}
</script>
<?php $__env->stopSection(); ?>

<?php $__env->startSection('JSOr'); ?>
$("#FiltroFechas").daterangepicker({
	"ranges": {
		"Hoy": [moment(), moment()],
		"Ayer": [moment().subtract(1, "days"), moment().subtract(1, "days")],
		"Últimos 7 días": [moment().subtract(6, "days"), moment()],
		"Últimos 30 días": [moment().subtract(29, "days"), moment()],
		"Este mes": [moment().startOf("month"), moment().endOf("month")],
		"Último mes": [moment().subtract(1, "month").startOf("month"), moment().subtract(1, "month").endOf("month")]
	},
	"alwaysShowCalendars": true,
	locale: {
		format: "DD/MM/YYYY"
	},
	autoUpdateInput: false,
	"startDate": moment(),
	"endDate": moment()
},function(start, end, label){
	console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')");
});
$("#FiltroFechasAvanzado").daterangepicker({
	"opens": "left",
	"ranges": {
		"Hoy": [moment(), moment()],
		"Ayer": [moment().subtract(1, "days"), moment().subtract(1, "days")],
		"Últimos 7 días": [moment().subtract(6, "days"), moment()],
		"Últimos 30 días": [moment().subtract(29, "days"), moment()],
		"Este mes": [moment().startOf("month"), moment().endOf("month")],
		"Último mes": [moment().subtract(1, "month").startOf("month"), moment().subtract(1, "month").endOf("month")]
	},
	"alwaysShowCalendars": true,
	locale: {
		format: "DD/MM/YYYY"
	},
	autoUpdateInput: false,
	"startDate": moment(),
	"endDate": moment()
},function(start, end, label){
	console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')");
});
$("#FiltroFechas, #FiltroFechasAvanzado").on("apply.daterangepicker", function(ev, picker){ $(this).val(picker.startDate.format("DD/MM/YYYY") + " - " + picker.endDate.format("DD/MM/YYYY")); });
$("#FiltroFechas, #FiltroFechasAvanzado").on("cancel.daterangepicker", function(ev, picker){ $(this).val(""); });
$("#frmFiltroFechas").submit(function(e){
	e.preventDefault();
	tabla.ajax.reload(null, false);
});
$("#frmFiltroCS").submit(function(e){
	e.preventDefault();
	if( $(this).valid() ){
		tabla.ajax.reload(null, false);
	}
});
$("#btnLimpiar").click(function(e){
	e.preventDefault();
	$("#FiltroFechas").val("");
	tabla.ajax.reload(null, false);
});
$("#btnLimpiarFiltroCS").click(function(e){
	e.preventDefault();
	$("#tipoCorreo").val("");
	$("#filtroCorreos").html("");
	$("#estadoCorreo").val("");
	$("#FiltroFechasAvanzado").val("");
	$("#tipoCorreo").selectpicker("refresh");
	$("#filtroCorreos").selectpicker("refresh");
	$("#estadoCorreo").selectpicker("refresh");
	tabla.ajax.reload(null, false);
});
$.fn.DataTable.ext.pager.numbers_length = 5;
tabla = $("#tblSuscriptores").DataTable({
	"processing": true,
	"serverSide": true,
	"ordering": false,
	<!-- preDrawCallback: function (settings) { $.isLoading("hide"); }, -->
	"ajax": {
		url: "<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresVer', array($ListaEmail->id)); ?>",
		data: function(d){
			d.filtrofechas = $("#FiltroFechas").val();
			d.estado = $("#slEstados").val();
			if( $("#chEtiquetas").is(":checked") ){
				d.etiquetas = $("#slEtiquetas").val();
			}
			d.t_correo = $("#tipoCorreo").val();
			d.f_correo = $("#filtroCorreos").val();
			d.e_correo = $("#estadoCorreo").val();
			d.filtrofechas_avanzado = $("#FiltroFechasAvanzado").val();
		}
	},
	columns: [
		{data: null, defaultContent: "", "searchable": false, "orderable": false},
		{data: "suscriptor", name: "suscriptor", "searchable": false, "orderable": false},
		{data: "acciones", name: "acciones", "searchable": false, "orderable": false, "class": "text-center"},
		{data: "correo_electronico", name: "correo_electronico", "visible": false, "orderable": false},
		{data: "fuente_subscripcion", name: "fuente_subscripcion", "visible": false, "orderable": false},
		{data: "fecha_creacion", name: "fecha_creacion", "visible": false, "orderable": false}
	],
	"language": {
		"url": "<?php echo asset('DataTables/Spanish.json'); ?>",
		select: {
			rows: {
				_: "Tienes seleccionada %d filas",
				0: "De clic sobre la fila para seleccionarla",
				1: "Solo tiene 1 fila seleccionada"
			}
		}
	},
	"fnDrawCallback": function( oSettings ) {
		$(".tooltips").tooltip();
		$(".table-responsive").find("[title]").tooltip();
		var seleccionados = tabla.rows({ selected: true }).count();
		if( seleccionados > 0 ){
			$("#btnEliminarSeleccionados").show();
			$("#btnEliminarSeleccionados2").show();
		}
	},
	autoWidth: false,
	responsive: {
		"details": {
			"type": "column",
			"target": 0
		}
	},
	columnDefs: [{
		"data": null,
		"defaultContent": "",
		"className": "control",
		"orderable": false,
		"width": "9%",
		"targets": 0
	}],
	dom: "<'row'<'col-sm-3'Bl><'col-sm-4'f><'col-sm-5'p>>" +
		"<'row'<'col-sm-12'tr>>" +
	"<'row'<'col-sm-5'i><'col-sm-7'p>>",
	select: {
		style: "multi",
		selector: "td:not(.control)"
	},
	initComplete: function(){
		var input = $("#tblSuscriptores_filter input").unbind();
		$("#tblSuscriptores_filter").html('');
		var self = this.api(),
		$searchButton = $('<button class="btn btn-primary tooltips" style="margin-left: 5px;" data-toggle="tooltip" data-original-title="Buscar">').html('<i class="fa fa-search"></i>').click(function(){
			self.search(input.val().trim()).draw();
		});
		divInputGroup = $('<div class="input-group div-groupinput">'+
			'<div class="input-group-btn div-groupbutton">'+
			'</div>'+
		'</div>');
		$("#tblSuscriptores_filter").append(divInputGroup);
		$(".div-groupinput").prepend(input);
		$(".div-groupbutton").append($searchButton);
		$("body").tooltip({selector: "[data-toggle='tooltip']"});
		$("input[type=search]").attr("placeholder", "Buscar...");
	},
	buttons: [
		{
			text: "<i class='fa fa-check-square-o' data-toggle='tooltip' data-original-title='Seleccionar todos los elementos'> </i>",
			action: function(){
				tabla.rows().select();
			},
			titleAttr: "Seleccionar todos los elementos"
		},
		{
			text: "<i class='fa fa-square-o' data-toggle='tooltip' data-original-title='Deseleccionar'> </i>",
			action: function(){
				tabla.rows().deselect();
			},
			titleAttr: "Deseleccionar todos los elementos seleccionados"
		}
	],
	<?php if( isset($_GET['correo']) ): ?>
		<?php $correoElectronico = $_GET['correo']; ?>
	"oSearch": {"sSearch": "<?php echo $correoElectronico; ?>"},
	<?php endif; ?>
	order: [[ 1, "asc" ]]
}).on("select", function (e, dt, type, indexes){
	var seleccionados = tabla.rows({ selected: true }).count();
	if( seleccionados > 0 ){
		$("#btnEliminarSeleccionados").show();
	}
	else{
		$("#btnEliminarSeleccionados").hide();
	}
}).on("deselect", function(e, dt, type, indexes){
	var seleccionados = tabla.rows({ selected: true }).count();
	if( seleccionados > 0 ){
		$("#btnEliminarSeleccionados").show();
	}
	else{
		$("#btnEliminarSeleccionados").hide();
	}
}).on("page.dt", function(e){
	$("#btnEliminarSeleccionados").hide();
/*}).on("processing.dt", function(e, settings, processing) {
	if (processing) {
		$.isLoading();
	}
	else{
		$.isLoading("hide");
		window.scrollTo(0, 0);
	}*/
});
$("#btnEliminarSeleccionados").click(function(e){
	var mensaje = "<div class='row'> \
						<div class='col-xs-12'> \
							<form id='frmEliminar'> \
								<h2> ¿Seguro que desea eliminar los registros seleccionados? </h2> \
							</form> \
						</div> \
					</div>";
	BootstrapDialog.show({
		title: "Eliminar registro",
		type: BootstrapDialog.TYPE_DANGER,
		message: mensaje,
		draggable: true,
		closeByBackdrop: false,
		cssClass: "ModalEliminar mdAvatar",
		onshown: function(dialogItself){
			$("body").addClass("modal-open");
		},
		buttons: [{
			id: "btnEliminar",
			label: "Eliminar",
			cssClass: "btn-danger btn-block btn-lg",
			action: function(dialogItself){
				NProgress.start();
				var ids = new Array();
				$("#tblSuscriptores").find(".selected").each(function(e){ ids.push($(this).find(".hdnid").val()); });
				$("#btnEliminarSeleccionados").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Eliminando...');
				$("#btnEliminar").prop("disabled", true).html('<i class="fa fa-spinner fa-spin"></i> Eliminando...');
				var idL = <?php echo $ListaEmail->id; ?>;
				$.post(
					"<?php echo URL::route('SysWebEmailMarketingListasSubscriptoresSuscriptorEliminar'); ?>",
					{ idS: ids, idL: idL },
					function(data){
						NProgress.done();
						$("#btnEliminarSeleccionados").prop("disabled", false).html("Eliminar seleccionados").hide();
						$("#btnEliminar").prop("disabled", false).html("Eliminar");
						if(data.success){
							new PNotify({ title: "Felicidades!", text: data.mensaje, type: "success" });
							dialogItself.close();
							tabla.ajax.reload(null, false);
						}
						else{
							if(data.mensaje != ''){ new PNotify({ title: "Error", text: data.mensaje, type: "error" }); }
							$.each(data.errMensajes, function(key, value){ if(value != ''){ $("#err"+key).html(value); } else{ $("#err"+key).html(""); } });
						}
					},
					"json"
				);
			}
		}],
		onhidden: function(dialogItself){
			$("body").removeClass("modal-open");
		}
	});
});
$("#chEtiquetas").click(function(e){
	var checkbox = $(this);
	var select = $("#slEtiquetas");
	var activo = ( checkbox.is(":checked") )?false:true;
	select.prop("disabled", activo);
	select.selectpicker("refresh");
	if( activo ){
		select.selectpicker("deselectAll");
	}
});
$("#estadoCorreo").on("change", function(){
	var estado = $(this).val();
	if( estado == "E" || estado == "A" || estado == "C" || estado == "NA" ){
		$("#FiltroFechasAvanzado").prop("disabled", false);
		if( $("#FiltroFechasAvanzado").hasClass("input-disableFecha") ){
			$("#FiltroFechasAvanzado").removeClass("input-disableFecha");
		}
	}
	else{
		$("#FiltroFechasAvanzado").addClass("input-disableFecha");
		$("#FiltroFechasAvanzado").prop("disabled", true);
		$("#FiltroFechasAvanzado").val("");
	}
});
$(document).ready(function(){
	var MensajeCargaMasiva = <?php echo $MensajeCargaMasiva; ?>

	var mensajeCargaM =  ( MensajeCargaMasiva > 0 ) ? true:false;
	if( mensajeCargaM ){
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmConfirmar"> \
					<div class="alert alert-info" role="alert" style="margin-bottom: 0px;margin-top: 13px;"> \
						<h4> Tienes una carga masiva de subscriptores en proceso, cuando la carga finalice se te estará compartiendo a tu correo asociado a la cuenta el reporte de los resultados de la cantidad de subscriptores agreados y en un archivo zip encontrarás los correos que no pasaron la validación y el motivo.</h4> \
					</div> \
					<div  style="padding-left: 0;padding-top: 17px;"> \
						<label> \
							<input type="checkbox" value="0" id="rdAcuerdo" name="rdAcuerdo"> \
							<span class="custom-checkbox"></span> Confirmo que leí las indicaciones del texto en el recuadro azul. \
						</label> \
					</div>  \
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Confirmación de carga de subscriptores.",
			type: BootstrapDialog.TYPE_PRIMARY,
			message: mensaje,
			draggable: true,
			cssClass: "mdAvatar",
			buttons: [{
				id: "btnConfirmar",
				label: "Confirmar",
				cssClass: "btn-success btn-block btn-lg desactivado",
				action: function(dialogItself){
					NProgress.start();
					dialogItself.close();
					NProgress.done();
				}
			}],
			onshown: function(dialogItself){
				var modalBody = dialogItself.getModalBody();
				$("body").addClass("modal-open");
				modalBody.find('[name="rdAcuerdo"]').click(function(e){
					if(modalBody.find('[name="rdAcuerdo"]:checked').length == 1){
						$("#btnConfirmar").removeClass("desactivado");
					}
					else{
						$("#btnConfirmar").addClass("desactivado");
					}
				});
			},
			onhidden: function(dialogItself){
				$("body").removeClass("modal-open");
			}
		});
	}
	var urlActual = new URL(window.location.href);
	var riv = urlActual.searchParams.get("riv");
	if( riv != null ){
		if( riv == 1 ){
			var texto = "<h4> Subscriptores cargados correctamente a tu lista, se te estará compartiendo a tu correo asociado a la cuenta el reporte de los resultados de la cantidad de subscriptores agreados y en un archivo zip encontrarás los correos que no pasaron la validación y el motivo.</h4>"
		}
		else{
			var texto = "<h4> Todos los correos de tu archivo fueron cargados correctamente a tu lista.</h4>"
		}
		var mensaje = '<div class="row"> \
			<div class="col-xs-12"> \
				<form id="frmConfirmar"> \
					<div class="alert alert-info" role="alert" style="margin-bottom: 0px;margin-top: 13px;"> \
						'+texto+' \
					</div> \
					<div  style="padding-left: 0;padding-top: 17px;"> \
						<label> \
							<input type="checkbox" value="0" id="rdAcuerdo" name="rdAcuerdo"> \
							<span class="custom-checkbox"></span> Confirmo que leí las indicaciones del texto en el recuadro azul. \
						</label> \
					</div>  \
				</form> \
			</div> \
		</div>';
		BootstrapDialog.show({
			title: "Confirmación de carga de subscriptores.",
			type: BootstrapDialog.TYPE_PRIMARY,
			message: mensaje,
			draggable: true,
			cssClass: "mdAvatar",
			buttons: [{
				id: "btnConfirmar",
				label: "Confirmar",
				cssClass: "btn-success btn-block btn-lg desactivado",
				action: function(dialogItself){
					NProgress.start();
					dialogItself.close();
					NProgress.done();
				}
			}],
			onshown: function(dialogItself){
				var modalBody = dialogItself.getModalBody();
				$("body").addClass("modal-open");
				modalBody.find('[name="rdAcuerdo"]').click(function(e){
					if(modalBody.find('[name="rdAcuerdo"]:checked').length == 1){
						$("#btnConfirmar").removeClass("desactivado");
					}
					else{
						$("#btnConfirmar").addClass("desactivado");
					}
				});
			},
			onhidden: function(dialogItself){
				$("body").removeClass("modal-open");
			}
		});
	}

});
<?php if(Session::has('MensajeS')): ?>
new PNotify({ title: "Realizado", text: "<?php echo Session::get('MensajeS'); ?>", type: "success" });
<?php endif; ?>
<?php if(Session::has('MensajeE')): ?>
new PNotify({ title: "Realizado", text: "<?php echo Session::get('MensajeE'); ?>", type: "error" });
<?php endif; ?>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('BaseSistemaWeb', array_except(get_defined_vars(), array('__data', '__path')))->render(); ?>