diff options
author | Frederic Guillot <fred@kanboard.net> | 2015-09-20 18:24:15 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2015-09-20 18:24:15 -0400 |
commit | e6f547abcfe684658a7498391db72d13b6aa7d9a (patch) | |
tree | 75b709c12fb03e11d7cb85558558f89f19abb284 /app/Model/TimetableOff.php | |
parent | 2021dccc5a444f60c5ba1673d94b39999912cd26 (diff) |
Move timetable to a plugin
Plugin repository: https://github.com/kanboard/plugin-timetable
Diffstat (limited to 'app/Model/TimetableOff.php')
-rw-r--r-- | app/Model/TimetableOff.php | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/app/Model/TimetableOff.php b/app/Model/TimetableOff.php deleted file mode 100644 index e4fe32d2..00000000 --- a/app/Model/TimetableOff.php +++ /dev/null @@ -1,125 +0,0 @@ -<?php - -namespace Model; - -use SimpleValidator\Validator; -use SimpleValidator\Validators; - -/** - * Timetable time off - * - * @package model - * @author Frederic Guillot - */ -class TimetableOff extends Base -{ - /** - * SQL table name - * - * @var string - */ - const TABLE = 'timetable_off'; - - /** - * Get query to fetch everything (pagination) - * - * @access public - * @param integer $user_id User id - * @return \PicoDb\Table - */ - public function getUserQuery($user_id) - { - return $this->db->table(static::TABLE)->eq('user_id', $user_id); - } - - /** - * Get the timetable for a given user - * - * @access public - * @param integer $user_id User id - * @return array - */ - public function getByUser($user_id) - { - return $this->db->table(static::TABLE)->eq('user_id', $user_id)->desc('date')->asc('start')->findAll(); - } - - /** - * Get the timetable for a given user - * - * @access public - * @param integer $user_id User id - * @param string $start_date - * @param string $end_date - * @return array - */ - public function getByUserAndDate($user_id, $start_date, $end_date) - { - return $this->db->table(static::TABLE) - ->eq('user_id', $user_id) - ->gte('date', $start_date) - ->lte('date', $end_date) - ->desc('date') - ->asc('start') - ->findAll(); - } - - /** - * Add a new time slot in the database - * - * @access public - * @param integer $user_id User id - * @param string $date Day (ISO8601 format) - * @param boolean $all_day All day flag - * @param float $start Start hour (24h format) - * @param float $end End hour (24h format) - * @param string $comment - * @return boolean|integer - */ - public function create($user_id, $date, $all_day, $start = '', $end = '', $comment = '') - { - $values = array( - 'user_id' => $user_id, - 'date' => $date, - 'all_day' => (int) $all_day, // Postgres fix - 'start' => $all_day ? '' : $start, - 'end' => $all_day ? '' : $end, - 'comment' => $comment, - ); - - return $this->persist(static::TABLE, $values); - } - - /** - * Remove a specific time slot - * - * @access public - * @param integer $slot_id - * @return boolean - */ - public function remove($slot_id) - { - return $this->db->table(static::TABLE)->eq('id', $slot_id)->remove(); - } - - /** - * Validate creation - * - * @access public - * @param array $values Form values - * @return array $valid, $errors [0] = Success or not, [1] = List of errors - */ - public function validateCreation(array $values) - { - $v = new Validator($values, array( - new Validators\Required('user_id', t('Field required')), - new Validators\Required('date', t('Field required')), - new Validators\Numeric('all_day', t('This value must be numeric')), - )); - - return array( - $v->execute(), - $v->getErrors() - ); - } -} |