SVN Alba r4715 - prosistem/alba/trunk/alba/apps/principal/modules/asistencia/actions
Author: hsanchez Date: 2007-06-06 17:56:13 -0300 (Wed, 06 Jun 2007) New Revision: 4715 Modified: prosistem/alba/trunk/alba/apps/principal/modules/asistencia/actions/actions.class.php Log: Correccion del combo divisiones en asistencia cuando ingreso desde el alumno Ticket: #224 Modified: prosistem/alba/trunk/alba/apps/principal/modules/asistencia/actions/actions.class.php =================================================================== --- prosistem/alba/trunk/alba/apps/principal/modules/asistencia/actions/actions.class.php 2007-06-06 20:34:49 UTC (rev 4714) +++ prosistem/alba/trunk/alba/apps/principal/modules/asistencia/actions/actions.class.php 2007-06-06 20:56:13 UTC (rev 4715) @@ -37,14 +37,12 @@ $this->vista = $this->getRequestParameter('vista'); } - /** * Executes index action * */ public function executeIndex() { - Misc::use_helper('Misc'); //Iniciando Variables @@ -67,8 +65,8 @@ if ($this->getUser()->getAttribute('fk_ciclolectivo_id') == 0) return $this->redirect('ciclolectivo/sinciclolectivo?m=' . $this->getRequestParameter('module')); - // tomando los datos del formulario y completando variable + // tomando los datos del formulario y completando variable $ciclolectivo_id = $this->getUser()->getAttribute('fk_ciclolectivo_id'); $ciclolectivo = CiclolectivoPeer::retrieveByPK($ciclolectivo_id); @@ -81,16 +79,16 @@ $m = $aFechaActual['mon']; $y = $aFechaActual['year']; - // tomo el año de la fecha de inicio y de fin del ciclo lectivo $anio_desde = date("Y",$ciclolectivo_fecha_inicio); $anio_hasta = date("Y",$ciclolectivo_fecha_fin); - if ($this->getRequestParameter('alumno_id')) { $alumno_id = $this->getRequestParameter('alumno_id'); $a = AlumnoPeer::retrieveByPK($alumno_id); $cuenta_id = $a->getFkCuentaId(); + + //$a->getRelAlumnoDivisions() } @@ -110,47 +108,44 @@ $y = $this->getRequestParameter('ano'); } - $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id'); $criteria = new Criteria(); $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id); - $criteria->addAscendingOrderByColumn(AnioPeer::DESCRIPCION); - $criteria->addAscendingOrderByColumn(DivisionPeer::ORDEN); - $criteria->addAscendingOrderByColumn(DivisionPeer::DESCRIPCION); + + + if ($this->getRequestParameter('alumno_id')){ + $criteria->add(RelAlumnoDivisionPeer::FK_ALUMNO_ID, $alumno_id); + $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID ); + } + + $criteria->addAscendingOrderByColumn(AnioPeer::DESCRIPCION); + $criteria->addAscendingOrderByColumn(DivisionPeer::ORDEN); + $criteria->addAscendingOrderByColumn(DivisionPeer::DESCRIPCION); $divisiones = DivisionPeer::doSelectJoinAnio($criteria); // divisiones a mostrar - foreach ($divisiones as $division) { + foreach ($divisiones as $division) $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion(); - } - if ($this->getRequestParameter('division_id')) { $division_id = $this->getRequestParameter('division_id'); } else { - if ($this->getRequestParameter('alumno_id')) { - $division_id = 1; + if (count($optionsDivision) > 0){ + $aTemp = array_keys($optionsDivision); + $division_id = $aTemp[0]; } else { - if (count($optionsDivision) > 0){ - $aTemp = array_keys($optionsDivision); - $division_id = $aTemp[0]; - } else { - // Ver si se puede hacer desde el validate - $this->getRequest()->setError('Division', 'No hay Ninguna División cargada'); - $flag_error = 1; - } - } + // Ver si se puede hacer desde el validate + $this->getRequest()->setError('Division', 'No hay Ninguna División cargada'); + $flag_error = 1; + } } - if(!checkdate($m,$d,$y)) { // Ver si se puede hacer desde el validate $this->getRequest()->setError('Fecha', 'La fecha ingresada es erronea'); $flag_error = 1; } - - if($flag_error == 0) { // devuelve un intervalo de dias según vista y fecha seleccionada $aIntervalo = diasxintervalo($d, $m, $y, $vista_id); @@ -165,7 +160,6 @@ $aIntervalo = $aFechaTemp; } - // obteniendo los feriados actuales $criteria = new Criteria(); $feriados = FeriadoPeer::doSelect($criteria); @@ -173,7 +167,6 @@ $aFeriado[$feriado->getFecha()] = $feriado->getNombre(); } - // esto deberia estar hecho muy diferente guardar en un /tmp con archivo aleatorio if(file_exists(sfConfig::get('sf_upload_dir_name').'/grafico_asistencias.png')) unlink(sfConfig::get('sf_upload_dir_name').'/grafico_asistencias.png'); @@ -227,7 +220,6 @@ $flag = 0; $tot = 0; - // cantidad de fechas sin fines de semana $cantFechas = 0; foreach($aIntervalo as $fecha) {
participants (1)
-
commits@pressenter.com.ar