| | <?php |
| |
|
| | namespace Kanboard\Model; |
| |
|
| | use Kanboard\Core\Base; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class ColorModel extends Base |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | protected $default_colors = array( |
| | 'yellow' => array( |
| | 'name' => 'Yellow', |
| | 'background' => 'rgb(245, 247, 196)', |
| | 'border' => 'rgb(223, 227, 45)', |
| | ), |
| | 'blue' => array( |
| | 'name' => 'Blue', |
| | 'background' => 'rgb(219, 235, 255)', |
| | 'border' => 'rgb(168, 207, 255)', |
| | ), |
| | 'green' => array( |
| | 'name' => 'Green', |
| | 'background' => 'rgb(189, 244, 203)', |
| | 'border' => 'rgb(74, 227, 113)', |
| | ), |
| | 'purple' => array( |
| | 'name' => 'Purple', |
| | 'background' => 'rgb(223, 176, 255)', |
| | 'border' => 'rgb(205, 133, 254)', |
| | ), |
| | 'red' => array( |
| | 'name' => 'Red', |
| | 'background' => 'rgb(255, 187, 187)', |
| | 'border' => 'rgb(255, 151, 151)', |
| | ), |
| | 'orange' => array( |
| | 'name' => 'Orange', |
| | 'background' => 'rgb(255, 215, 179)', |
| | 'border' => 'rgb(255, 172, 98)', |
| | ), |
| | 'grey' => array( |
| | 'name' => 'Grey', |
| | 'background' => 'rgb(238, 238, 238)', |
| | 'border' => 'rgb(204, 204, 204)', |
| | ), |
| | 'brown' => array( |
| | 'name' => 'Brown', |
| | 'background' => '#d7ccc8', |
| | 'border' => '#4e342e', |
| | ), |
| | 'deep_orange' => array( |
| | 'name' => 'Deep Orange', |
| | 'background' => '#ffab91', |
| | 'border' => '#e64a19', |
| | ), |
| | 'dark_grey' => array( |
| | 'name' => 'Dark Grey', |
| | 'background' => '#cfd8dc', |
| | 'border' => '#455a64', |
| | ), |
| | 'pink' => array( |
| | 'name' => 'Pink', |
| | 'background' => '#f48fb1', |
| | 'border' => '#d81b60', |
| | ), |
| | 'teal' => array( |
| | 'name' => 'Teal', |
| | 'background' => '#80cbc4', |
| | 'border' => '#00695c', |
| | ), |
| | 'cyan' => array( |
| | 'name' => 'Cyan', |
| | 'background' => '#b2ebf2', |
| | 'border' => '#00bcd4', |
| | ), |
| | 'lime' => array( |
| | 'name' => 'Lime', |
| | 'background' => '#e6ee9c', |
| | 'border' => '#afb42b', |
| | ), |
| | 'light_green' => array( |
| | 'name' => 'Light Green', |
| | 'background' => '#dcedc8', |
| | 'border' => '#689f38', |
| | ), |
| | 'amber' => array( |
| | 'name' => 'Amber', |
| | 'background' => '#ffe082', |
| | 'border' => '#ffa000', |
| | ), |
| | ); |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function find($color) |
| | { |
| | $color = strtolower($color); |
| |
|
| | foreach ($this->default_colors as $color_id => $params) { |
| | if ($color_id === $color) { |
| | return $color_id; |
| | } elseif ($color === strtolower($params['name'])) { |
| | return $color_id; |
| | } |
| | } |
| |
|
| | return ''; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getColorProperties($color_id) |
| | { |
| | if (isset($this->default_colors[$color_id])) { |
| | return $this->default_colors[$color_id]; |
| | } |
| |
|
| | return $this->default_colors[$this->getDefaultColor()]; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getList($prepend = false) |
| | { |
| | $listing = $prepend ? array('' => t('All colors')) : array(); |
| |
|
| | foreach ($this->default_colors as $color_id => $color) { |
| | $listing[$color_id] = t($color['name']); |
| | } |
| |
|
| | $this->hook->reference('model:color:get-list', $listing); |
| |
|
| | return $listing; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getDefaultColor() |
| | { |
| | return $this->configModel->get('default_color', 'yellow'); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getDefaultColors() |
| | { |
| | return $this->default_colors; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getBorderColor($color_id) |
| | { |
| | $color = $this->getColorProperties($color_id); |
| | return $color['border']; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getBackgroundColor($color_id) |
| | { |
| | $color = $this->getColorProperties($color_id); |
| | return $color['background']; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getCss() |
| | { |
| | $buffer = ''; |
| |
|
| | foreach ($this->default_colors as $color => $values) { |
| | $buffer .= '.task-board.color-'.$color.', .task-summary-container.color-'.$color.', .color-picker-square.color-'.$color.', .task-board-category.color-'.$color.', .table-list-category.color-'.$color.', .task-tag.color-'.$color.' {'; |
| | $buffer .= 'background-color: '.$values['background'].';'; |
| | $buffer .= 'border-color: '.$values['border']; |
| | $buffer .= '}'; |
| | $buffer .= 'td.color-'.$color.' { background-color: '.$values['background'].'}'; |
| | $buffer .= '.table-list-row.color-'.$color.' {border-left: 5px solid '.$values['border'].'}'; |
| | } |
| |
|
| | return $buffer; |
| | } |
| | } |
| |
|