public function executeMostrar() { // Inicializar variables $optionsConcepto = array(); $optionsPeriodo = array(); $optionsActividad = array(); $alumno = ""; $division = ""; $alumno_id = ""; $division_id = ""; $notaAlumno = array(); $conceptoAlumno = array(); $aAsistencia = array(); $alumno_id = $this->alumno_id; $division_id = $this->division_id; $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id'); $no_cargar = 0; if ($alumno_id) { $alumno = AlumnoPeer::retrieveByPK($alumno_id); if (!$division_id) { $c = new Criteria(); $c->add(RelAlumnoDivisionPeer::FK_ALUMNO_ID, $alumno_id); $ad = RelAlumnoDivisionPeer::doSelectOne($c); if ($ad) { $division_id = $ad->getFkDivisionId(); } else { $no_cargar = 1; } } if ($no_cargar == 0) { $division = DivisionPeer::retrieveByPK($division_id); $optionsActividad = $division->getActividadesArray(); $e = EstablecimientoPeer::retrieveByPk($establecimiento_id); $optionsConcepto = $e->getConceptosArray(); $notaAlumno = $alumno->getNotas($this->getUser()->getAttribute('fk_ciclolectivo_id')); $conceptoAlumno = $alumno->getNotasConcepto(); $c = CiclolectivoPeer::retrieveByPk($this->getUser()->getAttribute('fk_ciclolectivo_id')); $optionsPeriodo = $c->getPeriodosArray(); $aAsistencia = $alumno->getAsistenciasPorCiclolectivo($this->getUser()->getAttribute('fk_ciclolectivo_id')); } else { $this->getUser()->setFlash('notice', 'Error: el alumno no esta en ninguna división'); } } else { $this->getUser()->setFlash('notice', 'Error: no envio el alumno'); } // variables al template $this->establecimiento = EstablecimientoPeer::retrieveByPk($establecimiento_id); $this->optionsPeriodo = $optionsPeriodo; $this->optionsActividad = $optionsActividad; $this->cantOptionsActividad = count($optionsActividad); $this->alumno = $alumno; $this->division = $division; $this->optionsConcepto = $optionsConcepto; $this->cantOptionsConcepto = count($optionsConcepto); $this->notaAlumno = $notaAlumno; $this->conceptoAlumno = $conceptoAlumno; $this->aAsistencia = $aAsistencia; $this->cantOptionsAsistencia = count($aAsistencia) > 0 ? count(current($aAsistencia)) : 0; }
public function executeEdit() { $this->alumno_id = $this->getRequestParameter('aid'); $this->legajosalud = $this->getLegajosaludOrCreate(); $this->alumno = AlumnoPeer::retrieveByPk($this->alumno_id); // add javascripts $this->getResponse()->addJavascript(sfConfig::get('sf_prototype_web_dir') . '/js/prototype'); $this->getResponse()->addJavascript(sfConfig::get('sf_admin_web_dir') . '/js/collapse'); }
/** * Muestra la cuenta, los alumnos y los responsables **/ public function executeVerCompleta() { $c = new Criteria(); $c->add(CuentaPeer::ID, $this->getRequestParameter('id')); $this->cuenta = CuentaPeer::doSelectOne($c); $this->forward404Unless($this->cuenta); $c = new Criteria(); $c->add(AlumnoPeer::FK_CUENTA_ID, $this->getRequestParameter('id')); $this->aAlumno = AlumnoPeer::doSelect($c); $c = new Criteria(); $c->add(ResponsablePeer::FK_CUENTA_ID, $this->getRequestParameter('id')); $this->aResponsable = ResponsablePeer::doSelect($c); }
/** * Ir a la cuenta del alumno */ function executeIrCuenta() { if ($this->getRequestParameter('id')) { $c = new Criteria(); $c->add(RelCalendariovacunacionAlumnoPeer::ID, $this->getRequestParameter('id')); $c->addJoin(AlumnoPeer::ID, RelCalendariovacunacionAlumnoPeer::FK_ALUMNO_ID); $Alum = AlumnoPeer::doSelectOne($c); if ($Alum->getFkCuentaId()) { $this->redirect('cuenta/verCompleta?id=' . $Alum->getFkCuentaId()); } else { $this->redirect('alumno/list'); } } }
public function executeIndex(sfWebRequest $request) { $alumno_id = $request->getParameter('alumno_id'); $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id'); $c = new Criteria(); $c->add(AlumnoPeer::ID, $alumno_id); $c->add(AlumnoPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id); $this->alumno = AlumnoPeer::doSelectOne($c); $this->forward404Unless(intval($alumno_id) > 0 && $this->alumno); $saludes = $this->alumno->getAlumnoSaluds(); // Si no está el objeto creado, lo creo vacío y lo guardo. Seh...medio loco pero quería cambiar un poco la interfaz. if (empty($saludes)) { $this->alumno_salud = new AlumnoSalud(); $this->alumno_salud->setAlumno($this->alumno)->save(); $saludes = $this->alumno->getAlumnoSaluds(); } $this->datos_salud = $saludes[0]->toArray(); $this->alumno_salud = $saludes[0]; }
public function executeListarAlumnos() { $id = $this->getRequestParameter('division_id'); if (!$id) { return $this->renderText(""); } $c = new Criteria(); $c->add(RelAlumnoDivisionPeer::FK_DIVISION_ID, $id); if ($this->getRequestParameter('division_no_id')) { $not_in_query = " %s NOT IN ("; $not_in_query .= " SELECT %s FROM %s WHERE %s = %s AND %s = %s)"; $not_in_query = sprintf($not_in_query, RelAlumnoDivisionPeer::FK_ALUMNO_ID, RelAlumnoDivisionPeer::FK_ALUMNO_ID, RelAlumnoDivisionPeer::TABLE_NAME, RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID, RelAlumnoDivisionPeer::FK_DIVISION_ID, $this->getRequestParameter("division_no_id")); $c->add(AlumnoPeer::ID, $not_in_query, Criteria::CUSTOM); } $c->addJoin(AlumnoPeer::ID, RelAlumnoDivisionPeer::FK_ALUMNO_ID, Criteria::INNER_JOIN); $c->addJoin(AlumnoPeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID, Criteria::INNER_JOIN); $c->addAscendingOrderByColumn(AlumnoPeer::APELLIDO); $c->addAscendingOrderByColumn(AlumnoPeer::NOMBRE); $this->alumnos = AlumnoPeer::doSelect($c); $this->alumnos_actuales = array(); if ($this->getRequestParameter('division_no_id')) { $c = new Criteria(); $c->add(RelAlumnoDivisionPeer::FK_DIVISION_ID, $this->getRequestParameter('division_no_id')); $c->addJoin(AlumnoPeer::ID, RelAlumnoDivisionPeer::FK_ALUMNO_ID, Criteria::INNER_JOIN); $c->addJoin(AlumnoPeer::FK_TIPODOCUMENTO_ID, TipodocumentoPeer::ID, Criteria::INNER_JOIN); $c->addAscendingOrderByColumn(AlumnoPeer::APELLIDO); $c->addAscendingOrderByColumn(AlumnoPeer::NOMBRE); } $this->alumnos_actuales = AlumnoPeer::doSelect($c); }
<h1>Vacuna por alumno <?php if (isset($filters['fk_alumno_id']) && $filters['fk_alumno_id'] != '' && $filters['fk_alumno_id'] != 0) { $alumno = AlumnoPeer::retrieveByPk($filters['fk_alumno_id']); echo $alumno->getApellido() . ", " . $alumno->getNombre(); } ?> </h1>
public function getAlumno(PropelPDO $con = null) { if ($this->aAlumno === null && $this->fk_alumno_id !== null) { $c = new Criteria(AlumnoPeer::DATABASE_NAME); $c->add(AlumnoPeer::ID, $this->fk_alumno_id); $this->aAlumno = AlumnoPeer::doSelectOne($c, $con); } return $this->aAlumno; }
public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = AlumnoPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setLegajoPrefijo($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setLegajoNumero($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setNombre($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setApellidoMaterno($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setApellido($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setFechaNacimiento($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setDireccion($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setCiudad($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setCodigoPostal($arr[$keys[9]]); } if (array_key_exists($keys[10], $arr)) { $this->setFkProvinciaId($arr[$keys[10]]); } if (array_key_exists($keys[11], $arr)) { $this->setTelefono($arr[$keys[11]]); } if (array_key_exists($keys[12], $arr)) { $this->setLugarNacimiento($arr[$keys[12]]); } if (array_key_exists($keys[13], $arr)) { $this->setFkTipodocumentoId($arr[$keys[13]]); } if (array_key_exists($keys[14], $arr)) { $this->setNroDocumento($arr[$keys[14]]); } if (array_key_exists($keys[15], $arr)) { $this->setSexo($arr[$keys[15]]); } if (array_key_exists($keys[16], $arr)) { $this->setEmail($arr[$keys[16]]); } if (array_key_exists($keys[17], $arr)) { $this->setDistanciaEscuela($arr[$keys[17]]); } if (array_key_exists($keys[18], $arr)) { $this->setHermanosEscuela($arr[$keys[18]]); } if (array_key_exists($keys[19], $arr)) { $this->setHijoMaestroEscuela($arr[$keys[19]]); } if (array_key_exists($keys[20], $arr)) { $this->setFkEstablecimientoId($arr[$keys[20]]); } if (array_key_exists($keys[21], $arr)) { $this->setFkCuentaId($arr[$keys[21]]); } if (array_key_exists($keys[22], $arr)) { $this->setCertificadoMedico($arr[$keys[22]]); } if (array_key_exists($keys[23], $arr)) { $this->setActivo($arr[$keys[23]]); } if (array_key_exists($keys[24], $arr)) { $this->setFkConceptobajaId($arr[$keys[24]]); } if (array_key_exists($keys[25], $arr)) { $this->setFkPaisId($arr[$keys[25]]); } if (array_key_exists($keys[26], $arr)) { $this->setProcedencia($arr[$keys[26]]); } if (array_key_exists($keys[27], $arr)) { $this->setFkEstadoalumnoId($arr[$keys[27]]); } if (array_key_exists($keys[28], $arr)) { $this->setObservacion($arr[$keys[28]]); } if (array_key_exists($keys[29], $arr)) { $this->setEmailPadre($arr[$keys[29]]); } if (array_key_exists($keys[30], $arr)) { $this->setCelularPadre($arr[$keys[30]]); } if (array_key_exists($keys[31], $arr)) { $this->setCelularMadre($arr[$keys[31]]); } }
public static function doSelectJoinAllExceptPeriodo(Criteria $c, $con = null, $join_behavior = Criteria::LEFT_JOIN) { $c = clone $c; if ($c->getDbName() == Propel::getDefaultDB()) { $c->setDbName(self::DATABASE_NAME); } ExamenPeer::addSelectColumns($c); $startcol2 = ExamenPeer::NUM_COLUMNS - ExamenPeer::NUM_LAZY_LOAD_COLUMNS; EscalanotaPeer::addSelectColumns($c); $startcol3 = $startcol2 + (EscalanotaPeer::NUM_COLUMNS - EscalanotaPeer::NUM_LAZY_LOAD_COLUMNS); AlumnoPeer::addSelectColumns($c); $startcol4 = $startcol3 + (AlumnoPeer::NUM_COLUMNS - AlumnoPeer::NUM_LAZY_LOAD_COLUMNS); ActividadPeer::addSelectColumns($c); $startcol5 = $startcol4 + (ActividadPeer::NUM_COLUMNS - ActividadPeer::NUM_LAZY_LOAD_COLUMNS); $c->addJoin(array(ExamenPeer::FK_ESCALANOTA_ID), array(EscalanotaPeer::ID), $join_behavior); $c->addJoin(array(ExamenPeer::FK_ALUMNO_ID), array(AlumnoPeer::ID), $join_behavior); $c->addJoin(array(ExamenPeer::FK_ACTIVIDAD_ID), array(ActividadPeer::ID), $join_behavior); $stmt = BasePeer::doSelect($c, $con); $results = array(); while ($row = $stmt->fetch(PDO::FETCH_NUM)) { $key1 = ExamenPeer::getPrimaryKeyHashFromRow($row, 0); if (null !== ($obj1 = ExamenPeer::getInstanceFromPool($key1))) { } else { $omClass = ExamenPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj1 = new $cls(); $obj1->hydrate($row); ExamenPeer::addInstanceToPool($obj1, $key1); } $key2 = EscalanotaPeer::getPrimaryKeyHashFromRow($row, $startcol2); if ($key2 !== null) { $obj2 = EscalanotaPeer::getInstanceFromPool($key2); if (!$obj2) { $omClass = EscalanotaPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj2 = new $cls(); $obj2->hydrate($row, $startcol2); EscalanotaPeer::addInstanceToPool($obj2, $key2); } $obj2->addExamen($obj1); } $key3 = AlumnoPeer::getPrimaryKeyHashFromRow($row, $startcol3); if ($key3 !== null) { $obj3 = AlumnoPeer::getInstanceFromPool($key3); if (!$obj3) { $omClass = AlumnoPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj3 = new $cls(); $obj3->hydrate($row, $startcol3); AlumnoPeer::addInstanceToPool($obj3, $key3); } $obj3->addExamen($obj1); } $key4 = ActividadPeer::getPrimaryKeyHashFromRow($row, $startcol4); if ($key4 !== null) { $obj4 = ActividadPeer::getInstanceFromPool($key4); if (!$obj4) { $omClass = ActividadPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj4 = new $cls(); $obj4->hydrate($row, $startcol4); ActividadPeer::addInstanceToPool($obj4, $key4); } $obj4->addExamen($obj1); } $results[] = $obj1; } $stmt->closeCursor(); return $results; }
<?php $c = new Criteria(); $c->add(AlumnoPeer::FK_ESTABLECIMIENTO_ID, $sf_user->getAttribute('fk_establecimiento_id')); $c->addAscendingOrderByColumn(AlumnoPeer::APELLIDO); $c->addAscendingOrderByColumn(AlumnoPeer::NOMBRE); $alumnos = AlumnoPeer::doSelect($c); $optionsAlumnos = array(); $optionsAlumnos[""] = ""; foreach ($alumnos as $alumno) { $optionsAlumnos[$alumno->getId()] = $alumno->getApellido() . ", " . $alumno->getNombre(); } echo select_tag('filters[fk_alumno_id]', options_for_select($optionsAlumnos, isset($filters['fk_alunmo_id']) ? $filters['fk_alumno_id'] : ''));
public static function retrieveByPKs($pks, PropelPDO $con = null) { if ($con === null) { $con = Propel::getConnection(AlumnoPeer::DATABASE_NAME, Propel::CONNECTION_READ); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(AlumnoPeer::DATABASE_NAME); $criteria->add(AlumnoPeer::ID, $pks, Criteria::IN); $objs = AlumnoPeer::doSelect($criteria, $con); } return $objs; }
public function executeAddfoto(sfWebRequest $request) { $this->alumno = AlumnoPeer::retrieveByPk($request->getParameter('id')); $this->forward404Unless($this->alumno); if ($this->alumno->getLegajoPrefijo() != '' && $this->alumno->getLegajoNumero() != '') { try { $this->getRequest()->moveFile('archivo', sfConfig::get('sf_upload_dir') . DIRECTORY_SEPARATOR . 'alumnos' . DIRECTORY_SEPARATOR . $this->alumno->getLegajo() . '.png'); $this->result = 1; } catch (Exception $e) { $this->result_msg = $e->getMessage(); $this->result = 0; } } else { // legajo invalido $this->result_msg = 'El alumno posee un legajo inválido!'; $this->result = 0; } }
/** * Obtiene los necesarios para ver la asistencias de alumnos * **/ protected function obtenerDatos() { Misc::use_helper('Misc'); //Iniciando Variables $alumno_id = -1; $cuenta_id = -1; $vista_id = 1; // default para vista DIARIO $division_id = 0; $carrera_id = 0; $datos = array(); $idxAlumno = array(); $aFeriado = array(); $aIntervalo = array(); $optionsDivision = array(); $optionsCarrera = array(); $aTemp = array(); $aFechaTemp = array(); $aTipoasistencias = array(); $aPorcentajeAsistencia = array(); $flag_error = 0; $nombre_completo_archivo = ""; $bool_gd = array_search("gd", get_loaded_extensions()); // Tomando los datos del formulario y completando variable $ciclolectivo_id = $this->getUser()->getAttribute('fk_ciclolectivo_id'); $ciclolectivo = CiclolectivoPeer::retrieveByPK($ciclolectivo_id); $ciclolectivo_fecha_inicio = strtotime($ciclolectivo->getFechaInicio()); $ciclolectivo_fecha_fin = strtotime($ciclolectivo->getFechaFin()); // Asigno la fecha de inicio del ciclo lectivo por defecto $aFechaActual = getdate($ciclolectivo_fecha_inicio); // 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('dia')) { $d = $this->getRequestParameter('dia'); } else { $d = $aFechaActual['mday']; } if ($this->getRequestParameter('mes')) { $m = $this->getRequestParameter('mes'); } else { $m = $aFechaActual['mon']; } if ($this->getRequestParameter('ano')) { $y = $this->getRequestParameter('ano'); } else { $y = $aFechaActual['year']; } if ($this->getRequestParameter('alumno_id')) { $alumno_id = $this->getRequestParameter('alumno_id'); $a = AlumnoPeer::retrieveByPK($alumno_id); $cuenta_id = $a->getFkCuentaId(); } if ($this->getRequestParameter('carrera_id')) { $carrera_id = $this->getRequestParameter('carrera_id'); } if ($this->getRequestParameter('vistas')) { $vista_id = $this->getRequestParameter('vistas'); } $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id'); $criteria = new Criteria(); $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id); if ($this->getRequestParameter('alumno_id')) { $criteria->add(RelAlumnoDivisionPeer::FK_ALUMNO_ID, $alumno_id); $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID); } if ($this->getRequestParameter('carrera_id')) { $criteria->add(AnioPeer::FK_CARRERA_ID, $carrera_id); } $criteria->addAscendingOrderByColumn(AnioPeer::DESCRIPCION); $criteria->addAscendingOrderByColumn(DivisionPeer::ORDEN); $criteria->addAscendingOrderByColumn(DivisionPeer::DESCRIPCION); $divisiones = DivisionPeer::doSelectJoinAnio($criteria); // divisiones a mostrar foreach ($divisiones as $division) { $optionsDivision[$division->getId()] = $division->__toString(); } if ($this->getRequestParameter('division_id')) { $division_id = $this->getRequestParameter('division_id'); } 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; } } $cCarrera = new Criteria(); $cCarrera->add(CarreraPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id); $carreras = CarreraPeer::doSelect($cCarrera); foreach ($carreras as $carrera) { $optionsCarrera[$carrera->getId()] = $carrera->getDescripcion(); } 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); // chequeo si el intervalo de fechas generados esta o no dentro de las fechas validas del ciclo lectivo foreach ($aIntervalo as $fecha) { $fecha_intervalo = strtotime($fecha); if ($fecha_intervalo >= $ciclolectivo_fecha_inicio and $fecha_intervalo <= $ciclolectivo_fecha_fin) { $aFechaTemp[] = $fecha; } } $aIntervalo = $aFechaTemp; } // obteniendo los feriados actuales $criteria = new Criteria(); $feriados = FeriadoPeer::doSelect($criteria); foreach ($feriados as $feriado) { $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'); } if (count($aIntervalo) > 0) { //Obtener los alumnos de la division y asistencias en el rango de fecha //$con = sfContext::getInstance()->getDatabaseConnection($connection='propel'); $con = Propel::getConnection(); $s = "SELECT alumno.id, alumno.nombre, alumno.apellido, alumno.apellido_materno,"; $s .= "tipoasistencia.descripcion, tipoasistencia.nombre AS asistencia, asistencia.fecha,"; $s .= "asistencia.fk_tipoasistencia_id "; $s .= "FROM alumno, rel_alumno_division "; $s .= "LEFT JOIN asistencia ON ( rel_alumno_division.FK_ALUMNO_ID = asistencia.FK_ALUMNO_ID "; $s .= "AND asistencia.FECHA "; $s .= "IN ("; for ($i = 0, $max = count($aIntervalo); $i < $max; $i++) { $s .= "'" . $aIntervalo[$i] . " 00:00:00'"; if ($i < count($aIntervalo) - 1) { $s .= ","; } } $s .= ") ) "; $s .= "LEFT JOIN tipoasistencia ON ( asistencia.FK_TIPOASISTENCIA_ID = tipoasistencia.ID ) "; $s .= "WHERE "; if ($alumno_id >= 0) { $s .= "alumno.ID =" . $alumno_id; } else { $s .= "rel_alumno_division.FK_DIVISION_ID =" . $division_id; } $s .= " AND rel_alumno_division.FK_ALUMNO_ID = alumno.ID"; $s .= " ORDER BY alumno.apellido,alumno.apellido_materno,alumno.nombre,asistencia.FECHA"; $stmt = $con->prepare($s); $alumnos = $stmt->execute(); $totales = array(); $tot = 0; while ($alumno = $stmt->fetch(PDO::FETCH_ASSOC)) { $idxAlumno[$alumno['id']] = $alumno['apellido'] . " " . $alumno['apellido_materno'] . " " . $alumno['nombre']; if ($alumno['fecha']) { $datos[$alumno['id']][$alumno['fecha']] = $alumno['asistencia']; @$totales[$alumno['asistencia']]++; } } $aTipoasistencias = $this->getTiposasistencias(); $aPorcentajeAsistencia = array(); $flag = 0; // cantidad de fechas sin fines de semana $cantFechas = 0; foreach ($aIntervalo as $fecha) { if (!(date("w", strtotime($fecha)) == 6) and !(date("w", strtotime($fecha)) == 0)) { $cantFechas++; } } $dias = $cantFechas * count($idxAlumno); foreach ($aTipoasistencias as $idx => $Tipoasistencia) { $aPorcentajeAsistencia[$idx] = isset($totales[$idx]) ? number_format($totales[$idx] * 100 / $dias, 2) : number_format(0, 2); $tot += isset($totales[$idx]) ? number_format($totales[$idx], 2) : number_format(0, 2); if ($aPorcentajeAsistencia[$idx] != 0) { $flag = 1; } } if ($flag == 1) { $aTitulo = array_keys($aTipoasistencias); $aTitulo[] = "No Cargado"; if ($bool_gd) { // Si no tiene cargado la GD no muestra el grafico // Genera nombre de archivo único $nombre_archivo = uniqid(); $nombre_completo_archivo = $nombre_archivo . '.jpg'; // nueva clase para grafico de tortas $graph = new ezcGraphPieChart(); // uso driver GD pero podria ser SVG o Ming $graph->driver = new ezcGraphGdDriver(); $graph->driver->options->supersampling = 1; $graph->driver->options->jpegQuality = 100; $graph->driver->options->imageFormat = IMG_JPEG; // Color de fondo del grafico $graph->background->color = '#FFFFFF'; // De donde sacar la letra $graph->options->font = realpath(sfConfig::get('sf_lib_dir') . "/font/FreeSerifBold.ttf"); $graph->options->font->maxFontSize = 9; // $graph->title = "Asistencia"; // Cargo datos de la asistencia $graph->data['Asistencia'] = new ezcGraphArrayDataSet($aPorcentajeAsistencia); // tamaño del symbolo de la lista $graph->legend->symbolSize = 10; // se selecciona las opciones graficas $graph->renderer = new ezcGraphRenderer3d(); $graph->renderer->options->moveOut = 0.01; $graph->renderer->options->pieChartShadowSize = 10; // $graph->renderer->options->pieChartGleam = .5; $graph->renderer->options->dataBorder = false; $graph->renderer->options->pieChartHeight = 16; $graph->renderer->options->legendSymbolGleam = 0.5; //graba archivo de imagen $graph->render(400, 250, sfConfig::get('app_alba_tmpdir') . DIRECTORY_SEPARATOR . $nombre_completo_archivo); } } } //Asignacion de variables para el template $this->bool_tmp = is_writable(sfConfig::get('app_alba_tmpdir')); $this->bool_gd = $bool_gd; $this->nombre_completo_archivo = $nombre_completo_archivo; $this->d = $d; $this->m = $m; $this->y = $y; $this->aTipoasistencias = $aTipoasistencias; $this->aAlumnos = $idxAlumno; $this->aDatos = $datos; $this->optionsDivision = $optionsDivision; $this->optionsCarrera = $optionsCarrera; $this->aVistas = repeticiones(); $this->aMeses = Meses(); $this->aIntervalo = $aIntervalo; $this->aPorcentajeAsistencia = $aPorcentajeAsistencia; $this->aFeriado = $aFeriado; $this->alumno_id = $alumno_id; $this->cuenta_id = $cuenta_id; $this->vista_id = $vista_id; $this->division_id = $division_id; $this->carrera_id = $carrera_id; $this->anio_desde = $anio_desde; $this->anio_hasta = $anio_hasta; }
function executeBusqueda() { $aAlumnoId = array(); $criteria = new Criteria(); if ($this->getRequestParameter('filtro_nombre_alumnos')) { $txt_nombre = $this->getRequestParameter('filtro_nombre_alumnos'); $cton1 = $criteria->getNewCriterion(AlumnoPeer::APELLIDO, "{$txt_nombre}%", Criteria::LIKE); } if ($this->getRequestParameter('filtro_alumnos')) { switch ($this->getRequestParameter('filtro_alumnos')) { case 0: break; case 1: $c = new Criteria(); $c->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $this->getUser()->getAttribute('fk_establecimiento_id')); $c->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID); $c->addJoin(AnioPeer::ID, DivisionPeer::FK_ANIO_ID); $relAlumnoDivision = RelAlumnoDivisionPeer::doSelect($c); foreach ($relAlumnoDivision as $r) { $aAlumnoId[] = $r->getFkAlumnoId(); } $criteria->add(AlumnoPeer::ID, $r->getFkAlumnoId(), Criteria::NOT_IN); $cton2 = $criteria->getNewCriterion(AlumnoPeer::ID, $aAlumnoId, Criteria::NOT_IN); if ($this->getRequestParameter('filtro_nombre_alumnos')) { $cton1->addAnd($cton2); } else { $criteria->add($cton2); } break; default: } } if ($this->getRequestParameter('filtro_nombre_alumnos')) { $criteria->add($cton1); } $alumnos = AlumnoPeer::doSelect($criteria); $this->optionsAlumno = $alumnos; }
public function getAlumnosJoinPais($criteria = null, $con = null, $join_behavior = Criteria::LEFT_JOIN) { if ($criteria === null) { $criteria = new Criteria(EstadosalumnosPeer::DATABASE_NAME); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collAlumnos === null) { if ($this->isNew()) { $this->collAlumnos = array(); } else { $criteria->add(AlumnoPeer::FK_ESTADOALUMNO_ID, $this->id); $this->collAlumnos = AlumnoPeer::doSelectJoinPais($criteria, $con, $join_behavior); } } else { $criteria->add(AlumnoPeer::FK_ESTADOALUMNO_ID, $this->id); if (!isset($this->lastAlumnoCriteria) || !$this->lastAlumnoCriteria->equals($criteria)) { $this->collAlumnos = AlumnoPeer::doSelectJoinPais($criteria, $con, $join_behavior); } } $this->lastAlumnoCriteria = $criteria; return $this->collAlumnos; }
public static function doSelectJoinAll(Criteria $c, $con = null, $join_behavior = Criteria::LEFT_JOIN) { $c = clone $c; if ($c->getDbName() == Propel::getDefaultDB()) { $c->setDbName(self::DATABASE_NAME); } AlumnoSaludPeer::addSelectColumns($c); $startcol2 = AlumnoSaludPeer::NUM_COLUMNS - AlumnoSaludPeer::NUM_LAZY_LOAD_COLUMNS; AlumnoPeer::addSelectColumns($c); $startcol3 = $startcol2 + (AlumnoPeer::NUM_COLUMNS - AlumnoPeer::NUM_LAZY_LOAD_COLUMNS); $c->addJoin(array(AlumnoSaludPeer::FK_ALUMNO_ID), array(AlumnoPeer::ID), $join_behavior); $stmt = BasePeer::doSelect($c, $con); $results = array(); while ($row = $stmt->fetch(PDO::FETCH_NUM)) { $key1 = AlumnoSaludPeer::getPrimaryKeyHashFromRow($row, 0); if (null !== ($obj1 = AlumnoSaludPeer::getInstanceFromPool($key1))) { } else { $omClass = AlumnoSaludPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj1 = new $cls(); $obj1->hydrate($row); AlumnoSaludPeer::addInstanceToPool($obj1, $key1); } $key2 = AlumnoPeer::getPrimaryKeyHashFromRow($row, $startcol2); if ($key2 !== null) { $obj2 = AlumnoPeer::getInstanceFromPool($key2); if (!$obj2) { $omClass = AlumnoPeer::getOMClass(); $cls = substr('.' . $omClass, strrpos('.' . $omClass, '.') + 1); $obj2 = new $cls(); $obj2->hydrate($row, $startcol2); AlumnoPeer::addInstanceToPool($obj2, $key2); } $obj2->addAlumnoSalud($obj1); } $results[] = $obj1; } $stmt->closeCursor(); return $results; }
public function executeAlumnosPorDivisionListado() { // inicializando variables $aAlumno = array(); // tomando los datos del formulario $division_id = $this->getRequestParameter('division_id'); // buscando division $division = DivisionPeer::retrieveByPK($division_id); // buscando alumnos $criteria = new Criteria(); $criteria->add(DivisionPeer::ID, $division_id); $criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID); $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID); $criteria->addAscendingOrderByColumn(AlumnoPeer::APELLIDO); $alumnos = AlumnoPeer::doSelect($criteria); // asignando variables para ser usadas en el template $this->aAlumno = $alumnos; $this->division = $division; }
protected function getAlumnos($division_id) { $aAlumno = array(); $criteria = new Criteria(); $criteria->add(DivisionPeer::ID, $division_id); $criteria->addJoin(RelAlumnoDivisionPeer::FK_ALUMNO_ID, AlumnoPeer::ID); $criteria->addJoin(RelAlumnoDivisionPeer::FK_DIVISION_ID, DivisionPeer::ID); $criteria->addAscendingOrderbyColumn(AlumnoPeer::APELLIDO); $aAlumno = AlumnoPeer::doSelect($criteria); return $aAlumno; }