예제 #1
0
 function createTask()
 {
     $groupsIds = Gradesgroup::getGroups($this->user->id);
     $groups = User_group::multiGet('id', $groupsIds)->fetchAll();
     if (empty($groups)) {
         $this->element('p', 'error', 'No tiene ningún grupo asociado.');
     } else {
         foreach ($groups as $group) {
             $this->elementStart('div', array('id' => 'div-group-task-' . $group->id, 'class' => 'group-task-grader'));
             $this->element('h2', null, strtoupper($group->getBestName()));
             // Comprobamos si la tarea de ese día para ese grupo ya está creada.
             $result = Task_Grader::checkTask($this->user->id, $group->id);
             // Creamos el form para ese grupo.
             $form = new InitForm($this, $group->id, $result);
             $form->show();
             $this->element('p', null, 'Fecha: ' . strftime('%d-%m-%Y'));
             // Cogemos el histórico de tareas de ese grupo y ese profesor.
             $historical = Task_Grader::getHistorical($this->user->id, $group->id);
             $this->elementStart('div', array('class' => 'wrapper-group-historical'));
             // Creamos el título del histórico y un enlace para expandirlo.
             $this->elementStart('a', array('class' => 'task-show-historical', 'onclick' => 'showHistorical(' . $group->id . ');'));
             $this->raw('Histórico de tareas <span class="show-historical">▸</span>');
             $this->elementEnd('a');
             $this->elementStart('div', array('id' => 'historical-' . $group->id, 'class' => 'div-group-historical'));
             if (count($historical) > 0) {
                 foreach ($historical as $taskHistory) {
                     $this->elementStart('div', array('id' => 'task-' . $taskHistory['id'], 'class' => 'div-historical-task'));
                     if ($taskHistory['status'] == 1) {
                         $status = 'Iniciada';
                     } else {
                         $status = 'Cancelada';
                     }
                     if ($taskHistory['tag'] == "") {
                         $taskHistory['tag'] = '&lt;Ninguno&gt;';
                     }
                     $this->elementStart('p');
                     $this->raw('<span class="historical-bold">' . $status . '</span> ' . '| <span class="historical-bold">Fecha:</span> ' . $taskHistory['cdate'] . ' ' . '| <span class="historical-bold">Tag:</span>  ' . $taskHistory['tag'] . ' ' . '| <span class="historical-bold">Completada:</span>  ' . $taskHistory['completed'] . '/' . $taskHistory['total']);
                     $this->elementEnd('p');
                     if ($taskHistory['completed'] == 0) {
                         if ($taskHistory['status'] == 1) {
                             $form = new CancelForm($this, $taskHistory['id']);
                             $form->show();
                         } else {
                             $form = new ReopenForm($this, $taskHistory['id']);
                             $form->show();
                         }
                     }
                     $this->elementEnd('div');
                 }
             } else {
                 $this->element('p', null, 'Todavía no ha iniciado ninguna tarea.');
             }
             $this->elementEnd('div');
             $this->elementEnd('div');
             $this->element('p', 'task-underline');
             $this->elementEnd('div');
         }
     }
 }