diff --git a/functions.js b/functions.js
index 3bed4f895..ddfce2477 100644
--- a/functions.js
+++ b/functions.js
@@ -938,7 +938,8 @@ function hideOrShowFeedsCategory(doc, node, hide, cat_node) {
var has_unread = (node.childNodes[i].className != "feed" &&
node.childNodes[i].className != "label" &&
- node.childNodes[i].className != "virt" &&
+ !(!getInitParam("hide_read_shows_special") &&
+ node.childNodes[i].className == "virt") &&
node.childNodes[i].className != "error" &&
node.childNodes[i].className != "tag");
diff --git a/functions.php b/functions.php
index a5da7b0bb..e0eb2bb0e 100644
--- a/functions.php
+++ b/functions.php
@@ -2841,6 +2841,9 @@
print "";
+ print "";
+
print "";
}
diff --git a/sanity_check.php b/sanity_check.php
index 2efb10758..27698b7e6 100644
--- a/sanity_check.php
+++ b/sanity_check.php
@@ -2,7 +2,7 @@
require_once "functions.php";
define('EXPECTED_CONFIG_VERSION', 14);
- define('SCHEMA_VERSION', 28);
+ define('SCHEMA_VERSION', 29);
if (!file_exists("config.php")) {
print __("Fatal Error: You forgot to copy
diff --git a/schema/ttrss_schema_mysql.sql b/schema/ttrss_schema_mysql.sql
index 65a6a56b0..e7a8eebbd 100644
--- a/schema/ttrss_schema_mysql.sql
+++ b/schema/ttrss_schema_mysql.sql
@@ -203,7 +203,7 @@ create table ttrss_tags (id integer primary key auto_increment,
create table ttrss_version (schema_version int not null) TYPE=InnoDB;
-insert into ttrss_version values (28);
+insert into ttrss_version values (29);
create table ttrss_enclosures (id serial not null primary key,
content_url text not null,
@@ -318,6 +318,8 @@ insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) valu
insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('PURGE_UNREAD_ARTICLES', 1, 'true', 'Purge unread articles',3);
+insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('HIDE_READ_SHOWS_SPECIAL', 1, 'true', 'Show special feeds when hiding read feeds',3);
+
create table ttrss_user_prefs (
owner_uid integer not null,
pref_name varchar(250),
diff --git a/schema/ttrss_schema_pgsql.sql b/schema/ttrss_schema_pgsql.sql
index 9b77533ed..f06d6729c 100644
--- a/schema/ttrss_schema_pgsql.sql
+++ b/schema/ttrss_schema_pgsql.sql
@@ -182,7 +182,7 @@ create index ttrss_tags_owner_uid_index on ttrss_tags(owner_uid);
create table ttrss_version (schema_version int not null);
-insert into ttrss_version values (28);
+insert into ttrss_version values (29);
create table ttrss_enclosures (id serial not null primary key,
content_url text not null,
@@ -291,6 +291,8 @@ insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) valu
insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('PURGE_UNREAD_ARTICLES', 1, 'true', 'Purge unread articles',3);
+insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('HIDE_READ_SHOWS_SPECIAL', 1, 'true', 'Show special feeds when hiding read feeds',3);
+
create table ttrss_user_prefs (
owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE,
pref_name varchar(250) not null references ttrss_prefs(pref_name) ON DELETE CASCADE,
diff --git a/schema/versions/mysql/29.sql b/schema/versions/mysql/29.sql
new file mode 100644
index 000000000..89b5e94a0
--- /dev/null
+++ b/schema/versions/mysql/29.sql
@@ -0,0 +1,3 @@
+insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('HIDE_READ_SHOWS_SPECIAL', 1, 'true', 'Show special feeds when hiding read feeds',3);
+
+update ttrss_version set schema_version = 29;
diff --git a/schema/versions/pgsql/29.sql b/schema/versions/pgsql/29.sql
new file mode 100644
index 000000000..89b5e94a0
--- /dev/null
+++ b/schema/versions/pgsql/29.sql
@@ -0,0 +1,3 @@
+insert into ttrss_prefs (pref_name,type_id,def_value,short_desc,section_id) values('HIDE_READ_SHOWS_SPECIAL', 1, 'true', 'Show special feeds when hiding read feeds',3);
+
+update ttrss_version set schema_version = 29;