Переглянути джерело

SQL : Supprime c.color

Implémente décision
https://github.com/marienfressinaud/FreshRSS/issues/295
Install.php pourrait peut-être être mis à jour pour supprimer
automatiquement la colonne, mais ce n'est pas fait dans ce patch.
Alexandre Alapetite 12 роки тому
батько
коміт
18403d9720
5 змінених файлів з 7 додано та 28 видалено
  1. 1 13
      app/Models/Category.php
  2. 3 10
      app/Models/CategoryDAO.php
  3. 0 1
      app/sql.php
  4. 1 2
      lib/lib_opml.php
  5. 2 2
      p/i/install.php

+ 1 - 13
app/Models/Category.php

@@ -3,14 +3,12 @@
 class FreshRSS_Category extends Minz_Model {
 	private $id = 0;
 	private $name;
-	private $color;
 	private $nbFeed = -1;
 	private $nbNotRead = -1;
 	private $feeds = null;
 
-	public function __construct ($name = '', $color = '#0062BE', $feeds = null) {
+	public function __construct ($name = '', $feeds = null) {
 		$this->_name ($name);
-		$this->_color ($color);
 		if (isset ($feeds)) {
 			$this->_feeds ($feeds);
 			$this->nbFeed = 0;
@@ -28,9 +26,6 @@ class FreshRSS_Category extends Minz_Model {
 	public function name () {
 		return $this->name;
 	}
-	public function color () {
-		return $this->color;
-	}
 	public function nbFeed () {
 		if ($this->nbFeed < 0) {
 			$catDAO = new FreshRSS_CategoryDAO ();
@@ -68,13 +63,6 @@ class FreshRSS_Category extends Minz_Model {
 	public function _name ($value) {
 		$this->name = $value;
 	}
-	public function _color ($value) {
-		if (preg_match ('/^#([0-9a-f]{3}|[0-9a-f]{6})$/i', $value)) {
-			$this->color = $value;
-		} else {
-			$this->color = '#0062BE';
-		}
-	}
 	public function _feeds ($values) {
 		if (!is_array ($values)) {
 			$values = array ($values);

+ 3 - 10
app/Models/CategoryDAO.php

@@ -2,12 +2,11 @@
 
 class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 	public function addCategory ($valuesTmp) {
-		$sql = 'INSERT INTO `' . $this->prefix . 'category` (name, color) VALUES(?, ?)';
+		$sql = 'INSERT INTO `' . $this->prefix . 'category` (name) VALUES(?)';
 		$stm = $this->bd->prepare ($sql);
 
 		$values = array (
 			substr($valuesTmp['name'], 0, 255),
-			substr($valuesTmp['color'], 0, 7),
 		);
 
 		if ($stm && $stm->execute ($values)) {
@@ -20,12 +19,11 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 	}
 
 	public function updateCategory ($id, $valuesTmp) {
-		$sql = 'UPDATE `' . $this->prefix . 'category` SET name=?, color=? WHERE id=?';
+		$sql = 'UPDATE `' . $this->prefix . 'category` SET name=? WHERE id=?';
 		$stm = $this->bd->prepare ($sql);
 
 		$values = array (
 			$valuesTmp['name'],
-			$valuesTmp['color'],
 			$id
 		);
 
@@ -89,7 +87,6 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 	public function listCategories ($prePopulateFeeds = true, $details = false) {
 		if ($prePopulateFeeds) {
 			$sql = 'SELECT c.id AS c_id, c.name AS c_name, '
-			     . ($details ? 'c.color AS c_color, ' : '')
 			     . ($details ? 'f.* ' : 'f.id, f.name, f.url, f.website, f.priority, f.error, f.cache_nbEntries, f.cache_nbUnreads ')
 			     . 'FROM `' . $this->prefix . 'category` c '
 			     . 'LEFT OUTER JOIN `' . $this->prefix . 'feed` f ON f.category = c.id '
@@ -130,7 +127,6 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 			$values = array (
 				'id' => $cat->id (),
 				'name' => $cat->name (),
-				'color' => $cat->color ()
 			);
 
 			$this->addCategory ($values);
@@ -203,7 +199,6 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 				// End of the current category, we add it to the $list
 				$cat = new FreshRSS_Category (
 					$previousLine['c_name'],
-					isset($previousLine['c_color']) ? $previousLine['c_color'] : '',
 					FreshRSS_FeedDAO::daoToFeed ($feedsDao, $previousLine['c_id'])
 				);
 				$cat->_id ($previousLine['c_id']);
@@ -220,7 +215,6 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 		if ($previousLine != null) {
 			$cat = new FreshRSS_Category (
 				$previousLine['c_name'],
-				isset($previousLine['c_color']) ? $previousLine['c_color'] : '',
 				FreshRSS_FeedDAO::daoToFeed ($feedsDao, $previousLine['c_id'])
 			);
 			$cat->_id ($previousLine['c_id']);
@@ -239,8 +233,7 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 
 		foreach ($listDAO as $key => $dao) {
 			$cat = new FreshRSS_Category (
-				$dao['name'],
-				$dao['color']
+				$dao['name']
 			);
 			$cat->_id ($dao['id']);
 			$list[$key] = $cat;

+ 0 - 1
app/sql.php

@@ -3,7 +3,6 @@ define('SQL_CREATE_TABLES', '
 CREATE TABLE IF NOT EXISTS `%1$scategory` (
 	`id` SMALLINT NOT NULL AUTO_INCREMENT,	-- v0.7
 	`name` varchar(255) NOT NULL,
-	`color` char(7),
 	PRIMARY KEY (`id`),
 	UNIQUE KEY (`name`)	-- v0.7
 ) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

+ 1 - 2
lib/lib_opml.php

@@ -61,8 +61,7 @@ function opml_import ($xml) {
 				if ($cat === false) {
 					$cat = new FreshRSS_Category ($title);
 					$values = array (
-						'name' => $cat->name (),
-						'color' => $cat->color ()
+						'name' => $cat->name ()
 					);
 					$cat->_id ($catDAO->addCategory ($values));
 				}

+ 2 - 2
p/i/install.php

@@ -44,8 +44,8 @@ UPDATE `%1$sfeed006` f
 INNER JOIN `%1$scategory006` c ON f.category = c.id
 SET f.category2 = c.id2;
 
-INSERT IGNORE INTO `%2$scategory` (name, color)
-SELECT name, color
+INSERT IGNORE INTO `%2$scategory` (name)
+SELECT name
 FROM `%1$scategory006`
 ORDER BY id2;