[Alba-desarrollo] SVN Alba r4874 - in
prosistem/alba/trunk/alba/apps/principal/modules/calendario:
actions templates
commits en pressenter.com.ar
commits en pressenter.com.ar
Mie Jul 25 20:41:03 CEST 2007
Author: josx
Date: 2007-07-25 15:40:59 -0300 (Wed, 25 Jul 2007)
New Revision: 4874
Modified:
prosistem/alba/trunk/alba/apps/principal/modules/calendario/actions/actions.class.php
prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDivisionSuccess.php
prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDocenteSuccess.php
Log:
Se integro en calendario nuevo con el modulo que mostraba el calendario por division o por docente
Modified: prosistem/alba/trunk/alba/apps/principal/modules/calendario/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/calendario/actions/actions.class.php 2007-07-25 17:51:16 UTC (rev 4873)
+++ prosistem/alba/trunk/alba/apps/principal/modules/calendario/actions/actions.class.php 2007-07-25 18:40:59 UTC (rev 4874)
@@ -34,422 +34,17 @@
{
public function preExecute() {
- $this->vista = $this->getRequestParameter('vista');
}
-
- private function getHorasMaterias($anio_id, $actividad_id = 0) {
- // traigo todos las materias/actividades para un año determinado
- $criteria = new Criteria();
- $criteria->add(RelAnioActividadPeer::FK_ANIO_ID, $anio_id);
- if($actividad_id) {
- $criteria->add(ActividadPeer::ID, $actividad_id);
- }
- $criteria->addJoin(RelAnioActividadPeer::FK_ACTIVIDAD_ID, ActividadPeer::ID);
- $criteria->addJoin(RelAnioActividadPeer::FK_ACTIVIDAD_ID, RelActividadDocentePeer::FK_ACTIVIDAD_ID, Criteria::LEFT_JOIN);
- $criteria->addJoin(RelActividadDocentePeer::FK_DOCENTE_ID, DocentePeer::ID, Criteria::LEFT_JOIN);
- $criteria->addJoin(RelActividadDocentePeer::FK_DOCENTE_ID, DocenteHorarioPeer::FK_DOCENTE_ID, Criteria::LEFT_JOIN);
- $criteria->addAsColumn("actividad_id", ActividadPeer::ID);
- $criteria->addAsColumn("docente_id", DocentePeer::ID);
- $criteria->addAsColumn("docente_apellido", DocentePeer::APELLIDO);
- $criteria->addAsColumn("docente_nombre", DocentePeer::NOMBRE);
- $criteria->addAsColumn("actividad_nombre", ActividadPeer::NOMBRE);
- $criteria->addAsColumn("horas", RelAnioActividadPeer::HORAS);
- $criteria->addAsColumn("dia", DocenteHorarioPeer::DIA);
- $criteria->addAsColumn("hora_inicio", DocenteHorarioPeer::HORA_INICIO);
- $criteria->addAsColumn("hora_fin", DocenteHorarioPeer::HORA_FIN);
-
-// $actividades = RelAnioActividadPeer::doSelectRS($criteria);
- $actividades = BasePeer::doSelect($criteria);
-
- $horarios_disponibles = array();
- $optionsHorasMaterias = array();
-
- foreach($actividades as $actividad) {
- if(!$actividad[1]) $actividad[1] = 0;
- $idx = $actividad[0]."_".$actividad[1];
- $docente = $actividad[3]." ".$actividad[2];
-
- $actividad_horario_disponible = $this->horariosATexto($actividad[6], $actividad[7], $actividad[8]);
- if(array_key_exists($idx, $horarios_disponibles)) {
- $horarios_disponibles[$idx] .= $actividad_horario_disponible;
- } else {
- $horarios_disponibles[$idx] = $actividad_horario_disponible;
- }
-
- $optionsHorasMaterias[$idx] = (object) array (
- 'cantidad' => $actividad[5] ,
- 'nombre' => $actividad[4]." x ".$docente,
- 'docente' => $docente,
- 'horarios_disponibles' => $horarios_disponibles[$idx]
- );
- }
- return $optionsHorasMaterias;
- }
-
-
- private function horariosATexto($dia, $hora_inicio, $hora_fin) {
- Misc::use_helper('Misc');
- $aSemana = diasDeLaSemana(1);
- $res = "";
- if($dia AND $hora_inicio AND $hora_fin) {
- $txt_dia = $aSemana[$dia];
- $res = $txt_dia." de ".$hora_inicio." a ".$hora_fin."\n";
- }
- return $res;
- }
-
-
- public function executeAdd() {
- list($name, $horasMaterias_id, $docente_id) = $this->getIdFromRequest();
- $horarios = $this->getUser()->getAttribute('horarios_'.$name);
- $anio_id = $this->getUser()->getAttribute('anio_id');
- $division_id = $this->getUser()->getAttribute('division_id');
- $this->horasMaterias = $this->getHorasMaterias($anio_id);
-
- if(!isset($horarios[$horasMaterias_id."_".$docente_id])) {
- if(count($horarios) <= 0) { // to let just one activity for each hour
- $horarios[$horasMaterias_id."_".$docente_id] = 1;
- $aEvent = $this->getUser()->getAttribute('event');
- $this->agregarItemCalendario($horasMaterias_id, $docente_id, $division_id, $aEvent[$name]);
- //$this->horasMaterias[$horasMaterias_id]->cantidad--;
- }
- } else {
- //commented out to let just one
- //++$horarios[$horasMaterias_id];
- }
- $this->getUser()->setAttribute('horarios_'.$name, $horarios);
- $this->vista = "noMuestraMenu";
- $this->name = $name;
- }
-
-
- public function executeRemove() {
- list($name, $horasMaterias_id, $docente_id) = $this->getIdFromRequest();
- $horarios = $this->getUser()->getAttribute('horarios_'.$name);
- $division_id = $this->getUser()->getAttribute('division_id');
- if (isset($horarios[$horasMaterias_id."_".$docente_id]) && $horarios[$horasMaterias_id."_".$docente_id] > 1) {
- --$horarios[$horasMaterias_id."_".$docente_id];
- } else {
- unset($horarios[$horasMaterias_id."_".$docente_id]);
- $aEvent = $this->getUser()->getAttribute('event');
- $this->borrarItemCalendario($horasMaterias_id, $docente_id, $division_id, $aEvent[$name]);
- }
- $this->getUser()->setAttribute('horarios_'.$name, $horarios);
- $division_id = $this->getUser()->getAttribute('division_id');
- $anio_id = $this->getUser()->getAttribute('anio_id');
- $this->horasMaterias = $this->getHorasMaterias($anio_id);
- $this->vista = "noMuestraMenu";
- $this->name = $name;
- }
-
- private function getIdFromRequest() {
- $name = $this->getRequestParameter('name');
- $id = $this->getRequestParameter('id', '');
-
- if (!$id) {
- return 0;
- }
-
- $tmp = split('_', $id);
- $horasMaterias_id = $tmp[1];
- $docente_id = $tmp[2];
-
- return array($name, $horasMaterias_id, $docente_id);
- }
-
-
-
/**
* Executes index action
*
*/
public function executeIndex() {
- $this->horasMaterias = array();
- $this->getUser()->setAttribute('horarios', array());
- $this->getUser()->setAttribute('anio_id', 0);
- $this->getUser()->setAttribute('division_id', 0);
- $this->getUser()->setAttribute('event', array());
-
- $turnos_id = "";
- $actividad_id = "";
- $optionsActividad = array();
- $horasMateriasTodas = array();
- $aAnio = array();
- $anio_id = "";
-
-/*
- $criteria = new Criteria();
- //$criteria->add(EstablecimientoPeer::IS_LIVE, 1);
- $establecimientos = EstablecimientoPeer::doSelect($criteria);
- $optionsEstablecimiento = array();
- foreach ($establecimientos as $establecimiento) {
- $optionsEstablecimiento[$establecimiento->getId()] = $establecimiento->getNombre();
- }
- asort($optionsEstablecimiento);
- $this->optionsEstablecimiento = $optionsEstablecimiento;
- $establecimiento_id = $this->getRequestParameter('establecimiento_id');
- if(!$establecimiento_id) {
- if(count($optionsEstablecimiento) > 0) {
- $establecimiento_id = key($optionsEstablecimiento);
- }
- }*/
-
-
- $establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
- $this->establecimiento_id = $establecimiento_id;
-
-
-/* $criteria = new Criteria();
- $criteria->add(CiclolectivoPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $ciclolectivos = CiclolectivoPeer::doSelect($criteria);
- $optionsCiclolectivo = array();
- foreach ($ciclolectivos as $ciclolectivo) {
- $optionsCiclolectivo[$ciclolectivo->getId()] = $ciclolectivo->getDescripcion();
- }
- asort($optionsCiclolectivo);
- $this->optionsCiclolectivo = $optionsCiclolectivo;
-
-
- $ciclolectivo_id = $this->getRequestParameter('ciclolectivo_id');
- if(!$ciclolectivo_id) {
- if(count($optionsCiclolectivo) > 0) {
- $ciclolectivo_id = key($optionsCiclolectivo);
- }
- }*/
-
- $ciclolectivo_id = $this->getUser()->getAttribute('fk_ciclolectivo_id');
- $this->ciclolectivo_id = $ciclolectivo_id;
-
-
-/* $criteriaT = new Criteria();
- $criteriaT->add(TurnosPeer::FK_CICLOLECTIVO_ID, $ciclolectivo_id);
- $turnos = TurnosPeer::doSelect($criteriaT);*/
- $turnos = $this->getTurnos($ciclolectivo_id);
-
- $optionsTurnos = array();
- foreach ($turnos as $turno) {
- $optionsTurnos[$turno->getId()] = $turno->getDescripcion();
- }
- asort($optionsTurnos);
- $this->optionsTurnos = $optionsTurnos;
-
- $this->aHour = array();
- $horarioescolares = array();
-
- Misc::use_helper('Misc');
- $aSemana = diasDeLaSemana(1);
-
- $this->aDayNames = array("Lunes","Martes","Miercoles","Jueves","Viernes");
-
- $this->aDay= array(strtotime("2006-09-11"), strtotime("2006-09-12"), strtotime("2006-09-13"), strtotime("2006-09-14"), strtotime("2006-09-15"));
-
- $this->optionsDivision = array();
-
- if ($this->getRequest()->getMethod() == sfRequest::POST) {
- $this->division_id = $this->getRequestParameter('division_id');
- $this->actividad_id = $actividad_id = $this->getRequestParameter('actividad_id');
-
-// $ciclolectivo_id = $this->getRequestParameter('ciclolectivo_id');
-// $establecimiento_id = $this->getRequestParameter('establecimiento_id');
-
- $turnos_id = $this->getRequestParameter('turnos_id');
- $turno = TurnosPeer::retrieveByPK($turnos_id);
-
- if($this->getRequestParameter('time_interval')) {
- $this->time_interval = $this->getRequestParameter('time_interval');
- } else {
- $this->time_interval = 15;
- }
-
-
- $this->aHour = array(strtotime($turno->getHoraInicio()), strtotime($turno->getHoraFin()));
-
-
-// $criteria = new Criteria();
-// $criteria->add(HorarioescolarPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
-// $criteria->add(HorarioescolarPeer::FK_TURNOS_ID, $turnos_id);
-// $horarioescolares = HorarioescolarPeer::doSelect($criteria);
-
- $horarioescolares = $this->getHorarioEscolar($establecimiento_id, $turnos_id);
-
- $criteria = new Criteria();
- $criteria->add(DivisionPeer::FK_TURNOS_ID, $turnos_id);
- $criteria->add(AnioPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $criteria->addJoin(AnioPeer::ID, DivisionPeer::FK_ANIO_ID);
- $divisiones = DivisionPeer::doSelect($criteria);
- $optionsDivision = array();
-
- foreach($divisiones as $division) {
- $optionsDivision[$division->getId()] = $division->getAnio()->getDescripcion()." ".$division->getDescripcion();
- $aAnio[$division->getId()] = $division->getAnio()->getId();
- }
- asort($optionsDivision);
- $this->optionsDivision = $optionsDivision;
-
- if(!$this->division_id OR !array_key_exists($this->division_id, $aAnio) ) {
- $eachDivision = each($optionsDivision);
- $this->division_id = $eachDivision[0]; // me quedo con el primer indice del array
- }
-
- if(array_key_exists($this->division_id,$aAnio)) {
- $horasMateriasTodas = $this->getHorasMaterias($aAnio[$this->division_id]);
- $this->horasMaterias = $this->getHorasMaterias($aAnio[$this->division_id], $actividad_id);
- $this->getUser()->setAttribute('anio_id', $aAnio[$this->division_id]);
- $this->getUser()->setAttribute('division_id', $this->division_id);
-// $this->turnos_id = $turnos_id;
- $anio_id = $aAnio[$this->division_id];
- }
-
- } else {
- $this->aHour = array(strtotime("8:00"), strtotime("17:00"));
- $this->time_interval = 15;
- }
-
- //Eventos
- $this->aEvent = array();
- if(count($horarioescolares) > 0) {
-
- // Tomar todas las materias y docentes para una division X
- $criteria = new Criteria();
- $criteria->add(RelDivisionActividadDocentePeer::FK_DIVISION_ID, $this->division_id);
- $items = RelDivisionActividadDocentePeer::doSelect($criteria);
-
- $aColor = array ("silver", "gray");
- $aColorSet = array();
- $aEvent = array();
- $optionsHorarioescolar = array();
- $i=1;
- foreach ($horarioescolares as $horarioescolar) {
-
- if(!array_key_exists($horarioescolar->getFkHorarioescolartipoId(),$aColorSet)) {
- $aColorSet[$horarioescolar->getFkHorarioescolartipoId()] = $aColor[($i%2)];
- }
-
- $optionsHorarioescolar[$horarioescolar->getId()] = $horarioescolar->getDescripcion();
- $nombre = $horarioescolar->getNombre();
- $hora_inicio = $horarioescolar->getHoraInicio();
- $hora_fin = $horarioescolar->getHoraFin();
- $descripcion = $horarioescolar->getDescripcion();
- $dia_semana = $horarioescolar->getDia();
- $aDia = array();
- switch($dia_semana) {
- case 8:
- $aDia[] = date("Y-m-d", $this->aDay[0]);
- $aDia[] = date("Y-m-d", $this->aDay[1]);
- $aDia[] = date("Y-m-d", $this->aDay[2]);
- $aDia[] = date("Y-m-d", $this->aDay[3]);
- $aDia[] = date("Y-m-d", $this->aDay[4]);
- break;
- default: $aDia[] = date("Y-m-d", $this->aDay[($dia_semana-1)]);
- }
-
-
- for($j=0;$j<count($aDia);$j++) {
-
- $oEvent = (object) array ( 'id'=> $i ,'name' => $nombre ,'date' => $aDia[$j],'start_time' => $hora_inicio, 'end_time' => $hora_fin, 'desc' => $descripcion, 'color' => $aColorSet[$horarioescolar->getFkHorarioescolartipoId()]);
- $this->getUser()->setAttribute('horarios_eventname'.$i, array());
- $aEvent["eventname".$i] = $oEvent;
- //$this->aEvent[] = $oEvent;
- $i++;
- }
- }
-
- $this->aEvent = $this->cargarItemCalendario($this->division_id, $aEvent, $horasMateriasTodas );
- $this->getUser()->setAttribute('event', $aEvent);
-
- }
-
- $optionsActividad[""] = "";
- $criteria = new Criteria();
- $criteria->add(ActividadPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
- $criteria->addJoin(RelAnioActividadPeer::FK_ACTIVIDAD_ID, ActividadPeer::ID);
- if($anio_id) {
- $criteria->add(RelAnioActividadPeer::FK_ANIO_ID, $anio_id);
- }
- $actividades = ActividadPeer::doSelect($criteria);
- foreach($actividades as $actividad) {
- $optionsActividad[$actividad->getId()] = $actividad->getNombre();
- }
- $this->optionsActividad = $optionsActividad;
- $this->turnos_id = $turnos_id;
}
-
- private function agregarItemCalendario($horasMaterias_id, $docente_id, $division_id, $oEvent) {
- $item = new RelDivisionActividadDocente();
- //$item->setId($id);
- $item->setFkDivisionId($division_id);
- $item->setFkActividadId($horasMaterias_id);
- $item->setFkRepeticionId(1); // id de semanal en tabla repeticion
- $item->setFechaInicio($oEvent->date);
- $item->setFechaFin($oEvent->date);
- $item->setHoraInicio($oEvent->start_time);
- $item->setHoraFin($oEvent->end_time);
- $item->setFkDocenteId($docente_id);
- //$item->setFkCargobajaId();
- //$item->setFkTipodocenteId();
- $item->save();
- }
-
- private function borrarItemCalendario($horasMaterias_id, $docente_id, $division_id, $oEvent) {
- $criteria = new Criteria();
- $criteria->add(RelDivisionActividadDocentePeer::FK_ACTIVIDAD_ID, $horasMaterias_id);
- $criteria->add(RelDivisionActividadDocentePeer::FK_DIVISION_ID, $division_id);
- $criteria->add(RelDivisionActividadDocentePeer::FECHA_INICIO, $oEvent->date);
- $criteria->add(RelDivisionActividadDocentePeer::FECHA_FIN, $oEvent->date);
- $criteria->add(RelDivisionActividadDocentePeer::HORA_INICIO, $oEvent->start_time);
- $criteria->add(RelDivisionActividadDocentePeer::HORA_FIN, $oEvent->end_time);
- $criteria->add(RelDivisionActividadDocentePeer::FK_DOCENTE_ID, $docente_id);
- RelDivisionActividadDocentePeer::doDelete($criteria);
- }
-
- private function cargarItemCalendario($division_id, $aEvent, $horasMaterias) {
-
- $criteria = new Criteria();
- $criteria->add(RelDivisionActividadDocentePeer::FK_DIVISION_ID, $division_id);
- $items = RelDivisionActividadDocentePeer::doSelect($criteria);
-
- $nombre = "";
- $aResEvent = array();
-
- foreach($aEvent as $idx => $event) {
- $diaEvent = date("D",strtotime($event->date));
- $flag = 0;
- foreach ($items as $item) {
- $diaItem = date("D",strtotime($item->getFechaInicio()));
- if( $item->getHoraInicio() == $event->start_time AND
- $item->getHoraFin() == $event->end_time AND
- $item->getFechaInicio() == $item->getFechaFin() AND
- $diaItem == $diaEvent) {
-
- $name = "eventname".$event->id;
- $horarioMaterias_id = $item->getFkActividadId();
- $docente_id = $item->getFkDocenteId();
- $var = $name."_".$horarioMaterias_id."_".$docente_id;
-
- $nombre = "<img src='".sfContext::getInstance()->getRequest()->getRelativeUrlRoot()."/sf/sf_admin/images/tick.png' id='".$var."_1' style='position:relative' class='horarioMaterias-items' ><span class='title'>".$horasMaterias[$horarioMaterias_id."_".$docente_id]->nombre."</span>
-<script type='text/javascript'>
-//<![CDATA[
-new Draggable('".$var."_1', {revert:1})
-//]]
-</script>";
-
- $aResEvent[] = (object) array ( 'id'=> $event->id ,'name' => $nombre ,'date' => $event->date,'start_time' => $event->start_time, 'end_time' => $event->end_time, 'desc' => $event->desc, 'color' => $event->color);
- $flag=1;
- }
- }
- if($flag==0) {
- $aResEvent[] = (object) array ( 'id'=> $event->id ,'name' => $event->name ,'date' => $event->date,'start_time' => $event->start_time, 'end_time' => $event->end_time, 'desc' => $event->desc, 'color' => $event->color);
- }
- }
-
- return $aResEvent;
- }
-
-
public function executeBusquedaDocente() {
// inicializando variables
$aDocente = array();
@@ -487,58 +82,51 @@
$this->aDocente = $aDocente;
}
- public function executeHorarioSegunDocente() {
- Misc::use_helper('Misc');
-
- //Iniciando Variables
- $aHoras = array();
- $aEvento = array();
+ function getEventos($aRes, $vista) {
+ include("miExportadorIcal.class.php");
+ $e = new miExportadorIcal();
+ $archivo = sfConfig::get('app_alba_tmpdir')."/".$e->exportar($aRes, 0);
+ if($this->getRequestParameter('date')) {
+ $date_component = $this->getRequestParameter('date');
+ } else {
+ $date_component = "";
+ }
+ if($this->getRequestParameter('view')) {
+ switch($this->getRequestParameter('view')) {
+ case 'week': $view = 'verPorSemana'; break;
+ case 'day': $view = 'verPorDia'; break;
+ default: $view = 'verPorDia';
+ }
+ } else {
+ $view = "verPorSemana";
+ }
+
+ return array($view, $archivo, $date_component);
+ }
+
+
+
+
+ public function executeHorarioSegunDocente() {
// tomando los datos del formulario
$docente_id = $this->getRequestParameter('id');
$establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
- //$ciclolectivo_id = $this->getUser()->getAttribute('fk_ciclolectivo_id');
-
// Trayendo datos necesarios
$docente = DocentePeer::retrieveByPK($docente_id);
+
+ //para hora de inicio y hora de fin
$aHoras = $this->getHorarioEscolar($establecimiento_id,0,1);
- foreach($aHoras as $hora) {
- $aDatosHoras[$hora->getHoraInicio().$hora->getHoraFin()] = $hora->getId();
- $aHorasIdx[$hora->getId()] = $hora;
- }
-
- //$aTurnos = $this->getTurnos($ciclolectivo_id);
-
-
-
-
+ // Horarios del Docente
$criteria = new Criteria();
$criteria->add(RelDivisionActividadDocentePeer::FK_DOCENTE_ID, $docente_id);
- $criteria->addJoin(RelDivisionActividadDocentePeer::FK_ACTIVIDAD_ID, ActividadPeer::ID, Criteria::LEFT_JOIN);
- $criteria->addAsColumn("actividad_nombre", ActividadPeer::NOMBRE);
- $criteria->addAsColumn("hora_inicio", RelDivisionActividadDocentePeer::HORA_INICIO);
- $criteria->addAsColumn("hora_fin", RelDivisionActividadDocentePeer::HORA_FIN);
- $criteria->addAsColumn("fecha_inicio", RelDivisionActividadDocentePeer::FECHA_INICIO);
- $criteria->addAsColumn("fecha_fin", RelDivisionActividadDocentePeer::FECHA_FIN);
+ $aEvento = RelDivisionActividadDocentePeer::doSelect($criteria);
-// deberia agregar la division para mostrar
- $eventos = BasePeer::doSelect($criteria);
-
- foreach($eventos as $evento) {
- if($evento[1] != "00:00:00" AND $evento[2] != "00:00:00") {
- $dia = date("w",strtotime($evento[3]));
- $aEvento[$aDatosHoras[$evento[1].$evento[2]]][$dia] = $evento[0];
- }
- }
-
- // asignando variables para ser usadas en el template
+ list($this->view, $this->archivo, $this->date_component) = $this->getEventos($aEvento, "verPorSemana");
$this->docente = $docente;
- $this->aHoras = $aHorasIdx;
- $this->aEvento = $aEvento;
- $this->aDia = diasDeLaSemana();
}
@@ -566,65 +154,27 @@
public function executeHorarioSegunDivision() {
- Misc::use_helper('Misc');
-
- $aEvento = array();
- $aHorasIdx = array();
- $aDatosHoras = array();
-
// tomando los datos del formulario
$division_id = $this->getRequestParameter('id');
$establecimiento_id = $this->getUser()->getAttribute('fk_establecimiento_id');
-
// trayendo datos necesarios
$division = DivisionPeer::retrieveByPK($division_id);
-
$aHoras = $this->getHorarioEscolar($establecimiento_id, $division->getFkTurnosId() ,1);
-// if(count($aHoras) == 0) {
-// $aHoras = $this->getHorarioEscolar($establecimiento_id, 0,1);
-// }
- foreach($aHoras as $hora) {
- $aDatosHoras[$hora->getHoraInicio().$hora->getHoraFin()] = $hora->getId();
- $aHorasIdx[$hora->getId()] = $hora;
- }
-
$criteria = new Criteria();
$criteria->add(RelDivisionActividadDocentePeer::FK_DIVISION_ID, $division_id);
- $criteria->addJoin(RelDivisionActividadDocentePeer::FK_ACTIVIDAD_ID, ActividadPeer::ID, Criteria::LEFT_JOIN);
- $criteria->addAsColumn("actividad_nombre", ActividadPeer::NOMBRE);
- $criteria->addAsColumn("hora_inicio", RelDivisionActividadDocentePeer::HORA_INICIO);
- $criteria->addAsColumn("hora_fin", RelDivisionActividadDocentePeer::HORA_FIN);
- $criteria->addAsColumn("fecha_inicio", RelDivisionActividadDocentePeer::FECHA_INICIO);
- $criteria->addAsColumn("fecha_fin", RelDivisionActividadDocentePeer::FECHA_FIN);
+ $aEvento = RelDivisionActividadDocentePeer::doSelect($criteria);
-// deberia agregar la division para mostrar
- $eventos = BasePeer::doSelect($criteria);
-
- foreach($eventos as $evento) {
- if($evento[1] != "00:00:00" AND $evento[2] != "00:00:00") {
- $dia = date("w",strtotime($evento[3]));
- $idx = $evento[1].$evento[2];
- if(array_key_exists($idx,$aDatosHoras)) {
- $aEvento[$aDatosHoras[$idx]][$dia] = $evento[0];
- }
- }
- }
+ list($this->view, $this->archivo, $this->date_component) = $this->getEventos($aEvento, "verPorSemana");
-
// asignando variables para ser usadas en el template
$this->division = $division;
- $this->aHoras = $aHorasIdx;
- $this->aEvento = $aEvento;
- $this->aDia = diasDeLaSemana();
-
-
}
protected function getHorarioEscolar($establecimiento_id = 0, $turnos_id = 0, $orden = 0) {
- $criteria = new Criteria();
+ $criteria = new Criteria();
if($establecimiento_id) {
$criteria->add(HorarioescolarPeer::FK_ESTABLECIMIENTO_ID, $establecimiento_id);
}
@@ -633,9 +183,7 @@
}
if($orden) {
- $criteria->addAscendingOrderByColumn(HorarioescolarPeer::FK_TURNOS_ID);
- $criteria->addAscendingOrderByColumn(HorarioescolarPeer::HORA_INICIO);
- $criteria->addAscendingOrderByColumn(HorarioescolarPeer::HORA_FIN);
+ $criteria->addAscendingOrderByColumn(HorarioescolarPeer::FK_TURNOS_ID);
}
$horarioescolares = HorarioescolarPeer::doSelect($criteria);
Modified: prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDivisionSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDivisionSuccess.php 2007-07-25 17:51:16 UTC (rev 4873)
+++ prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDivisionSuccess.php 2007-07-25 18:40:59 UTC (rev 4874)
@@ -1,95 +1,5 @@
-<style>
-
-table.horario {
- border: 1px solid;
-}
-
-table.horario th {
- text-align: center;
- border: 1px solid;
- background-color: #C1FFC1;
-}
-
-table.horario td {
- border: 1px solid;
- text-align: center;
-}
-
-
-table.horario td.activo {
- background-color: #86C67C;
-}
-
-table.horario td.inactivo {
- background-color: #CD0000;
-}
-
-table.horario td.evento {
- background-color: #68838B;
-}
-
-
-</style>
-
<h1>Horario para la Divsión: <?php echo $division->getAnio()->getDescripcion()." ".$division->getDescripcion()?></h1>
-
-<table cellspacing="0" class="horario">
- <thead>
- <tr>
- <th colspan="2">Horas/Días</th>
-<?php foreach($aDia as $dia) {?>
- <th><?=$dia?></th>
-<? } ?>
-
- </tr>
- </thead>
-
- <tbody>
-<?php
- $aColor= colorTurnos();
- $aColorUsado = array();
- $i=-1;
- $ultimo = "";
- foreach($aHoras as $idx => $horas){
- if($ultimo != $horas->getFkTurnosId()) {
- $i++;
- $aColorUsado[] = $aColor[$i];
- $aTurnos[] = ($horas->getTurnos())?$horas->getTurnos()->getDescripcion():"";
- }
+<?php
+ include_component('icalVisualizador', $view, array('archivo' => $archivo, 'date_component' => $date_component));
?>
- <tr>
- <td style="background-color: <?php echo $aColor[$i]?>" width="3%"><?=$horas->getHoraInicio()." ".$horas->getHoraFin()?></td>
- <td style="background-color: <?php echo $aColor[$i]?>" width="8%"><?=$horas->getNombre()?></td>
- <? foreach($aDia as $idx_dia => $dia) {
- switch($horas->getDia()) {
- case "8": case "$idx_dia": $color = "activo"; break;
- default: $color = "inactivo";
- }
- $actividad = "";
- if ( array_key_exists($idx, $aEvento) AND array_key_exists($idx_dia, $aEvento[$idx])) {
- $color = "evento";
- $actividad = $aEvento[$idx][$idx_dia];
- }
-?>
- <td class="<?php echo $color?>"><?=$actividad?></td>
- <? } ?>
- </tr>
-<? $ultimo = $horas->getFkTurnosId();
- }
-?>
-
- </tbody>
-</table>
-
-
-<br>
-<br>
-Otra Referencia:
-<table cellspacing="0" class="horario">
- <tr>
- <td width="10%" class="inactivo">Inactivo</td>
- <td width="10%" class="activo">Activo</td>
- <td width="10%" class="evento">Evento</td>
- </tr>
-</table>
\ No newline at end of file
Modified: prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDocenteSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDocenteSuccess.php 2007-07-25 17:51:16 UTC (rev 4873)
+++ prosistem/alba/trunk/alba/apps/principal/modules/calendario/templates/horarioSegunDocenteSuccess.php 2007-07-25 18:40:59 UTC (rev 4874)
@@ -1,106 +1,5 @@
-<style>
-
-table.horario {
- border: 1px solid;
-}
-
-table.horario th {
- text-align: center;
- border: 1px solid;
- background-color: #C1FFC1;
-}
-
-table.horario td {
- border: 1px solid;
- text-align: center;
-}
-
-
-table.horario td.activo {
- background-color: #86C67C;
-}
-
-table.horario td.inactivo {
- background-color: #CD0000;
-}
-
-table.horario td.evento {
- background-color: #68838B;
-}
-
-
-</style>
-
<h1>Horario para el Docente: <?=$docente->getApellido()." ".$docente->getNombre()?></h1>
-
-<table cellspacing="0" class="horario">
- <thead>
- <tr>
- <th colspan="2">Horas/Días</th>
-<?php foreach($aDia as $dia) {?>
- <th><?php echo $dia?></th>
-<?php } ?>
-
- </tr>
- </thead>
-
- <tbody>
-<?php
- $aColor= colorTurnos();
- $aColorUsado = array();
- $i=-1;
- $ultimo = "";
- foreach($aHoras as $idx => $horas){
- if($ultimo != $horas->getFkTurnosId()) {
- $i++;
- $aColorUsado[] = $aColor[$i];
- $aTurnos[] = ($horas->getTurnos())?$horas->getTurnos()->getDescripcion():"";
- }
+<?php
+ include_component('icalVisualizador', $view, array('archivo' => $archivo, 'date_component' => $date_component));
?>
- <tr>
- <td style="background-color: <?php echo $aColor[$i]?>" width="3%"><?=$horas->getHoraInicio()." ".$horas->getHoraFin()?></td>
- <td style="background-color: <?php echo $aColor[$i]?>" width="8%"><?=$horas->getNombre()?></td>
- <?php foreach($aDia as $idx_dia => $dia) {
- switch($horas->getDia()) {
- case "8": case "$idx_dia": $color = "activo"; break;
- default: $color = "inactivo";
- }
- $actividad = "";
- if ( array_key_exists($idx, $aEvento) AND array_key_exists($idx_dia, $aEvento[$idx])) {
- $color = "evento";
- $actividad = $aEvento[$idx][$idx_dia];
- }
-?>
- <td class="<?=$color?>"><?=$actividad?></td>
- <?php } ?>
- </tr>
-<?php $ultimo = $horas->getFkTurnosId();
- }
-?>
-
- </tbody>
-</table>
-
-<br>
-<br>
-Referencia de Turnos:
-<table cellspacing="0" class="horario">
- <tr>
- <?php for($i=0, $max=count($aColorUsado);$i<$max;$i++) { ?>
- <td width="10%" style="background-color: <?=$aColorUsado[$i]?>"><?php echo $aTurnos[$i]?></td>
- <?php } ?>
- </tr>
-</table>
-
-
-<br>
-<br>
-Otra Referencia:
-<table cellspacing="0" class="horario">
- <tr>
- <td width="10%" class="inactivo">Inactivo</td>
- <td width="10%" class="activo">Activo</td>
- <td width="10%" class="evento">Evento</td>
- </tr>
-</table>
\ No newline at end of file
Más información sobre la lista de distribución Alba-desarrollo