cambios campania - actualizacion edicion

parent e1fb0e79
<div class="modal-body">
<div class="card card-custom">
<div class="card-header">
<h3 class="card-title">
</h3>
{%if contenido is not null%}
<div class="modal-body">
<div class="card card-custom">
<div class="card-header">
<h3 class="card-title">
</h3>
</div>
<!--begin::Form-->
<form class="form">
<div class="card-body">
<div class="form-group">
{%include 'backend_content/includes/messagesEditar.html.twig'%}
</div>
<div class="form-group form-group-last">
</div>
<div class="form-group">
<label>Sección</label>
<select id="generador-contenido-selector-seccionEditar" class="form-control">
<option value="default">--Seleccione una sección--</option>
{%for seccion in secciones%}
<option value="{{seccion.getSecId()}}" {%if seccion.getSecId() == contenido.getSecId()%} selected {%endif%}>{{seccion.getSecNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione una seccion para el contenido.</span>
</div>
<div class="form-group">
<label>Tipo</label>
<select id="generador-contenido-selector-tipoEditar" class="form-control">
<option value="default">--Seleccione un tipo--</option>
{%for tipo in tipos%}
<option value="{{tipo.getTipId()}}" {%if tipo.getTipId() == contenido.getCcoTipo()%} selected {%endif%}>{{tipo.getTipNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione el tipo de contenido a generar.</span>
</div>
<div class="form-group">
<label>Entorno</label>
<select id="generador-contenido-selector-disposicion-entornoEditar" class="form-control">
<option value="default">--Seleccione un entorno--</option>
{%for disposicionEntorno in disposicionesEntornos%}
<option value="{{disposicionEntorno.getDisId()}}" {%if disposicionEntorno.getDisId() == contenido.getDisId() %} selected {%endif%}>{{disposicionEntorno.getDisNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione el entorno donde se desplegará el contenido.</span>
</div>
<div id="filaContainerEditar" class="form-group" style="display:block">
<label>Filas</label>
<div id="filaProcessContainerEditar">
{% if countFilas > 0 %}
{%include 'backend_content/includes/filaSelectorEditar.html.twig'%}
{% else %}
{%include 'backend_content/includes/crearFilaEditar.html.twig'%}
{% endif %}
</div>
</div>
<!--begin::Form-->
<form class="form">
<div class="card-body">
<div class="form-group">
{%include 'backend_content/includes/messagesEditar.html.twig'%}
</div>
<div class="form-group form-group-last">
<div id="columnContainerEditar" style="display: {%if countFilas > 0 %} block {%else%} none {%endif%}">
<div class="form-group">
<label>Dispocición Columnas</label>
<select id="generador-contenido-selector-disposicion-entorno-columnasEditar" class="form-control">
<option value="default">--Seleccione una disposición--</option>
{%for disposicionColumnaFila in disposicionesColumnasFilas%}
<option value="{{disposicionColumnaFila.getDcoId()}}" {%if disposicionColumnaFila.getDcoId() == contenido.getDcoId()%} selected {% endif %}>{{disposicionColumnaFila.getDcoNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione una disposición para las columna de la fila.</span>
</div>
<div class="form-group">
<label>Columna</label>
<div id="columnaProcessContainerEditar">
{%include 'backend_content/includes/columnaSelectorEditar.html.twig'%}
</div>
<div class="form-group">
<label>Sección</label>
<select id="generador-contenido-selector-seccionEditar" class="form-control">
<option value="default">--Seleccione una sección--</option>
{%for seccion in secciones%}
<option value="{{seccion.getSecId()}}" {%if seccion.getSecId() == contenido.getSeccion().getSecId()%} selected {%endif%}>{{seccion.getSecNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione una seccion para el contenido.</span>
<span class="form-text text-muted">Seleccione la columna donde desea desplegar el contenido.</span>
</div>
<div class="form-group">
{%if contenido.getCcoTipo() == 1%}
<div id="text-content-containerEditar" style="display:block">
<label for="exampleTextarea">Contenido</label>
<textarea id="generador-contenido-caja-textoEditar" class="form-control" rows="10">{{contenido.getCcoContenido()}}</textarea>
<span class="form-text text-muted">Ingrese el texto a desplegar como contenido.</span>
</div>
<div class="form-group">
<label>Tipo</label>
<select id="generador-contenido-selector-tipoEditar" class="form-control">
<option value="default">--Seleccione un tipo--</option>
{%for tipo in tipos%}
<option value="{{tipo.getTipId()}}" {%if tipo.getTipId() == contenido.getCcoTipo()%} selected {%endif%}>{{tipo.getTipNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione el tipo de contenido a generar.</span>
</div>
<div class="form-group">
<label>Entorno</label>
<select id="generador-contenido-selector-disposicion-entornoEditar" class="form-control">
<option value="default">--Seleccione un entorno--</option>
{%for disposicionEntorno in disposicionesEntornos%}
<option value="{{disposicionEntorno.getDisId()}}" {%if disposicionEntorno.getDisId() == contenido.getDisposicionEntorno().getDisId() %} disabled {%endif%}>{{disposicionEntorno.getDisNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione el entorno donde se desplegará el contenido.</span>
<div id="imagen-content-containerEditar" style="display:none">
<label for="exampleImagenarea">Contenido</label>
<input id="generador-contenido-caja-imagenEditar" type="url" class="form-control" placeholder="" value=""/>
<span class="form-text text-muted">Ingrese la url de la imagen a desplegar como contenido.</span>
</div>
<div id="filaContainerEditar" class="form-group" style="display:block">
<label>Filas</label>
<div id="filaProcessContainerEditar">
{% if countFilas > 0 %}
{%include 'backend_content/includes/filaSelectorEditar.html.twig'%}
{% else %}
{%include 'backend_content/includes/crearFilaEditar.html.twig'%}
{% endif %}
</div>
<div id="video-content-containerEditar" style="display:none">
<label for="exampleContenidoarea">Contenido</label>
<input id="generador-contenido-caja-videoEditar" type="url" class="form-control" placeholder=""/>
<span class="form-text text-muted">Ingrese la url del video.</span>
</div>
<div id="columnContainerEditar" style="display: {%if countFilas > 0 %} block {%else%} none {%endif%}">
<div class="form-group">
<label>Dispocición Columnas</label>
<select id="generador-contenido-selector-disposicion-entorno-columnasEditar" class="form-control">
<option value="default">--Seleccione una disposición--</option>
{%for disposicionColumnaFila in disposicionesColumnasFilas%}
<option value="{{disposicionColumnaFila.getDcoId()}}" {%if disposicionColumnaFila.getDcoId() == 1%} selected {% endif %}>{{disposicionColumnaFila.getDcoNombre()}}</option>
{% endfor %}
</select>
<span class="form-text text-muted">Seleccione una disposición para las columna de la fila.</span>
</div>
<div class="form-group">
<label>Columna</label>
<div id="columnaProcessContainerEditar">
{%include 'backend_content/includes/columnaSelectorEditar.html.twig'%}
</div>
<span class="form-text text-muted">Seleccione la columna donde desea desplegar el contenido.</span>
</div>
<div class="form-group">
<div id="text-content-containerEditar" style="display:block">
<label for="exampleTextarea">Contenido</label>
<textarea id="generador-contenido-caja-textoEditar" class="form-control" rows="10" value =""></textarea>
<span class="form-text text-muted">Ingrese el texto a desplegar como contenido.</span>
</div>
<div id="imagen-content-containerEditar" style="display:none">
<label for="exampleImagenarea">Contenido</label>
<input id="generador-contenido-caja-imagenEditar" type="url" class="form-control" placeholder=""/>
<span class="form-text text-muted">Ingrese la url de la imagen a desplegar como contenido.</span>
</div>
<div id="video-content-containerEditar" style="display:none">
<label for="exampleContenidoarea">Contenido</label>
<input id="generador-contenido-caja-videoEditar" type="url" class="form-control" placeholder=""/>
<span class="form-text text-muted">Ingrese la url del video.</span>
</div>
</div>
{%elseif contenido.getCcoTipo() == 2%}
<div id="text-content-containerEditar" style="display:none">
<label for="exampleTextarea">Contenido</label>
<textarea id="generador-contenido-caja-textoEditar" class="form-control" rows="10" value ="{{contenido.getCcoContenido()}}"></textarea>
<span class="form-text text-muted">Ingrese el texto a desplegar como contenido.</span>
</div>
<div id="imagen-content-containerEditar" style="display:block">
<label for="exampleImagenarea">Contenido</label>
<input id="generador-contenido-caja-imagenEditar" type="url" class="form-control" placeholder="" value="{{contenido.getCcoContenido()}}"/>
<span class="form-text text-muted">Ingrese la url de la imagen a desplegar como contenido.</span>
</div>
<div id="video-content-containerEditar" style="display:none">
<label for="exampleContenidoarea">Contenido</label>
<input id="generador-contenido-caja-videoEditar" type="url" class="form-control" placeholder=""/>
<span class="form-text text-muted">Ingrese la url del video.</span>
</div>
{%elseif contenido.getCcoTipo() == 3%}
<div id="text-content-containerEditar" style="display:none">
<label for="exampleTextarea">Contenido</label>
<textarea id="generador-contenido-caja-textoEditar" class="form-control" rows="10" value ="{{contenido.getCcoContenido()}}"></textarea>
<span class="form-text text-muted">Ingrese el texto a desplegar como contenido.</span>
</div>
<div id="imagen-content-containerEditar" style="display:none">
<label for="exampleImagenarea">Contenido</label>
<input id="generador-contenido-caja-imagenEditar" type="url" class="form-control" placeholder="" value=""/>
<span class="form-text text-muted">Ingrese la url de la imagen a desplegar como contenido.</span>
</div>
<div id="video-content-containerEditar" style="display:block">
<label for="exampleContenidoarea">Contenido</label>
<input id="generador-contenido-caja-videoEditar" type="url" class="form-control" placeholder="" value="{{contenido.getCcoContenido()}}"/>
<span class="form-text text-muted">Ingrese la url del video.</span>
</div>
{%endif%}
</div>
<div class="card-footer">
</div>
</form>
<!--end::Form-->
</div>
</div>
</div>
<div class="modal-footer">
<button id="btnCerrarGeneracionContenidoEditar" type="button" class="btn btn-light-primary font-weight-bold" data-dismiss="modal">Cerrar</button>
<button id="btnGuardarGeneracionContenidoEditar" onclick="saveContenidoJsonEditar(event)" type="button" class="btn btn-primary font-weight-bold">Guardar</button>
</div>
<div class="card-footer">
</div>
</form>
<!--end::Form-->
</div>
</div>
<div class="modal-footer">
<button id="btnCerrarGeneracionContenidoEditar" type="button" class="btn btn-light-primary font-weight-bold" data-dismiss="modal">Cerrar</button>
<button id="btnGuardarGeneracionContenidoEditar" onclick="saveContenidoJsonEditar(event, {{contenido.getCcoId()}})" type="button" class="btn btn-primary font-weight-bold">Guardar</button>
</div>
{%endif%}
......@@ -2,6 +2,6 @@
<select id="generador-contenido-selector-columna-editar" class="form-control">
<option value="default">--Seleccione una columna--</option>
{%for columna in columnas%}
<option value="{{columna.valor}}" {%if contendio.getCcoColumna() == columna.valor()%} selected {%endif%} >{{columna.nombre}}</option>
<option value="{{columna.valor}}" {%if contenido.getCcoColumna() == columna.valor%} selected {%endif%} >{{columna.nombre}}</option>
{% endfor %}
</select>
......@@ -3,7 +3,7 @@
<select id="generador-contenido-selector-fila-editar" class="form-control">
<option value="default" selected>--Seleccione una fila--</option>
{%for fila in filas%}
<option value="{{fila.getFilId()}}" {%if fila.getFilId() == contenido.getFila().getFilId()%} selected {%endif%} >Fila {{fila.getFilValor()}}</option>
<option value="{{fila.getFilId()}}" {%if fila.getFilId() == contenido.getFilId()%} selected {%endif%} >Fila {{fila.getFilValor()}}</option>
{% endfor %}
</select>
</div>
......
{%if contenido is not null%}
<div class="modal fade" id="editar-contenido-modal" data-backdrop="static" tabindex="-1" role="dialog" aria-labelledby="staticBackdrop" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-xl" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Generar Contenido</h5>
<h5 class="modal-title" id="exampleModalLabel">Editar Contenido</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<i aria-hidden="true" class="ki ki-close"></i>
</button>
......@@ -14,4 +13,3 @@
</div>
</div>
</div>
{%endif%}
......@@ -362,7 +362,57 @@
},
});
}
function generateSectionRowEditar(event) {
event.preventDefault();
var url = "{{path('campania_crear_fila_seccion_editar')}}";
var formData = new FormData();
formData.append("secId", $("#generador-contenido-selector-seccionEditar").val());
formData.append("camId", campaniaId);
$("#btnGenerarFilaEditar").prop("disabled", true);
$("#btnGenerarFilaEditar").html("Creando...");
$("#contenedor-mensaje-generar-fila-editar").html("<b>Generando nueva fila...</b>");
$.ajax
({
type: "POST",
url: url,
data: formData,
async: true,
cache: false,
contentType: false,
processData: false,
timeout: 60000,
statusCode: {
400: function (respuesta) {
console.log("ocurrio un error");
var respuestaJson = JSON.parse(respuesta.responseText);
$("#mensaje-exito-editar").hide();
$("#contenido-mensaje-editar-error").html(respuestaJson.msg);
$("#mensaje-error-editar").show();
$("#btnGenerarFilaEditar").prop("disabled", false);
$("#btnGenerarFilaEditar").html("Nueva Fila");
},
500: function (respuesta) {
console.log("ocurrio un error");
var respuestaJson = JSON.parse(respuesta.responseText);
$("#mensaje-exito-editar").hide();
$("#contenido-mensaje-editar-error").html(respuestaJson.msg);
$("#mensaje-error-editar").show();
$("#btnGenerarFilaEditar").prop("disabled", false);
$("#btnGenerarFilaEditar").html("Nueva Fila");
}
},
success: function (data) {
console.log("fila generada correctamente");
$("#mensaje-error-editar").hide();
$("#contenido-mensaje-editar-exito").html(data.msg);
$("#mensaje-exito-editar").show();
$("#btnGenerarFilaEditar").html("Nueva Fila");
updateSelectorFila(formData);
},
});
}
function showModal(event) {
event.preventDefault();
cleanModal();
......@@ -374,10 +424,45 @@
$("#mesaje-error").hide();
}
function showModalEditar(event) {
function showModalEditar(event, conId) {
event.preventDefault();
cleanModalEditar();
//TODO : LLamado a ajax para cargar contenido en modal
var url = "{{path('campania_cargar_datos_contenido')}}";
var formData = new FormData();
formData.append("conId", conId);
formData.append("camId", campaniaId);
$("#contenidoModalEditarElementoContenido").html("");
openModal('editar-contenido-modal');
$.ajax
({
type: "POST",
url: url,
data: formData,
async: true,
cache: false,
contentType: false,
processData: false,
timeout: 60000,
statusCode: {
400: function (respuesta) {
console.log("ocurrio un error");
var respuestaJson = JSON.parse(respuesta.responseText);
},
500: function (respuesta) {
console.log("ocurrio un error");
var respuestaJson = JSON.parse(respuesta.responseText);
}
},
success: function (data) {
console.log("mostrando modal editar contenido");
$("#contenidoModalEditarElementoContenido").html(data);
$("#contenidoModalEditarElementoContenido").show();
//contenidoModalEditarElementoContenido
}
});
//openModal('editar-contenido-modal');
}
......@@ -409,8 +494,9 @@
});
}
function updateSelectorFilaEditar(formData) {
var url = "{{path('campania_recargar_fila_selector_editar')}}";
var url = "{{path('campania_recargar_fila_selector')}}";
$.ajax
({
type: "POST",
......@@ -451,7 +537,7 @@
}
function updateSelectorColumnaEditar(formData) {
var url = "{{path('campania_recargar_columna_selector_editar')}}";
var url = "{{path('campania_recargar_columna_selector')}}";
$("#generador-contenido-selector-columna-editar").hide();
$("#mensaje-carga-selector-columna-editar").show();
$.ajax
......@@ -521,8 +607,8 @@
lastIndex = data.contenidoId;
var valorFila = data.filaValor;
json.id = lastIndex;
var actionColumns = '\n\<a id="edit_'+lastIndex+'" href="" onclick="showModalEditar(event,25)" class="navi-link"><span class="btn btn-icon btn-light btn-hover-primary btn-sm"><i class="fa fa-lg fa-edit"></i></span></a>\n\
<a id="delete_' + lastIndex + '" href="" onclick="eliminarContenido(event,' + lastIndex + ', ' + $("#generador-contenido-selector-fila-editar").val() + ')" class="navi-link">\n\
var actionColumns = '\n\<a id="edit_'+lastIndex+'" href="" onclick="showModalEditar(event,'+lastIndex+')" class="navi-link"><span class="btn btn-icon btn-light btn-hover-primary btn-sm"><i class="fa fa-lg fa-edit"></i></span></a>\n\
<a id="delete_' + lastIndex + '" href="" onclick="eliminarContenido(event,' + lastIndex + ')" class="navi-link">\n\
<span class="btn btn-icon btn-light btn-hover-primary btn-sm">\n\
<i class="fa fa-lg fa-trash"></i>\n\
</span>\n\
......@@ -583,8 +669,8 @@
formData.append("contenidoId", conId );
formData.append("disposicionId", $("#generador-contenido-selector-disposicion-entorno-columnasEditar").val());
formData.append("seccionId", $("#generador-contenido-selector-seccionEditar").val());
formData.append("filaId", $("#generador-contenido-selector-filaEditar").val());
formData.append("columna", $("#generador-contenido-selector-columnaEditar").val());
formData.append("filaId", $("#generador-contenido-selector-fila-editar").val());
formData.append("columna", $("#generador-contenido-selector-columna-editar").val());
formData.append("contenido", json.contenido);
formData.append("tipo", $("#generador-contenido-selector-tipoEditar").val());
formData.append("entorno", $("#generador-contenido-selector-disposicion-entornoEditar").val());
......@@ -626,8 +712,8 @@
lastIndex = data.contenidoId;
var valorFila = data.filaValor;
json.id = lastIndex;
var actionColumns = '\n\<a id="edit_'+lastIndex+'" href="" onclick="editarContenido(event,25)" class="navi-link"><span class="btn btn-icon btn-light btn-hover-primary btn-sm"><i class="fa fa-lg fa-edit"></i></span></a>\n\\n\
<a id="delete_' + lastIndex + '" href="" onclick="eliminarContenido(event,' + lastIndex + ', ' + $("#generador-contenido-selector-fila-editar").val() + ')" class="navi-link">\n\
var actionColumns = '\n\<a id="edit_'+lastIndex+'" href="" onclick="showModalEditar(event,'+lastIndex+')" class="navi-link"><span class="btn btn-icon btn-light btn-hover-primary btn-sm"><i class="fa fa-lg fa-edit"></i></span></a>\n\
<a id="delete_' + lastIndex + '" href="" onclick="eliminarContenido(event,' + lastIndex + ')" class="navi-link">\n\
<span class="btn btn-icon btn-light btn-hover-primary btn-sm">\n\
<i class="fa fa-lg fa-trash"></i>\n\
</span>\n\
......@@ -669,9 +755,9 @@
//Esconder modal
hideModal('generar-contenido-modal');
$("#mensaje-exito").hide();
$("#mensaje-error").hide();
hideModal('editar-contenido-modal');
$("#mensaje-exito-editar").hide();
$("#mensaje-error-editar").hide();
$("#mensaje-exito-crear-campania").show();
$("contenido-mensaje-crear-campania-exito").html("Se ha actualizado el contenido correctamente en la campaña");
$("#btnCerrarGeneracionContenidoEditar").show();
......@@ -738,15 +824,10 @@
var seccion = $("#generador-contenido-selector-seccionEditar").val();
var tipo = $("#generador-contenido-selector-tipoEditar").val();
var entorno = $("#generador-contenido-selector-disposicion-entornoEditar").val();
var fila = $("#generador-contenido-selector-filaEditar").val();
var fila = $("#generador-contenido-selector-fila-editar").val();
var disposicion_columna = $("#generador-contenido-selector-disposicion-entorno-columnasEditar").val();
var columna = $("#generador-contenido-selector-columnaEditar").val();
//var contenido_caja = $("#generador-contenido-caja").val();
//<a href="#" class="navi-link"> <span class="navi-icon">\n\
// <i class="fa fa-lg fa-edit"></i></span>\n\
// </a>\n\
var columna = $("#generador-contenido-selector-columna-editar").val();
var contenido_caja = "";
var urlDelete = "{{path('campania_eliminar_contenido')}}";
......@@ -761,7 +842,7 @@
//Generando JSON individual con los datos
tablaContenidos.row('#cam_' + conId).remove().draw(false);
tablaContenidos.row('#cont_' + conId).remove().draw(false);
deleteFromJson(conId);
......@@ -783,12 +864,12 @@
$("#btnGuardarGeneracionContenidoEditar").attr("disabled", true);
$("#btnCerrarGeneracionContenidoEditar").hide();
//Generando registro en la BD asociado a la campaña
saveContenidoBDEditar(json);
saveContenidoBDEditar(json, conId);
}
function eliminarContenido(event, conId, filId) {
function eliminarContenido(event, conId) {
event.preventDefault();
var r = confirm("Está seguro que desea eliminar este contenido de la campaña?");
if (r == true) {
......@@ -823,7 +904,7 @@
$("#mensaje-exito-crear-campania").show();
$("#mensaje-error-crear-campania").hide();
$("#contenido-mensaje-crear-campania-exito").html(data.msg);
tablaContenidos.row('#cam_' + conId).remove().draw(false);
tablaContenidos.row('#cont_' + conId).remove().draw(false);
deleteFromJson(filId);
},
});
......@@ -982,7 +1063,7 @@
console.log("cargando columnas en relacion a disposicion entorno...");
var formData = new FormData();
formData.append("dcoId", $(this).val());
updateSelectorColumna(formData);
updateSelectorColumnaEditar(formData);
});
$(document).on('change', '#generador-contenido-selector-seccionEditar', function () {
console.log("analizando tipos disponibles segun sección selecionada... ");
......@@ -992,7 +1073,7 @@
$('#generador-contenido-selector-tipoEditar').append('<option value="3">VIDEO</option>');
}
$("#filaContainerEditared").hide();
$("#filaContainerEditar").hide();
var formData = new FormData();
formData.append("secId", $(this).val());
formData.append("camId", campaniaId);
......
......@@ -36,7 +36,7 @@ class CampaniaController extends Controller {
public function generandoNuevaCampaniaAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:generandoNuevaCampaniaAction', 'mcafee/campania/index');
$user = $this->get('security.token_storage')->getToken()->getUser();
$json = json_encode(array("head" => array(), "body" => array(), "footer" => array()));
$json = json_encode(array("head" => array(), "body" => array(), "footer" => array()));
$log->debug("generando campañia a trabajar...");
$campania = new Campania();
$campania->setCamEstado(Campania::ESTADO_INACTIVO);
......@@ -64,7 +64,7 @@ class CampaniaController extends Controller {
$columnas = array();
$log->debug("campania entrante : $camId...");
$contenido = null;
if (!$camId || $camId == "none") {
$log->debug("generando campania a trabajar...");
$campania = new Campania();
......@@ -76,7 +76,7 @@ class CampaniaController extends Controller {
} else {
$log->debug("obteniendo informacion de la campania $camId");
$campania = CampaniaQuery::create()->findPk($camId);
$contenidos = CampaniaContenidoQuery::create()->filterByCamId($camId)->filterByCcoEstado(CampaniaContenido::ESTADO_ACTIVO)->filterByCcoEliminado(CampaniaContenido::ELIMINADO_FALSE)->find();
$contenidos = CampaniaContenidoQuery::create()->filterByCamId($camId)->filterByCcoEstado(CampaniaContenido::ESTADO_ACTIVO)->filterByCcoEliminado(CampaniaContenido::ELIMINADO_FALSE)->find();
}
$secciones = SeccionQuery::create()->filterBySecEstado(Seccion::ACTIVO_TRUE)->filterBySecEliminado(Seccion::ELIMINADO_FALSE)->find();
......@@ -122,8 +122,8 @@ class CampaniaController extends Controller {
* @param Request $request
* @return JsonResponse
*/
public function generarNuevaFilaAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:nuevaCampaniaAction', 'mcafee/campania/index');
public function generarNuevaFilaEditarAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:generarNuevaFilaEditarAction', 'mcafee/campania/index');
$secId = $request->get("secId", null);
$campaniaId = $request->get("camId", null);
$jResponse = new JsonResponse();
......@@ -177,7 +177,7 @@ class CampaniaController extends Controller {
return $jResponse;
}
public function updateContenidoAction(Request $request){
public function updateContenidoAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:updateContenidoAction', 'mcafee/campania/index');
$campaniaId = $request->get("campaniaId", null);
$contenidoId = $request->get("contenidoId", null);
......@@ -189,7 +189,7 @@ class CampaniaController extends Controller {
$tipo = $request->get("tipo", null);
$entorno = $request->get("entorno", null);
$jResponse = new JsonResponse();
$log->debug("campania id : $campaniaId || contenido id : $contenidoId || disposicion id : $disposicionId || seccion id : $seccionId || fila id : $filaId || columna : $columna || contenido : $contenido || tipo : $tipo || entorno : $entorno ...");
if ($campaniaId == null || $campaniaId == "") {
......@@ -239,34 +239,34 @@ class CampaniaController extends Controller {
$fila = FilaQuery::create()->findPk($filaId);
$log->debug("generando contenido nuevo asociado a la camapaña $campaniaId...");
$contenidoCampania = CampaniaContenidoQuery::create()->filterByCcoId($contenidoId)->filterByCamId($campaniaId)->findOne();
$contenidoCampania->setDisId($disposicionId);
$contenidoCampania->setCamId($campaniaId);
$contenidoCampania->setDisId($entorno);
$contenidoCampania->setDcoId($disposicionId);
$contenidoCampania->setSecId($seccionId);
$contenidoCampania->setFilId($filaId);
$contenidoCampania->setCcoContenido($contenido);
$contenidoCampania->setCcoColumna($columna);
$contenidoCampania->setCcoOrden(1);
$contenidoCampania->setCcoTipo($tipo);
$contenidoCampania->setCcoEntorno($entorno);
$contenidoCampania->save();
$this->correccionDisposicionColumnas($campaniaId, $filaId, $disposicionId);
$jResponse->setStatusCode(JsonResponse::HTTP_OK, '- UPDATE CONTENT');
$jResponse->setData(array("msg" => "Se ha actualizado el contenido correctamente para la campaña $campaniaId ", "contenidoId" => $contenidoCampania->getCcoId(), "filaValor" => $fila->getFilValor()));
return $jResponse;
}
public function showModalEditarContenidoAction(Request $request){
public function showModalEditarContenidoAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:showModalEditarContenido', 'mcafee/campania/index');
$conId = $request->get("conId",null);
$conId = $request->get("conId", null);
$camId = $request->get("camId", null);
//TODO BUSCAR CONTENIDO EN BASE DE DATIS
//TODO RENDERIZAR PAGINA Y CARGARLA EN EL MODAL
}
public function saveContenidoAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:saveContenidoAction', 'mcafee/campania/index');
$campaniaId = $request->get("campaniaId", null);
......@@ -337,9 +337,12 @@ class CampaniaController extends Controller {
$contenidoCampania->setCcoColumna($columna);
$contenidoCampania->setCcoOrden(1);
$contenidoCampania->setCcoTipo($tipo);
$contenidoCampania->setCcoEntorno($entorno);
$contenidoCampania->setCcoEstado(CampaniaContenido::ESTADO_ACTIVO);
$contenidoCampania->setCcoEliminado(CampaniaContenido::ELIMINADO_FALSE);
$contenidoCampania->save();
$this->correccionDisposicionColumnas($campaniaId, $filaId, $disposicionId);
$jResponse->setStatusCode(JsonResponse::HTTP_OK, '- NEW CONTENT');
$jResponse->setData(array("msg" => "Se ha generado el contenido correctamente para la campaña $campaniaId ", "contenidoId" => $contenidoCampania->getCcoId(), "filaValor" => $fila->getFilValor()));
......@@ -387,8 +390,8 @@ class CampaniaController extends Controller {
$jResponse->setData(array("msg" => "Debe ingresar un titulo para la campaña"));
return $jResponse;
}
$log->debug("generando la camapaña...");
$campania = CampaniaQuery::create()->findPk($campaniaId);
$campania->setTemId($templateId);
......@@ -402,81 +405,58 @@ class CampaniaController extends Controller {
$campania->setCamAdwords($campaniaAdWords);
$campania->setCamJsonEstructura($jsonContenido);
$campania->save();
$jResponse->setStatusCode(JsonResponse::HTTP_OK, '- UPDATE CAMPAIGN');
$jResponse->setData(array("msg" => "Se ha generado el contenido correctamente para la campaña $campaniaId "));
return $jResponse;
}
public function eliminarCampaniaAction(Request $request){
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:eliminarCampaniaAction', 'mcafee/campania/index');
$camId = $request->get("camId", null);
$log->debug("eliminando campaña $camId...");
$jResponse = new JsonResponse();
if($camId == "" || $camId == null){
public function eliminarCampaniaAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:eliminarCampaniaAction', 'mcafee/campania/index');
$camId = $request->get("camId", null);
$log->debug("eliminando campaña $camId...");
$jResponse = new JsonResponse();
if ($camId == "" || $camId == null) {
$log->debug("la campaña no existe...");
$jResponse->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, '- CAMPAIGN NOT');
$jResponse->setData(array("msg" => "La campaña no existe"));
return $jResponse;
}
$campania = CampaniaQuery::create()->findPk($camId);
$campania->setCamEstado(Campania::ESTADO_INACTIVO);
$campania->setCamEliminado(Campania::ELIMINADO_TRUE);
$campania->save();
$campania = CampaniaQuery::create()->findPk($camId);
$campania->setCamEstado(Campania::ESTADO_INACTIVO);
$campania->setCamEliminado(Campania::ELIMINADO_TRUE);
$campania->save();
$jResponse->setStatusCode(JsonResponse::HTTP_OK, '- DELETE CAMPAIGN');
$jResponse->setData(array("msg" => "Se ha eliminado correctamente la campaña $camId"));
return $jResponse;
}
public function listadoCampaniasAction(Request $request){
public function listadoCampaniasAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:listadoCampaniasAction', 'mcafee/campania/index');
$log->debug("mostrando campanias...");
$campanias = CampaniaQuery::create()->filterByCamEstado(Campania::ESTADO_ACTIVO)->filterByCamEliminado(Campania::ELIMINADO_FALSE)->find();
return $this->render("backend_content/pages/campanias/listadoCampanias.html.twig", array("campanias" => $campanias));
}
/**
*
* @param Request $request
* @return type
*/
public function reloadFilaSelectorAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:reloadFilaSelectorAction', 'mcafee/campania/index');
$secId = $request->get("secId", null);
$camId = $request->get("camId", null);
$filas = FilaQuery::create()->filterByFilEstado(Fila::ACTIVO_TRUE)->filterByFilEliminado(Fila::ELIMINADO_FALSE)->filterByCamId($camId)->filterBySecId($secId)->find();
$log->debug("recargando filas para la seccion secId");
return $this->render('backend_content/includes/filaSelector.html.twig', array('filas' => $filas));
}
public function reloadFilaSelectorEditarAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:reloadFilaSelectorEditarAction', 'mcafee/campania/index');
$secId = $request->get("secId", null);
$camId = $request->get("camId", null);
$filas = FilaQuery::create()->filterByFilEstado(Fila::ACTIVO_TRUE)->filterByFilEliminado(Fila::ELIMINADO_FALSE)->filterByCamId($camId)->filterBySecId($secId)->find();
$log->debug("recargando filas para la seccion secId");
return $this->render('backend_content/includes/filaSelectorEditar.html.twig', array('filas' => $filas));
}
/**
*
* @param Request $request
* @return type
*/
public function reloadColumnaSelectorAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:reloadFilaSelectorAction', 'mcafee/campania/index');
$dcoId = $request->get("dcoId", null);
$columnas = [];
switch ($dcoId) {
public function loadDataContenidoAction(Request $request){
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:loadDataContenidoAction', 'mcafee/campania/index');
$user = $this->get('security.token_storage')->getToken()->getUser();
$json = json_encode(array("head" => array(), "body" => array(), "footer" => array()));
$conId = $request->get("conId", NULL);
$camId = $request->get("camId",NULL);
$log->debug("cargando data del contenido a editar...");
$columnas = array();
$contenido = CampaniaContenidoQuery::create()->filterByCamId($camId)->findPk($conId);
$secciones = SeccionQuery::create()->filterBySecEstado(Seccion::ACTIVO_TRUE)->filterBySecEliminado(Seccion::ELIMINADO_FALSE)->find();
$disposicionesEntornos = DisposicionQuery::create()->filterByDisEstado(Disposicion::ACTIVO_TRUE)->filterByDisEliminado(Disposicion::ELIMINADO_FALSE)->find();
$disposicionesColumnasFilas = DisposicionColumnasQuery::create()->filterByDcoEstado(DisposicionColumnas::ACTIVO_TRUE)->filterByDcoEliminado(DisposicionColumnas::ACTIVO_FALSE)->find();
$filas = FilaQuery::create()->filterByFilEstado(Fila::ACTIVO_TRUE)->filterByFilEliminado(Fila::ELIMINADO_FALSE)->filterBySecId(self::DEFAULT_SEC_ID)->filterByCamId($camId)->find();
$tipos = TipoQuery::create()->filterByTipEstado(Tipo::ACTIVO_TRUE)->filterByTipEliminado(Tipo::ELIMINADO_FALSE)->filterByTipId(array(Tipo::TIPO_VIDEO), \Criteria::NOT_IN)->find();
switch ($contenido->getDcoId()) {
case 1:
for ($i = 0; $i < 1; $i++):
$columnas[] = array("nombre" => $i + 1, "valor" => $i + 1);
......@@ -524,11 +504,48 @@ class CampaniaController extends Controller {
break;
}
$log->debug("recargando columnas para la seccion secId");
return $this->render('backend_content/includes/columnaSelector.html.twig', array('columnas' => $columnas));
$countFilas = count($filas);
$log->debug("retornando...");
return $this->render('backend_content/includes/bodyEditarElementoContenido.html.twig',
array(
"contenido" => $contenido,
"secciones" => $secciones,
"tipos" => $tipos,
"disposicionesColumnasFilas" => $disposicionesColumnasFilas,
"disposicionesEntornos" => $disposicionesEntornos,
"filas" => $filas,
"tipos" => $tipos,
"columnas" => $columnas,
"countFilas" => $countFilas
));
}
public function reloadColumnaSelectorEditarAction(Request $request) {
/**
*
* @param Request $request
* @return type
*/
public function reloadFilaSelectorAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:reloadFilaSelectorAction', 'mcafee/campania/index');
$secId = $request->get("secId", null);
$camId = $request->get("camId", null);
$filas = FilaQuery::create()->filterByFilEstado(Fila::ACTIVO_TRUE)->filterByFilEliminado(Fila::ELIMINADO_FALSE)->filterByCamId($camId)->filterBySecId($secId)->find();
$log->debug("recargando filas para la seccion secId");
return $this->render('backend_content/includes/filaSelector.html.twig', array('filas' => $filas));
}
/**
*
* @param Request $request
* @return type
*/
public function reloadColumnaSelectorAction(Request $request) {
$log = Utiles::setLog('CampaniaBundle\Controller\CampaniaController:reloadFilaSelectorAction', 'mcafee/campania/index');
$dcoId = $request->get("dcoId", null);
$columnas = [];
......@@ -581,7 +598,25 @@ class CampaniaController extends Controller {
}
$log->debug("recargando columnas para la seccion secId");
return $this->render('backend_content/includes/columnaSelectorEditar.html.twig', array('columnas' => $columnas));
return $this->render('backend_content/includes/columnaSelector.html.twig', array('columnas' => $columnas));
}
public function correccionDisposicionColumnas($campaniaId, $filaId, $disposicionId){
//Buscando otros contenidos que posean la misma fila y actualizar la disposicion de columnas de estas.
$contenidosCampania = CampaniaContenidoQuery::create()
->filterByCamId($campaniaId)
->filterByCcoEstado(Campania::ESTADO_ACTIVO)
->filterByCcoEliminado(Campania::ELIMINADO_FALSE)
->filterByFilId($filaId)
->find();
foreach($contenidosCampania as $contenidoCampania):
$contenidoCampania->setDcoId($disposicionId);
$contenidoCampania->save();
endforeach;
}
}
......@@ -26,21 +26,17 @@ campania_crear_fila_seccion:
path: /crear/fila/seccion
defaults: { _controller: CampaniaBundle:Campania:generarNuevaFila}
campania_crear_fila_seccion_editar:
path: /crear/fila/seccion/editar
defaults: { _controller: CampaniaBundle:Campania:generarNuevaFilaEditar}
campania_recargar_fila_selector:
path: /recargar/fila/selector
defaults: { _controller: CampaniaBundle:Campania:reloadFilaSelector}
campania_recargar_fila_selector_editar:
path: /recargar/fila/selector/editar
defaults: { _controller: CampaniaBundle:Campania:reloadFilaSelectorEditar}
campania_recargar_columna_selector:
path: /recargar/columna/selector
defaults: { _controller: CampaniaBundle:Campania:reloadColumnaSelector}
campania_recargar_columna_selector_editar:
path: /recargar/columna/selector/editar
defaults: { _controller: CampaniaBundle:Campania:reloadColumnaSelectorEditar}
defaults: { _controller: CampaniaBundle:Campania:reloadColumnaSelector}
campania_save_contenido:
path: /guardar/contenido/campania
......@@ -50,6 +46,11 @@ campania_actualizar_con_contenido:
path: /actualizar/campania
defaults: { _controller: CampaniaBundle:Campania:actualizarCampania}
campania_cargar_datos_contenido:
path: /cargar/datos/contenido/campania
defaults: {_controller: CampaniaBundle:Campania:loadDataContenido}
campania_update_contenido:
path: /actualizar/contenido/campania
defaults: { _controller: CampaniaBundle:Campania:updateContenido}
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment