function generaLiga($equipos) { $this->equipos = $equipos; foreach ($equipos as $equipo) { $equipo = new Equipo($equipo); $equipo->persist(); } //Intervalo entre jornadas y fecha 1ª jornada $intervalo = new DateInterval("P7D"); $fecha = new DateTime("2014-11-2"); //Por si hay equipos impares if (count($equipos) % 2 != 0) { array_push($equipos, "extra!!"); } //Genera las jornadas de la 1ª vuelta for ($i = 0; $i < count($equipos) - 1; $i++) { //Formato fecha $fechaPartido = $fecha->format("Y-m-d"); //Una jornada por cada vuelta del for $jornadaActual = new Jornada($fechaPartido); //Suma intervalo jornadas $fecha->add($intervalo); $jornadaActual->persist(); //Coge del 1º a la mitad $locales = array_slice($equipos, 0, count($equipos) / 2); //De la mitad a los que haya $visitantes = array_reverse(array_slice($equipos, count($equipos) / 2)); for ($j = 0; $j < count($visitantes); $j++) { $partidoActual = new Partido($jornadaActual->getId(), $locales[$j], $visitantes[$j]); $partidoActual->persist(); //En la jornada i, el partido j, el local es j $liga[$i][$j]['local'] = $locales[$j]; $liga[$i][$j]['visitante'] = $visitantes[$j]; } //El 1er equipo $equipoBase = array_shift($equipos); array_unshift($equipos, array_pop($equipos)); array_unshift($equipos, $equipoBase); } //Genera las jornadas de vuelta foreach ($liga as $jornada) { $fechaPartido = $fecha->format("Y-m-d"); //Una jornada por cada vuelta del for $jornadaActual = new Jornada($fechaPartido); //Suma intervalo jornadas $fecha->add($intervalo); $jornadaActual->persist(); $jornadaVuelta = []; foreach ($jornada as $partido) { $partidoActual = new Partido($jornadaActual->getId(), $partido["visitante"], $partido['local']); $partidoActual->persist(); $partidoVuelta['local'] = $partido['visitante']; $partidoVuelta['visitante'] = $partido['local']; $jornadaVuelta[] = $partidoVuelta; } array_push($liga, $jornadaVuelta); } return $liga; }
$this->widget('zii.widgets.jui.CJuiDatePicker', array('name' => 'fecha_ingreso', 'language' => 'es', 'model' => $model, 'attribute' => 'fecha_ingreso', 'value' => $fecha_ingreso, 'options' => array('showAnim' => 'fold', 'language' => 'es', 'dateFormat' => 'dd-mm-yy', 'changeMonth' => true, 'changeYear' => true, 'yearRange' => '2000:2020'), 'htmlOptions' => array('style' => 'height:20px;width:80px;'))); ?> </div> <?php echo $form->error($model, 'fecha_ingreso'); ?> </div> <div class="span3"> <?php echo $form->labelEx($model, 'jornada_id'); ?> <div class="input-prepend"> <span class="add-on"><i class="icon-list-alt"></i></span> <?php echo $form->dropDownList($model, 'jornada_id', CHtml::listData(Jornada::model()->findAll(), 'id', 'jornada'), array('class' => 'input-medium', 'empty' => "")); ?> </div> <?php echo $form->error($model, 'jornada_id'); ?> </div> <div class="span6"> <?php echo $form->labelEx($model, 'regimen_salud_id'); ?> <div class="input-prepend"> <span class="add-on"><i class="icon-heart"></i></span> <?php echo $form->dropDownList($model, 'regimen_salud_id', CHtml::listData(RegimenSalud::model()->findAll(), 'id', 'regimen'), array('class' => 'input-xxlarge', 'empty' => "")); ?>
public function generaLiga($equipos) { $liga = new Collection(); $id_equipos = []; foreach ($equipos as $equipo) { $eq = new Equipo($equipo); $eq->persist(); array_push($id_equipos, $eq); } $jornadas = (count($id_equipos) - 1) * 2; $jornada = []; $intervalo = new DateInterval("P7D"); $fecha = new DateTime("2014-11-2"); shuffle($id_equipos); $equiposAmb = $id_equipos; array_pop($equiposAmb); $equiposRev = new ArrayObject(array_reverse($equiposAmb, false)); $itRev = $equiposRev->getIterator(); $equiposAmb = new ArrayObject($equiposAmb); $it = $equiposAmb->getIterator(); $equipoComodin = $id_equipos[count($equipos) - 1]; for ($i = 0; $i < $jornadas; $i++) { $fechaPartido = $fecha->format("Y-m-d"); $jornada = new Jornada($this->getId_liga(), $fechaPartido); $jornada->persist(); $fecha->add($intervalo); if ($i < $jornadas / 2) { for ($j = 0; $j < count($id_equipos) / 2; $j++) { //Resetemos los iteradores if (!$it->valid()) { $it->rewind(); } if (!$itRev->valid()) { $itRev->rewind(); } if ($j === 0) { if ($j % 2 === 0) { $partido = new Partido($jornada->getId_jornada(), $it->current(), $equipoComodin); } else { $partido = new Partido($jornada->getId_jornada(), $equipoComodin, $it->current()); } } else { $partido = new Partido($jornada->getId_jornada(), $it->current(), $itRev->current()); $itRev->next(); } $it->next(); $partido->persist(); $jornada->getPartidos()->add($partido); } } else { for ($j = 0; $j < count($id_equipos) / 2; $j++) { //Resetemos los iteradores if (!$it->valid()) { $it->rewind(); } if (!$itRev->valid()) { $itRev->rewind(); } if ($j === 0) { if ($j % 2 === 0) { $partido = new Partido($jornada->getId_jornada(), $equipoComodin, $it->current()); } else { $partido = new Partido($jornada->getId_jornada(), $it->current(), $equipoComodin); } } else { $partido = new Partido($jornada->getId_jornada(), $itRev->current(), $it->current()); $itRev->next(); } $it->next(); $partido->persist(); $jornada->getPartidos()->add($partido); } } $liga->add($jornada); } return $liga; }
protected function guardar_combos($CODIGO_DANE_SEDE, $TIPO_JORNADA, $GRADO, $GRUPO_CURSO) { if ($CODIGO_DANE_SEDE != "") { if ($TIPO_JORNADA != "") { $jornada = Jornada::model()->find("idjornada=" . $TIPO_JORNADA . " AND codigo_dane_sede='" . $CODIGO_DANE_SEDE . "'"); if ($jornada == null) { $newjornada = new Jornada(); $newjornada->idjornada = $TIPO_JORNADA; $newjornada->codigo_dane_sede = $CODIGO_DANE_SEDE; $newjornada->jornada = JornadaEducativa::model()->findByPk($TIPO_JORNADA)->Descripcion; $newjornada->save(); } if ($GRADO != "") { $grado = Grado::model()->find("idgrado=" . $GRADO . " AND jornada_id=" . $TIPO_JORNADA . " AND codigo_dane_sede='" . $CODIGO_DANE_SEDE . "'"); if ($grado == null) { $newgrado = new Grado(); $newgrado->jornada_id = $TIPO_JORNADA; $newgrado->codigo_dane_sede = $CODIGO_DANE_SEDE; $newgrado->idgrado = $GRADO; $newgrado->grado = GradoEducativo::model()->find("Codigo=" . $GRADO)->Descripcion; $newgrado->save(); } if ($GRUPO_CURSO != "") { $grupo = Grupo::model()->find("grado=" . $GRADO . " AND grupo_curso=" . $GRUPO_CURSO . " AND codigo_dane_sede='" . $CODIGO_DANE_SEDE . "'"); if ($grupo == null) { $newgrupo = new Grupo(); $newgrupo->grado = $GRADO; $newgrupo->codigo_dane_sede = $CODIGO_DANE_SEDE; $newgrupo->grupo_curso = $GRUPO_CURSO; $newgrupo->save(); } } } } } }
/* @var $this AlumnosController */ /* @var $model Alumnos */ $this->menu = array(array('label' => 'Crear Alumno', 'url' => array('create'))); Yii::app()->clientScript->registerScript('search', "\n\$('.search-button').click(function(){\n\t\$('.search-form').toggle();\n\treturn false;\n});\n\$('.search-form form').submit(function(){\n\t\$('#alumnos-grid').yiiGridView('update', {\n\t\tdata: \$(this).serialize()\n\t});\n\treturn false;\n});\n"); ?> <h1>Buscar Alumnos</h1> <div class="search-form" style="display:none"> <?php $this->renderPartial('_search', array('model' => $model)); ?> </div><!-- search-form --> <?php $this->widget('zii.widgets.grid.CGridView', array('id' => 'alumnos-grid', 'dataProvider' => $model->search(), 'afterAjaxUpdate' => 'reinstallDatePickerNacimiento', 'filter' => $model, 'columns' => array(array('header' => 'ID.', 'name' => 'id', 'value' => '$data->id', 'htmlOptions' => array('width' => '20')), 'nombres', 'apellidos', 'n_identificacion', array('name' => 'genero_id', 'filter' => CHtml::listData(Genero::model()->findAll(), 'id', 'genero'), 'value' => '$data[\'genero\'][\'genero\']', 'htmlOptions' => array('width' => '110')), array('name' => 'estado_civil_id', 'filter' => CHtml::listData(EstadoCivil::model()->findAll(), 'id', 'estado_civil'), 'value' => '$data[\'estadoCivil\'][\'estado_civil\']', 'htmlOptions' => array('width' => '150')), array('header' => 'Fecha de Nacimiento', 'name' => 'fecha_nacimiento', 'filter' => $this->widget('zii.widgets.jui.CJuiDatePicker', array('language' => 'es', 'model' => $model, 'attribute' => 'fecha_nacimiento', 'options' => array('showAnim' => 'fold', 'language' => 'es', 'dateFormat' => 'dd-mm-yy', 'changeMonth' => true, 'changeYear' => true, 'yearRange' => '1900:2000'), 'htmlOptions' => array('id' => 'datepicker_for_fecha_nacimiento', 'style' => 'height:20px;width:80px;'), 'defaultOptions' => array('showOn' => 'focus', 'showOtherMonths' => true, 'selectOtherMonths' => true, 'changeMonth' => true, 'changeYear' => true, 'showButtonPanel' => true)), true), 'value' => 'Yii::app()->dateformatter->format("dd-MM-yyyy",$data[\'fecha_nacimiento\']);', 'htmlOptions' => array('width' => '80')), array('name' => 'jornada_id', 'filter' => CHtml::listData(Jornada::model()->findAll(), 'id', 'jornada'), 'value' => '$data[\'jornada\'][\'jornada\']', 'htmlOptions' => array('width' => '150')), array('header' => 'Fecha de Ingreso', 'name' => 'fecha_ingreso', 'filter' => $this->widget('zii.widgets.jui.CJuiDatePicker', array('language' => 'es', 'model' => $model, 'attribute' => 'fecha_ingreso', 'options' => array('showAnim' => 'fold', 'language' => 'es', 'dateFormat' => 'dd-mm-yy', 'changeMonth' => true, 'changeYear' => true, 'yearRange' => '1900:2000'), 'htmlOptions' => array('id' => 'datepicker_for_fecha_ingreso', 'style' => 'height:20px;width:80px;'), 'defaultOptions' => array('showOn' => 'focus', 'showOtherMonths' => true, 'selectOtherMonths' => true, 'changeMonth' => true, 'changeYear' => true, 'showButtonPanel' => true)), true), 'value' => 'Yii::app()->dateformatter->format("dd-MM-yyyy",$data[\'fecha_ingreso\']);', 'htmlOptions' => array('width' => '80')), array('class' => 'CButtonColumn', 'template' => '{view}{update}')))); Yii::app()->clientScript->registerScript('re-install-date-picker', "\nfunction reinstallDatePickerNacimiento(id, data) {\n \$('#datepicker_for_fecha_nacimiento').datepicker(jQuery.extend({showMonthAfterYear:false},jQuery.datepicker.regional['es'],{'dateFormat':'dd-mm-yy'}));\n \$('#datepicker_for_fecha_ingreso').datepicker(jQuery.extend({showMonthAfterYear:false},jQuery.datepicker.regional['es'],{'dateFormat':'dd-mm-yy'}));\n}\n"); ?> <script> $(document).ready(function() { $('body').on('dblclick', '#alumnos-grid tbody tr', function(event) { var rowNum = $(this).index(), keys = $('#alumnos-grid > div.keys > span'), rowId = keys.eq(rowNum).text(); location.href = '<?php
} } } } } else { //NO REGISTRADO if (isset($_POST["formlogin"])) { include "vistas/formlogin.php"; } else { if (isset($_POST["login"])) { //INTENTO LOGIN $user = Usuario::getUsuario($_POST["user"], $_POST["pass"]); if ($user) { $_SESSION["user"] = $user; $liga = new Liga(); $liga->setJornadas(Jornada::getJornadas()); if ($liga->getJornadas()->isEmpty()) { $view = "creaLiga"; include "vistas/creaLiga.php"; } else { //Array de equipos $liga->setEquipos(Equipo::getEquipos()); $_SESSION['liga'] = $liga; $view = "menu"; include "vistas/menu.php"; } } else { $msg = "Credenciales incorrectas"; include "vistas/formlogin.php"; } } else {