HL
TCrietria com TFullCalendar
Boa noite!
Gostaria de esclarecimento de como é o real funcionamento das classe baseadas no TFullCalendar, estou testando uma criteria para apresentação dos dados no calendário, porém qualquer alteração na função getEvents faz com que os dados não sejam carregados no calendário.
Até mesmo um var_dump já faz com que função não seja carregada.
Abaixo segue um código, quando a criteria que se encontra comentada é rodada, não apresenta as informações no calendário, porém ela tem a mesma funcionalidade do where.
Alguém tem uma experiência com a utilização de calendário para que possa indicar como funciona ou artigos para consulta.
Gostaria de esclarecimento de como é o real funcionamento das classe baseadas no TFullCalendar, estou testando uma criteria para apresentação dos dados no calendário, porém qualquer alteração na função getEvents faz com que os dados não sejam carregados no calendário.
Até mesmo um var_dump já faz com que função não seja carregada.
Abaixo segue um código, quando a criteria que se encontra comentada é rodada, não apresenta as informações no calendário, porém ela tem a mesma funcionalidade do where.
Alguém tem uma experiência com a utilização de calendário para que possa indicar como funciona ou artigos para consulta.
- <?php
- /**
- * FullCalendarDatabaseView
- *
- * @version 1.0
- * @package samples
- * @subpackage tutor
- * @author Pablo Dall'Oglio
- * @copyright Copyright (c) 2006 Adianti Solutions Ltd. (http://www.adianti.com.br)
- * @license http://www.adianti.com.br/framework-license
- */
- class SystemCalendarView extends TPage
- {
- private $fc;
- /**
- * Page constructor
- */
- public function __construct()
- {
- parent::__construct();
- $this->fc = new TFullCalendar(date('Y-m-d'), 'month');
- $this->fc->setReloadAction(new TAction(array($this, 'getEvents')));
- $this->fc->setDayClickAction(new TAction(array('SystemActivityForm', 'onStartEdit')));
- $this->fc->setEventClickAction(new TAction(array('SystemActivityForm', 'onEdit')));
- $this->fc->setEventUpdateAction(new TAction(array('SystemActivityForm', 'onUpdateEvent')));
- parent::add( $this->fc );
- }
- /**
- * Output events as an json
- */
- public static function getEvents($param=NULL)
- {
- $return = array();
- try
- {
- TTransaction::open('permission');
- // $criteria = new TCriteria();
- // $criteria->add(new TFilter('start_time', '>=', $param['start']));
- // $criteria->add(new TFilter('end_time', '<=', $param['end']));
- //
- // $criteria_ispublic = new TCriteria();
- // $criteria_ispublic->add(new TFilter('ispublic', '=', 'S'), TExpression::OR_OPERATOR);
- // $criteria_ispublic->add(new TFilter('system_user_id', '=', TSession::getValue('login_id')));
- //
- // $repository_activity = TRepository('SystemActivity');
- // $events = $repository_activity->load($criteria);
- $events = SystemActivity::where('start_time', '>=', $param['start'])
- ->where('end_time', '<=', $param['end'])->load();
- if ($events)
- {
- foreach ($events as $event)
- {
- $event_array = $event->toArray();
- $event_array['start'] = str_replace( ' ', 'T', $event_array['start_time']);
- $event_array['end'] = str_replace( ' ', 'T', $event_array['end_time']);
- $return[] = $event_array;
- }
- }
- TTransaction::close();
- echo json_encode($return);
- }
- catch (Exception $e)
- {
- new TMessage('error', $e->getMessage());
- }
- }
- /**
- * Reconfigure the callendar
- */
- public function onReload($param = null)
- {
- if (isset($param['view']))
- {
- $this->fc->setCurrentView($param['view']);
- }
- if (isset($param['date']))
- {
- $this->fc->setCurrentDate($param['date']);
- }
- }
- }
- ?>
Verifique pelo console o retorno da requisição. Procure por warnings, notices, etc.
O retorno esperado é um json, qualquer coisa diferente dá problema no carregamento
Ola boa tarde. Conseguiu resolver o problema ?
Att
Anderson