}); </script> </div> </div> </div> <?php $this->endWidget(); ?> </div> <script> <?php foreach ($distribucionpl1 as $key => $distribucion) { $coordenadas = ConfigurlMapaGrandeCoordenadas::model()->with('mapa')->findAll(array('condition' => "mapa.EventoId={$distribucion->EventoId} AND mapa.FuncionId={$distribucion->FuncionesId} AND t.ZonasId={$distribucion->ZonasId} AND t.SubzonaId={$distribucion->SubzonaId}")); foreach ($coordenadas as $key => $coordenada) { $id = $coordenada->x1 . $coordenada->y1 . $coordenada->x2 . $coordenada->y2 . $coordenada->x3 . $coordenada->y3 . $coordenada->x4 . $coordenada->y4 . $coordenada->x5 . $coordenada->y5 . $coordenada->x6 . $coordenada->y6 . $coordenada->x7 . $coordenada->y7 . $coordenada->x8 . $coordenada->y8 . $coordenada->x9 . $coordenada->y9 . $coordenada->x10 . $coordenada->y10 . $coordenada->x11 . $coordenada->y11 . $coordenada->x12 . $coordenada->y12 . $coordenada->x13 . $coordenada->y13 . $coordenada->x14 . $coordenada->y14; $last_x = 0; $last_y = 0; echo "\$('map area#{$id}').attr('data-delete','1');"; if (!empty($coordenada->x2)) { echo "createLine({$coordenada->x1},{$coordenada->y1},{$coordenada->x2},{$coordenada->y2},'{$id}');"; $last_x = $coordenada->x2; $last_y = $coordenada->y2; } if (!empty($coordenada->x3)) { echo "createLine({$coordenada->x2},{$coordenada->y2},{$coordenada->x3},{$coordenada->y3},'{$id}');"; $last_x = $coordenada->x3; $last_y = $coordenada->y3; }
public function actionGetCoordPuerta() { //print_r($_GET); $id_evento = $_GET['id_evento']; $id_puerta = $_GET['id_puerta']; $id_distribucion = $_GET['id_distribucion']; $funciones = explode(",", $_GET['funciones']); $funciones = end($funciones); $data = array(); $distribucionpl1 = Distribucionpuertalevel1::model()->findAll("EventoId={$id_evento} AND IdCatPuerta={$id_puerta} AND IdDistribucionPuerta={$id_distribucion} "); foreach ($distribucionpl1 as $key => $level1) { $coordenadas = ConfigurlMapaGrandeCoordenadas::model()->with('mapa')->findAll(array('condition' => "mapa.EventoId={$id_evento} AND mapa.FuncionId={$funciones} AND t.ZonasId={$level1->ZonasId} AND t.SubzonaId={$level1->SubzonaId}")); foreach ($coordenadas as $keycoords => $coordenada) { $id = $coordenada->x1 . $coordenada->y1 . $coordenada->x2 . $coordenada->y2 . $coordenada->x3 . $coordenada->y3 . $coordenada->x4 . $coordenada->y4 . $coordenada->x5 . $coordenada->y5 . $coordenada->x6 . $coordenada->y6 . $coordenada->x7 . $coordenada->y7 . $coordenada->x8 . $coordenada->y8 . $coordenada->x9 . $coordenada->y9 . $coordenada->x10 . $coordenada->y10 . $coordenada->x11 . $coordenada->y11 . $coordenada->x12 . $coordenada->y12 . $coordenada->x13 . $coordenada->y13 . $coordenada->x14 . $coordenada->y14; if ($coordenada->x1 != "") { $coords = $coordenada->x1 . "," . $coordenada->y1 . ","; } if ($coordenada->x2 != "") { $coords .= $coordenada->x2 . "," . $coordenada->y2 . ","; } if ($coordenada->x3 != "") { $coords .= $coordenada->x3 . "," . $coordenada->y3 . ","; } if ($coordenada->x4 != "") { $coords .= $coordenada->x4 . "," . $coordenada->y4 . ","; } if ($coordenada->x5 != "") { $coords .= $coordenada->x5 . "," . $coordenada->y5 . ","; } if ($coordenada->x6 != "") { $coords .= $coordenada->x6 . "," . $coordenada->y6 . ","; } if ($coordenada->x7 != "") { $coords .= $coordenada->x7 . "," . $coordenada->y7 . ","; } if ($coordenada->x8 != "") { $coords .= $coordenada->x8 . "," . $coordenada->y8 . ","; } if ($coordenada->x9 != "") { $coords .= $coordenada->x9 . "," . $coordenada->y9 . ","; } if ($coordenada->x10 != "") { $coords .= $coordenada->x10 . "," . $coordenada->y10 . ","; } if ($coordenada->x11 != "") { $coords .= $coordenada->x11 . "," . $coordenada->y11 . ","; } if ($coordenada->x12 != "") { $coords .= $coordenada->x12 . "," . $coordenada->y12 . ","; } if ($coordenada->x13 != "") { $coords .= $coordenada->x13 . "," . $coordenada->y13 . ","; } if ($coordenada->x14 != "") { $coords .= $coordenada->x14 . "," . $coordenada->y14 . ","; } $data[$key]['id'] = $id; $data[$key]['coords'] = substr($coords, 0, -1); } } echo json_encode($data); }
public function eliminarDistribucion() { $identificador = array('EventoId' => $this->EventoId); $nfunciones = Funciones::model()->countByAttributes($identificador); if ($nfunciones > 1) { // Si no se esta tratando de eliminar la unica funcion. $identHijos = array('EventoId' => $this->EventoId, 'FuncionesId' => $this->FuncionesId); $this->deleteConfpvfuncion(); Zonas::model()->deleteAllByAttributes($identHijos); Subzona::model()->deleteAllByAttributes($identHijos); Filas::model()->deleteAllByAttributes($identHijos); Lugares::model()->deleteAllByAttributes($identHijos); $mapagrande = ConfigurlFuncionesMapaGrande::model()->findByAttributes(array('EventoId' => $this->EventoId, 'FuncionId' => $this->FuncionesId)); if (is_object($mapagrande)) { // Si tiene un mapa grande se eliminan primero sus coordenadas para que no de restriccion de llaves foraneas ConfigurlMapaGrandeCoordenadas::model()->deleteAllByAttributes(array('configurl_funcion_mapa_grande_id' => $mapagrande->id)); $mapagrande->delete(); } $this->ForoMapIntId = 0; $this->save(); return true; } else { return false; } }
public function actionGuardarCoordenadasMapaGrande() { if (Yii::app()->request->isAjaxRequest) { if (isset($_POST)) { $zonaId = $_POST['zona']; $subzonaId = $_POST['subzona']; $eventoId = $_POST['eventoId']; $funcionId = $_POST['funcionId']; $escenario = $_POST['escenario']; $query = "eventoId={$eventoId} AND FuncionId={$funcionId}"; if ($escenario == "todas") { $query = "eventoId={$eventoId}"; $configUrlMapaGrande = ConfigurlFuncionesMapaGrande::model()->findAll($query); foreach ($configUrlMapaGrande as $key => $mapaGrande) { $coordenadasMapaGrande = ConfigurlMapaGrandeCoordenadas::model()->find("configurl_funcion_mapa_grande_id={$mapaGrande->id} AND ZonasId={$zonaId} AND SubzonaId={$subzonaId}"); if (empty($coordenadasMapaGrande)) { $nuevaCoordenada = new ConfigurlMapaGrandeCoordenadas(); $nuevaCoordenada->configurl_funcion_mapa_grande_id = $mapaGrande->id; $nuevaCoordenada->ZonasId = $zonaId; $nuevaCoordenada->SubzonaId = $subzonaId; $nuevaCoordenada->save(false); } } } else { $configUrlMapaGrande = ConfigurlFuncionesMapaGrande::model()->find($query); $coordenadasMapaGrande = ConfigurlMapaGrandeCoordenadas::model()->find("configurl_funcion_mapa_grande_id={$configUrlMapaGrande->id} AND ZonasId={$zonaId} AND SubzonaId={$subzonaId}"); if (empty($coordenadasMapaGrande)) { $nuevaCoordenada = new ConfigurlMapaGrandeCoordenadas(); $nuevaCoordenada->configurl_funcion_mapa_grande_id = $configUrlMapaGrande->id; $nuevaCoordenada->ZonasId = $zonaId; $nuevaCoordenada->SubzonaId = $subzonaId; $nuevaCoordenada->save(false); } } $mapa_grande = MapaGrande::model()->findAll($query); foreach ($mapa_grande as $key => $mapa) { $coords = array(); for ($i = 1; $i < 15; $i++) { $coords['x' . $i] = empty($_POST['x' . $i]) ? null : $_POST['x' . $i]; $coords['y' . $i] = empty($_POST['y' . $i]) ? null : $_POST['y' . $i]; } $coordenada = Yii::app()->db->createCommand()->update('configurl_mapa_grande_coordenadas', $coords, 'configurl_funcion_mapa_grande_id= :id AND ZonasId=:ZonasId AND SubzonaId=:SubzonaId', array(':id' => $mapa->id, ':ZonasId' => $zonaId, 'SubzonaId' => $subzonaId)); } echo json_encode(array('update' => true)); } } }
public function beforeDelete() { //Antes de eliminar, elimina todas sus coordenadas ConfigurlMapaGrandeCoordenadas::model()->deleteAllByAttributes(array('configurl_funcion_mapa_grande_id' => $this->id)); return parent::beforeDelete(); }
static function removerAsignacion($EventoId, $FuncionesId) { //Elimina todas las zonas, subzonas, filas, lugares de la funcion que se le indique $identificador = compact('EventoId', 'FuncionesId'); $transaction = Yii::app()->db->beginTransaction(); Subzona::model()->deleteAllByAttributes($identificador); Filas::model()->deleteAllByAttributes($identificador); Lugares::model()->deleteAllByAttributes($identificador); Zonaslevel1::model()->deleteAllByAttributes($identificador); Zonastipo::model()->deleteAllByAttributes($identificador); Zonastipolevel1::model()->deleteAllByAttributes($identificador); $mapagrande = ConfigurlFuncionesMapaGrande::model()->findByAttributes(array('EventoId' => $EventoId, 'FuncionId' => $FuncionesId)); if (is_object($mapagrande)) { // Si tiene un mapa grande se eliminan primero sus coordenadas para que no de restriccion de llaves foraneas ConfigurlMapaGrandeCoordenadas::model()->deleteAllByAttributes(array('configurl_funcion_mapa_grande_id' => $mapagrande->id)); $mapagrande->delete(); } if (Zonas::model()->deleteAllByAttributes($identificador)) { $funcion = Funciones::model()->findByPk($identificador); $funcion->ForoId = 0; $funcion->ForoMapIntId = 0; $transaction->commit(); } else { $transaction->rollback(); } return Zonas::model()->countByAttributes($identificador) == 0; }