diff --git a/feedlist.js b/feedlist.js
index 008f0297f..a6a864a86 100644
--- a/feedlist.js
+++ b/feedlist.js
@@ -467,7 +467,7 @@ function feedlist_init() {
}
}
- if (getInitParam("theme") == "") {
+ if (getInitParam("theme") == "" || getInitParam("theme") == "neon") {
setTimeout("hide_footer()", 5000);
}
diff --git a/functions.js b/functions.js
index bcb462c47..b2bd2a9ef 100644
--- a/functions.js
+++ b/functions.js
@@ -526,7 +526,7 @@ function parse_counters(reply, scheduled_call) {
}
- if (row_needs_hl) {
+ if (row_needs_hl && getInitParam("theme") != 'neon') {
new Effect.Highlight(feedr, {duration: 1, startcolor: "#fff7d5",
queue: { position:'end', scope: 'EFQ-' + id, limit: 1 } } );
diff --git a/functions.php b/functions.php
index ab779d3e0..ace753b67 100644
--- a/functions.php
+++ b/functions.php
@@ -1592,6 +1592,12 @@
if (!$icon_file) $icon_file = getFeedIcon($feed_id);
+ $theme_path = get_user_theme_path($link);
+
+ if ($theme_path && strpos($icon_file, "images") !== false) {
+ $icon_file = $theme_path . $icon_file;
+ }
+
if (file_exists($icon_file) && filesize($icon_file) > 0) {
$feed_icon = "";
} else {
@@ -1990,9 +1996,14 @@
function get_user_theme($link) {
if (get_schema_version($link) >= 63) {
- return get_pref($link, "_THEME_ID");
+ $theme_name = get_pref($link, "_THEME_ID");
+ if (is_dir("themes/$theme_name")) {
+ return $theme_name;
+ } else {
+ return '';
+ }
} else {
- return false;
+ return '';
}
}
@@ -2002,7 +2013,7 @@
if (get_schema_version($link) >= 63) {
$theme_name = get_pref($link, "_THEME_ID");
- if ($theme_name) {
+ if ($theme_name && is_dir("themes/$theme_name")) {
$theme_path = "themes/$theme_name/";
} else {
$theme_name = '';
@@ -2017,12 +2028,14 @@
function get_all_themes() {
$themes = glob("themes/*");
+ asort($themes);
+
$rv = array();
foreach ($themes as $t) {
if (is_file("$t/theme.ini")) {
$ini = parse_ini_file("$t/theme.ini", true);
- if ($ini['theme']['version']) {
+ if ($ini['theme']['version'] && !$ini['theme']['disabled']) {
$entry = array();
$entry["path"] = $t;
$entry["base"] = basename($t);
@@ -3042,7 +3055,7 @@
return "images/mark_set.png";
break;
case -2:
- return "images/pub_set.gif";
+ return "images/pub_set.png";
break;
case -3:
return "images/fresh.png";
@@ -4644,6 +4657,8 @@
$result = db_query($link, "SELECT rtl_content, always_display_enclosures FROM ttrss_feeds
WHERE id = '$feed_id' AND owner_uid = " . $_SESSION["uid"]);
+ $theme_path = get_user_theme_path($link);
+
if (db_num_rows($result) == 1) {
$rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content"));
$always_display_enclosures = sql_bool_to_bool(db_fetch_result($result, 0, "always_display_enclosures"));
@@ -4742,30 +4757,21 @@
if (!$entry_comments) $entry_comments = " "; # placeholder
print "
-
";
+
";
if (!$zoom_mode) {
print "
$tags_str
(+)";
- if (defined('_ENABLE_INLINE_VIEW')) {
-
- print "
";
-
- }
-
- print "
";
$note_escaped = htmlspecialchars($line['note'], ENT_QUOTES);
- print "
";
@@ -5047,6 +5053,8 @@
$fresh_intl = get_pref($link, "FRESH_ARTICLE_MAX_AGE") * 60 * 60;
+ $theme_path = get_user_theme_path($link);
+
while ($line = db_fetch_assoc($result)) {
$class = ($lnum % 2) ? "even" : "odd";
@@ -5076,7 +5084,7 @@
if (sql_bool_to_bool($line["unread"]) &&
time() - strtotime($line["updated_noms"]) < $fresh_intl) {
- $update_pic = "
";
}
@@ -5089,21 +5097,21 @@
}
if ($line["marked"] == "t" || $line["marked"] == "1") {
- $marked_pic = "
";
} else {
- $marked_pic = "
";
}
if ($line["published"] == "t" || $line["published"] == "1") {
- $published_pic = "
";
} else {
- $published_pic = "
";
}
@@ -5494,10 +5502,8 @@
$tags_str = format_tags_string(get_article_tags($link, $id), $id);
-// print "
";
-
print "
-
+
$tags_str
(+)";
diff --git a/images/art-inline.png b/images/art-inline.png
deleted file mode 100644
index e18101f76..000000000
Binary files a/images/art-inline.png and /dev/null differ
diff --git a/images/fresh_new.png b/images/fresh_new.png
deleted file mode 100644
index 222f5ebe1..000000000
Binary files a/images/fresh_new.png and /dev/null differ
diff --git a/images/pub_set.png b/images/pub_set.png
new file mode 100644
index 000000000..1aff094fd
Binary files /dev/null and b/images/pub_set.png differ
diff --git a/images/pub_unset.png b/images/pub_unset.png
new file mode 100644
index 000000000..14609dff7
Binary files /dev/null and b/images/pub_unset.png differ
diff --git a/images/ttrss_logo.png b/images/ttrss_logo.png
index 2cedc35ed..243e8948b 100644
Binary files a/images/ttrss_logo.png and b/images/ttrss_logo.png differ
diff --git a/images/ttrss_logo_blackred.png b/images/ttrss_logo_blackred.png
deleted file mode 100644
index a9b081ab4..000000000
Binary files a/images/ttrss_logo_blackred.png and /dev/null differ
diff --git a/images/ttrss_logo_small.png b/images/ttrss_logo_small.png
deleted file mode 100644
index ec6cb9f42..000000000
Binary files a/images/ttrss_logo_small.png and /dev/null differ
diff --git a/schema/versions/mysql/64.sql b/schema/versions/mysql/64.sql
new file mode 100644
index 000000000..51f0be7e2
--- /dev/null
+++ b/schema/versions/mysql/64.sql
@@ -0,0 +1,7 @@
+begin;
+
+update ttrss_prefs set type_id = 2 where pref_name = '_THEME_ID';
+
+update ttrss_version set schema_version = 64;
+
+commit;
diff --git a/schema/versions/pgsql/64.sql b/schema/versions/pgsql/64.sql
new file mode 100644
index 000000000..51f0be7e2
--- /dev/null
+++ b/schema/versions/pgsql/64.sql
@@ -0,0 +1,7 @@
+begin;
+
+update ttrss_prefs set type_id = 2 where pref_name = '_THEME_ID';
+
+update ttrss_version set schema_version = 64;
+
+commit;
diff --git a/themes/compact/images/archive.png b/themes/compact/images/archive.png
new file mode 100755
index 000000000..6edd2da33
Binary files /dev/null and b/themes/compact/images/archive.png differ
diff --git a/themes/compact/images/art-pub-note.png b/themes/compact/images/art-pub-note.png
new file mode 100755
index 000000000..e04832676
Binary files /dev/null and b/themes/compact/images/art-pub-note.png differ
diff --git a/themes/compact/images/art-zoom.png b/themes/compact/images/art-zoom.png
new file mode 100755
index 000000000..6311b3130
Binary files /dev/null and b/themes/compact/images/art-zoom.png differ
diff --git a/themes/compact/images/fresh.png b/themes/compact/images/fresh.png
new file mode 100755
index 000000000..b6040aa9c
Binary files /dev/null and b/themes/compact/images/fresh.png differ
diff --git a/themes/compact/images/fresh_sign.png b/themes/compact/images/fresh_sign.png
new file mode 100755
index 000000000..6ec38eeb6
Binary files /dev/null and b/themes/compact/images/fresh_sign.png differ
diff --git a/themes/compact/images/label.png b/themes/compact/images/label.png
new file mode 100644
index 000000000..e27d0c537
Binary files /dev/null and b/themes/compact/images/label.png differ
diff --git a/themes/compact/images/mark_set.png b/themes/compact/images/mark_set.png
new file mode 100644
index 000000000..b35655c85
Binary files /dev/null and b/themes/compact/images/mark_set.png differ
diff --git a/themes/compact/images/mark_unset.png b/themes/compact/images/mark_unset.png
new file mode 100644
index 000000000..bf9059a32
Binary files /dev/null and b/themes/compact/images/mark_unset.png differ
diff --git a/themes/compact/images/pub_set.png b/themes/compact/images/pub_set.png
new file mode 100644
index 000000000..1aff094fd
Binary files /dev/null and b/themes/compact/images/pub_set.png differ
diff --git a/themes/compact/images/pub_unset.png b/themes/compact/images/pub_unset.png
new file mode 100644
index 000000000..14609dff7
Binary files /dev/null and b/themes/compact/images/pub_unset.png differ
diff --git a/themes/compact/images/resize_handle_horiz.png b/themes/compact/images/resize_handle_horiz.png
new file mode 100644
index 000000000..a2e347e3d
Binary files /dev/null and b/themes/compact/images/resize_handle_horiz.png differ
diff --git a/themes/compact/images/tag.png b/themes/compact/images/tag.png
new file mode 100644
index 000000000..5415949ee
Binary files /dev/null and b/themes/compact/images/tag.png differ
diff --git a/themes/compact/images/ttrss_logo.svg b/themes/compact/images/ttrss_logo.svg
new file mode 100644
index 000000000..f2dabbc61
--- /dev/null
+++ b/themes/compact/images/ttrss_logo.svg
@@ -0,0 +1,121 @@
+
+
+
diff --git a/themes/compact/theme.ini b/themes/compact/theme.ini
new file mode 100644
index 000000000..4ed051e85
--- /dev/null
+++ b/themes/compact/theme.ini
@@ -0,0 +1,3 @@
+[theme]
+name=Compact
+version=1.0
diff --git a/themes/graycube/images/archive.png b/themes/graycube/images/archive.png
new file mode 100755
index 000000000..6edd2da33
Binary files /dev/null and b/themes/graycube/images/archive.png differ
diff --git a/themes/graycube/images/art-pub-note.png b/themes/graycube/images/art-pub-note.png
new file mode 100755
index 000000000..e04832676
Binary files /dev/null and b/themes/graycube/images/art-pub-note.png differ
diff --git a/themes/graycube/images/art-zoom.png b/themes/graycube/images/art-zoom.png
new file mode 100755
index 000000000..6311b3130
Binary files /dev/null and b/themes/graycube/images/art-zoom.png differ
diff --git a/themes/graycube/images/fresh.png b/themes/graycube/images/fresh.png
new file mode 100755
index 000000000..b6040aa9c
Binary files /dev/null and b/themes/graycube/images/fresh.png differ
diff --git a/themes/graycube/images/fresh_sign.png b/themes/graycube/images/fresh_sign.png
new file mode 100755
index 000000000..6ec38eeb6
Binary files /dev/null and b/themes/graycube/images/fresh_sign.png differ
diff --git a/themes/graycube/images/label.png b/themes/graycube/images/label.png
new file mode 100644
index 000000000..e27d0c537
Binary files /dev/null and b/themes/graycube/images/label.png differ
diff --git a/themes/graycube/images/mark_set.png b/themes/graycube/images/mark_set.png
new file mode 100644
index 000000000..b35655c85
Binary files /dev/null and b/themes/graycube/images/mark_set.png differ
diff --git a/themes/graycube/images/mark_unset.png b/themes/graycube/images/mark_unset.png
new file mode 100644
index 000000000..bf9059a32
Binary files /dev/null and b/themes/graycube/images/mark_unset.png differ
diff --git a/themes/graycube/images/pub_set.png b/themes/graycube/images/pub_set.png
new file mode 100644
index 000000000..1aff094fd
Binary files /dev/null and b/themes/graycube/images/pub_set.png differ
diff --git a/themes/graycube/images/pub_unset.png b/themes/graycube/images/pub_unset.png
new file mode 100644
index 000000000..14609dff7
Binary files /dev/null and b/themes/graycube/images/pub_unset.png differ
diff --git a/themes/graycube/images/tag.png b/themes/graycube/images/tag.png
new file mode 100644
index 000000000..5415949ee
Binary files /dev/null and b/themes/graycube/images/tag.png differ
diff --git a/themes/graycube/theme.ini b/themes/graycube/theme.ini
new file mode 100644
index 000000000..4a6eda0c6
--- /dev/null
+++ b/themes/graycube/theme.ini
@@ -0,0 +1,3 @@
+[theme]
+name=Graycube
+version=1.0
diff --git a/themes/neon/images/archive.png b/themes/neon/images/archive.png
new file mode 100755
index 000000000..fab68beac
Binary files /dev/null and b/themes/neon/images/archive.png differ
diff --git a/themes/neon/images/art-pub-note.png b/themes/neon/images/art-pub-note.png
new file mode 100755
index 000000000..6721d51c7
Binary files /dev/null and b/themes/neon/images/art-pub-note.png differ
diff --git a/themes/neon/images/art-zoom.png b/themes/neon/images/art-zoom.png
new file mode 100755
index 000000000..1c96110aa
Binary files /dev/null and b/themes/neon/images/art-zoom.png differ
diff --git a/themes/neon/images/fresh.png b/themes/neon/images/fresh.png
new file mode 100755
index 000000000..b3f1355be
Binary files /dev/null and b/themes/neon/images/fresh.png differ
diff --git a/themes/neon/images/fresh_sign.png b/themes/neon/images/fresh_sign.png
new file mode 100755
index 000000000..00c2d3d2c
Binary files /dev/null and b/themes/neon/images/fresh_sign.png differ
diff --git a/themes/neon/images/mark_set.png b/themes/neon/images/mark_set.png
new file mode 100644
index 000000000..6b223a7d5
Binary files /dev/null and b/themes/neon/images/mark_set.png differ
diff --git a/themes/neon/images/mark_unset.png b/themes/neon/images/mark_unset.png
new file mode 100644
index 000000000..d92dbcba2
Binary files /dev/null and b/themes/neon/images/mark_unset.png differ
diff --git a/themes/neon/images/pub_set.png b/themes/neon/images/pub_set.png
new file mode 100644
index 000000000..5f062fd5d
Binary files /dev/null and b/themes/neon/images/pub_set.png differ
diff --git a/themes/neon/images/pub_unset.png b/themes/neon/images/pub_unset.png
new file mode 100644
index 000000000..8bb775082
Binary files /dev/null and b/themes/neon/images/pub_unset.png differ
diff --git a/themes/neon/images/resize_handle_horiz.png b/themes/neon/images/resize_handle_horiz.png
new file mode 100644
index 000000000..6dc146562
Binary files /dev/null and b/themes/neon/images/resize_handle_horiz.png differ
diff --git a/themes/neon/images/shadow_dark.png b/themes/neon/images/shadow_dark.png
new file mode 100644
index 000000000..3a26b2a5c
Binary files /dev/null and b/themes/neon/images/shadow_dark.png differ
diff --git a/themes/neon/images/tag.png b/themes/neon/images/tag.png
new file mode 100644
index 000000000..0ce354ee8
Binary files /dev/null and b/themes/neon/images/tag.png differ
diff --git a/themes/neon/images/ttrss_logo.png b/themes/neon/images/ttrss_logo.png
new file mode 100644
index 000000000..911e04304
Binary files /dev/null and b/themes/neon/images/ttrss_logo.png differ
diff --git a/themes/neon/images/ttrss_logo.svg b/themes/neon/images/ttrss_logo.svg
new file mode 100644
index 000000000..56722dad8
--- /dev/null
+++ b/themes/neon/images/ttrss_logo.svg
@@ -0,0 +1,155 @@
+
+
+
+
diff --git a/themes/neon/theme.css b/themes/neon/theme.css
new file mode 100644
index 000000000..d41cebf0f
--- /dev/null
+++ b/themes/neon/theme.css
@@ -0,0 +1,488 @@
+body {
+ background : #202020;
+}
+
+a {
+ color : gray;
+}
+
+a:hover {
+ color : #b077ec;
+}
+
+h3 {
+ border-color : #202020;
+}
+
+#overlay {
+ background : #202020;
+ color : gray;
+}
+
+div#l_progress_o {
+ background-color : #3c2c4c;
+}
+
+div#l_progress_i {
+ background-color : #b077ec;
+}
+
+#header {
+
+}
+
+#footer, #prefFooter {
+ background : #202020;
+ color : gray;
+ border-color : #404040;
+}
+
+#footer a:hover {
+ color : #b077ec;
+}
+
+#feeds-holder {
+ background : #404040;
+ border-style : solid;
+ border-color : #404040;
+}
+
+#toolbar {
+ background : #202020;
+}
+
+input, select, button {
+ background : #3c2c4c;
+ border : 1px solid black;
+ color : #b077ec;
+ padding : 2px 4px 2px 4px;
+}
+
+textarea {
+ background : #3c2c4c;
+ border : 1px solid black;
+ color : #b077ec;
+}
+
+select {
+ padding : 2px 0px 2px 4px;
+}
+
+div.headlines_normal {
+ border-color : #404040;
+ background : #202020;
+}
+
+div.headlines_cdm {
+ border-color : #404040;
+ background : #202020;
+}
+
+div#headlinesInnerContainer {
+ background : #202020;
+}
+
+div.headlinesSubToolbar {
+ background : #404040;
+ color : #f0f0f0;
+}
+
+#resize-grabber {
+ border-width : 0px 0px 1px 0px;
+ border-style : solid;
+ border-color : #3c2c4c;
+ background : #3c2c4c;
+}
+
+#content-frame {
+ border-color : #404040;
+}
+
+#content-insert {
+ background : #202020;
+}
+
+.evenUnreadSelected, .evenSelectedUnread, .evenUnreadSelected td,
+ .evenSelectedUnread td {
+ background-color : #3c2c4c;
+ font-weight : bold;
+ border-color : #404040;
+}
+
+.oddUnreadSelected, .oddSelectedUnread, .oddUnreadSelected td,
+ .oddSelectedUnread td {
+ background-color : #3c2c4c;
+ font-weight : bold;
+ border-color : #404040;
+
+}
+
+.evenSelected, .evenSelected td {
+ background-color : #3c2c4c;
+ border-color : #404040;
+}
+
+.oddSelected, .oddSelected td {
+ background-color : #3c2c4c;
+ border-color : #404040;
+}
+
+.evenGrayed, .evenGrayed td {
+ background-color : #303030;
+ color : gray;
+ border-color : #404040;
+}
+
+.oddGrayed, .oddGrayed td {
+ border-color : #404040;
+}
+
+.oddGrayed {
+ color : gray;
+ background-color : #404040;
+}
+
+.even, .even td {
+ border-color : #404040;
+ background-color : #404040;
+}
+
+.odd, .odd td {
+ background-color : #202020;
+ border-color : #202020;
+}
+
+.evenUnread, .evenUnread td {
+ background-color : #404040;
+ font-weight : bold;
+ border-color : #404040;
+}
+
+.oddUnread, .oddUnread td {
+ font-weight : bold;
+ border-color : #404040;
+ background-color : #202020;
+}
+
+ul.feedList li.feedCatSelected {
+ color : #b077ec;
+}
+
+ul.feedList li.feedCatSelected span.catTitle {
+ color : #b077ec;
+}
+
+ul.feedList li.feedCat {
+ color : #b077ec;
+}
+
+ul.feedList li.feedCat span.catTitle:hover {
+ color : #b077ec;
+}
+
+ul.feedList li.feedCat span.catTitle {
+ color : #b077ec;
+}
+
+ul.feedCatList li {
+ color : gray;
+}
+
+#prefContentOuter {
+ background : #404040;
+ border-color : #404040;
+}
+
+#prefContent {
+ background : #404040;
+ color : gray;
+
+}
+
+div.prefsTab {
+ border-color : #404040;
+ color : gray;
+}
+
+div.prefsTabSelected {
+ border-color : #404040;
+ background : #404040;
+ color : gray;
+}
+
+div.topLinks a {
+ color : #b077ec;
+}
+
+div.topLinks a:hover {
+ color : gray;
+}
+
+li.feedSelected a,
+li.labelSelected a,
+li.virtSelected a,
+li.tagSelected a {
+ color : #b077ec;
+}
+
+li.feedUnreadSelected a,
+li.labelUnreadSelected a,
+li.virtUnreadSelected a,
+li.tagUnreadSelected a {
+ color : #b077ec;
+}
+
+span.contentPreview:hover, td.hlContent a:hover {
+ color : #b077ec;
+}
+
+.catCtrHasUnread, .feedCtrHasUnread {
+ color : #8752c2;
+}
+
+span#headlineActionsDrop {
+ border : 1px solid #202020;
+ color : gray;
+ background : #202020;
+}
+
+ul#headlineActionsBody {
+ background-color : #202020;
+ border-color : #202020;
+}
+
+ul#headlineActionsBody li {
+ color : gray;
+}
+
+ul#headlineActionsBody li:hover {
+ color : gray;
+ background : #404040;
+}
+
+ul#headlineActionsBody li.insensitive {
+ color : #404040;
+}
+
+ul#headlineActionsBody li.insensitive:hover {
+ background : #202020;
+ color : #404040;
+}
+
+optgroup {
+ color : #b077ec;
+}
+
+#infoBoxTitle {
+ border-color : #404004;
+ background : #404040;
+ color : gray;
+ text-shadow : #202020 0px 1px 0px;
+}
+
+
+#infoBox {
+ border-color : #202020;
+ background : #202020;
+ color : gray;
+}
+
+div.infoBoxContents a {
+ color : gray;
+}
+
+div.infoBoxContents a:hover {
+ color : #b077ec;
+}
+
+div.notice {
+ background : #202020;
+ border : 1px solid #404040;
+ color : gray;
+}
+
+.notify, .notifyInfo, .notifyProgress {
+ border-color : #b077ec;
+ background-color : #3c2c4c;
+ color : gray;
+}
+
+div.tagCloudContainer {
+ border : 1px solid #404040;
+ background : #202020;
+}
+
+div.tagCloudContainer a:hover {
+ color : #b077ec;
+}
+
+#dispSwitch a:hover {
+ color : #b077ec;
+}
+
+div.postReply {
+ color : gray;
+}
+
+div.postReply a {
+ color : gray;
+}
+
+div.postReply a:hover {
+ color : #b077ec;
+}
+
+div.postReply div.postHeader {
+ background : #3c2c4c;
+ border-color : #202020;
+ margin : 0px;
+}
+
+div.postReply > div.postHeader {
+ padding : 5px;
+}
+
+#dialog_overlay {
+ background-image : url("images/shadow_dark.png");
+}
+
+div#cmdline {
+ background-color : #3c2c4c;
+ border : 1px solid #b077ec;
+ padding : 3px 5px 3px 5px;
+ z-index : 5;
+ color : #b077ec;
+}
+
+table.prefFilterList tr.even:hover td,
+table.prefFilterList tr.odd:hover td,
+table.prefFilterList tr.evenSelected:hover td,
+table.prefFilterList tr.oddSelected:hover td
+table.prefLabelList tr.even:hover td,
+table.prefLabelList tr.odd:hover td,
+table.prefLabelList tr.evenSelected:hover td,
+table.prefLabelList tr.oddSelected:hover td,
+table.prefUserList tr.even:hover td,
+table.prefUserList tr.odd:hover td,
+table.prefUserList tr.evenSelected:hover td,
+table.prefUserList tr.oddSelected:hover td,
+table.prefFeedList tr.even:hover td,
+table.prefFeedList tr.odd:hover td,
+table.prefFeedList tr.evenSelected:hover td,
+table.prefFeedList tr.oddSelected:hover td
+{
+ color : #b077ec;
+}
+
+table.headlinesList tr.feedTitle td a, div.cdmFeedTitle a {
+ color : gray;
+}
+
+table.headlinesList tr.feedTitle td {
+ background : #efefef;
+}
+
+tr.title td {
+ color : gray;
+ font-weight : bold;
+ border-color : #202020;
+}
+
+tr.title td a {
+ color : gray;
+}
+
+tr.title td a:hover {
+ color : #b077ec;
+}
+
+table.prefFeedList td.feedEditCat {
+ border-color : #202020;
+}
+
+table.prefFilterList td.filterEditCat {
+ border-color : #202020;
+}
+
+ul.browseFeedList, ul.userFeedList {
+ border : 1px solid #404040;
+ background : #202020;
+}
+
+div.prefFeedCatHolder {
+ border : 1px solid #404040;
+ background-color : #202020;
+}
+
+#debug_output {
+ background-color : #202020;
+ border : 1px solid #b077ec;
+ color : gray;
+}
+
+span.debugTS {
+ color : #b077ec;
+}
+
+div.cdmArticle {
+ border-color : #202020;
+ background : #404040;
+ color : gray;
+}
+
+div.cdmArticleUnread {
+ border-color : #202020;
+ background : #404040;
+ color : gray;
+}
+
+div.cdmArticleUnread div.cdmHeader {
+ background : transparent;
+ background-repeat : repeat-x;
+ color : gray;
+}
+
+div.cdmArticleUnread div.cdmHeader span.titleWrap a {
+ color : white;
+}
+
+div.cdmArticleUnreadSelected div.cdmHeader span.titleWrap a {
+ color : white;
+}
+
+div.cdmArticleSelected, div.cdmArticleUnreadSelected {
+ border-color : #404040;
+ background : #3c2c4c;
+ color : gray;
+}
+
+div.cdmArticleSelected div.cdmFooter, div.cdmArticleUnreadSelected div.cdmFooter {
+ background : gray;
+}
+
+div.cdmArticleUnread div.cdmHeader a.title,
+div.cdmArticleUnreadSelected div.cdmHeader a.title {
+ color : gray;
+}
+
+div.cdmHeader a.title {
+ color : gray;
+}
+
+div.cdmHeader a:hover {
+ color : #3c2c4c;
+}
+
+div.cdmFooter {
+ background : #303030;
+ color : gray;
+}
+
+div.cdmContent a {
+ color : #b077ec;
+}
+
+div.cdmContent a:hover {
+ color : #3c2c4c;
+}
+
diff --git a/themes/neon/theme.ini b/themes/neon/theme.ini
new file mode 100644
index 000000000..af5ba1f9a
--- /dev/null
+++ b/themes/neon/theme.ini
@@ -0,0 +1,3 @@
+[theme]
+name=Neon
+version=1.0
diff --git a/themes/old-skool/images/archive.png b/themes/old-skool/images/archive.png
new file mode 100755
index 000000000..6edd2da33
Binary files /dev/null and b/themes/old-skool/images/archive.png differ
diff --git a/themes/old-skool/images/art-pub-note.png b/themes/old-skool/images/art-pub-note.png
new file mode 100755
index 000000000..e04832676
Binary files /dev/null and b/themes/old-skool/images/art-pub-note.png differ
diff --git a/themes/old-skool/images/art-zoom.png b/themes/old-skool/images/art-zoom.png
new file mode 100755
index 000000000..6311b3130
Binary files /dev/null and b/themes/old-skool/images/art-zoom.png differ
diff --git a/themes/compat/images/button.png b/themes/old-skool/images/button.png
similarity index 100%
rename from themes/compat/images/button.png
rename to themes/old-skool/images/button.png
diff --git a/themes/old-skool/images/fresh.png b/themes/old-skool/images/fresh.png
new file mode 100755
index 000000000..b6040aa9c
Binary files /dev/null and b/themes/old-skool/images/fresh.png differ
diff --git a/themes/old-skool/images/fresh_sign.png b/themes/old-skool/images/fresh_sign.png
new file mode 100755
index 000000000..6ec38eeb6
Binary files /dev/null and b/themes/old-skool/images/fresh_sign.png differ
diff --git a/themes/old-skool/images/grad_1.png b/themes/old-skool/images/grad_1.png
new file mode 100644
index 000000000..1a25a785a
Binary files /dev/null and b/themes/old-skool/images/grad_1.png differ
diff --git a/themes/old-skool/images/label.png b/themes/old-skool/images/label.png
new file mode 100644
index 000000000..e27d0c537
Binary files /dev/null and b/themes/old-skool/images/label.png differ
diff --git a/themes/old-skool/images/mark_set.png b/themes/old-skool/images/mark_set.png
new file mode 100644
index 000000000..b35655c85
Binary files /dev/null and b/themes/old-skool/images/mark_set.png differ
diff --git a/themes/old-skool/images/mark_unset.png b/themes/old-skool/images/mark_unset.png
new file mode 100644
index 000000000..bf9059a32
Binary files /dev/null and b/themes/old-skool/images/mark_unset.png differ
diff --git a/themes/old-skool/images/pub_set.png b/themes/old-skool/images/pub_set.png
new file mode 100644
index 000000000..1aff094fd
Binary files /dev/null and b/themes/old-skool/images/pub_set.png differ
diff --git a/themes/old-skool/images/pub_unset.png b/themes/old-skool/images/pub_unset.png
new file mode 100644
index 000000000..14609dff7
Binary files /dev/null and b/themes/old-skool/images/pub_unset.png differ
diff --git a/themes/old-skool/images/resize_handle_horiz.png b/themes/old-skool/images/resize_handle_horiz.png
new file mode 100644
index 000000000..a2e347e3d
Binary files /dev/null and b/themes/old-skool/images/resize_handle_horiz.png differ
diff --git a/themes/old-skool/images/resize_horiz.png b/themes/old-skool/images/resize_horiz.png
new file mode 100644
index 000000000..cbf190971
Binary files /dev/null and b/themes/old-skool/images/resize_horiz.png differ
diff --git a/themes/old-skool/images/tag.png b/themes/old-skool/images/tag.png
new file mode 100644
index 000000000..5415949ee
Binary files /dev/null and b/themes/old-skool/images/tag.png differ
diff --git a/themes/compat/images/ttrss_logo.png b/themes/old-skool/images/ttrss_logo.png
similarity index 100%
rename from themes/compat/images/ttrss_logo.png
rename to themes/old-skool/images/ttrss_logo.png
diff --git a/themes/old-skool/images/ttrss_logo.svg b/themes/old-skool/images/ttrss_logo.svg
new file mode 100644
index 000000000..f2dabbc61
--- /dev/null
+++ b/themes/old-skool/images/ttrss_logo.svg
@@ -0,0 +1,121 @@
+
+
+
diff --git a/themes/compat/images/vgrad_light.png b/themes/old-skool/images/vgrad_light.png
similarity index 100%
rename from themes/compat/images/vgrad_light.png
rename to themes/old-skool/images/vgrad_light.png
diff --git a/themes/compat/images/vgrad_light_rev.png b/themes/old-skool/images/vgrad_light_rev.png
similarity index 100%
rename from themes/compat/images/vgrad_light_rev.png
rename to themes/old-skool/images/vgrad_light_rev.png
diff --git a/themes/compat/images/vgrad_light_rev2.png b/themes/old-skool/images/vgrad_light_rev2.png
similarity index 100%
rename from themes/compat/images/vgrad_light_rev2.png
rename to themes/old-skool/images/vgrad_light_rev2.png
diff --git a/themes/compat/theme.css b/themes/old-skool/theme.css
similarity index 100%
rename from themes/compat/theme.css
rename to themes/old-skool/theme.css
diff --git a/themes/old-skool/theme.ini b/themes/old-skool/theme.ini
new file mode 100644
index 000000000..38a800428
--- /dev/null
+++ b/themes/old-skool/theme.ini
@@ -0,0 +1,3 @@
+[theme]
+name=Old-Skool
+version=1.0
diff --git a/themes/threecolumns/theme.css b/themes/threecolumns/theme.css
deleted file mode 100644
index a00270a2f..000000000
--- a/themes/threecolumns/theme.css
+++ /dev/null
@@ -1,60 +0,0 @@
-div.headlines_normal {
- position : absolute;
- border-width : 1px 0px 0px 0px;
- border-style : solid;
- border-color : #88b0f0;
- left : 260px;
- height : auto;
- top : 85px;
- right : 35%;
- bottom : 40px;
- overflow : hidden;
- font-size : small;
- border-collapse : collapse;
-}
-
-div.headlines_cdm {
- position : absolute;
- border-width : 1px 0px 1px 0px;
- border-style : solid;
- border-color : #88b0f0;
- left : 260px;
- bottom : 40px;
- top : 85px;
- width : 300px;
- overflow : auto;
- font-size : small;
- border-collapse : collapse;
-}
-
-table.headlinesSubToolbar {
- height : 25px;
-}
-
-div.postReply {
- background : white;
-}
-
-#headlinesInnerContainer {
- overflow : auto;
- position : absolute;
- top : 25px;
- height : auto;
- bottom : 0px;
- left : 0px;
- right : 0px;
-}
-
-#content-frame {
- position : absolute;
- border-width : 1px 0px 1px 1px;
- border-style : solid;
- border-color : #88b0f0;
- overflow : auto;
- top : 85px;
- left : 65%;
- bottom : 40px;
- right : 0px;
- border-collapse : collapse;
-}
-
diff --git a/themes/triple-pane/images/archive.png b/themes/triple-pane/images/archive.png
new file mode 100755
index 000000000..6edd2da33
Binary files /dev/null and b/themes/triple-pane/images/archive.png differ
diff --git a/themes/triple-pane/images/art-pub-note.png b/themes/triple-pane/images/art-pub-note.png
new file mode 100755
index 000000000..e04832676
Binary files /dev/null and b/themes/triple-pane/images/art-pub-note.png differ
diff --git a/themes/triple-pane/images/art-zoom.png b/themes/triple-pane/images/art-zoom.png
new file mode 100755
index 000000000..6311b3130
Binary files /dev/null and b/themes/triple-pane/images/art-zoom.png differ
diff --git a/themes/triple-pane/images/fresh.png b/themes/triple-pane/images/fresh.png
new file mode 100755
index 000000000..b6040aa9c
Binary files /dev/null and b/themes/triple-pane/images/fresh.png differ
diff --git a/themes/triple-pane/images/fresh_sign.png b/themes/triple-pane/images/fresh_sign.png
new file mode 100755
index 000000000..6ec38eeb6
Binary files /dev/null and b/themes/triple-pane/images/fresh_sign.png differ
diff --git a/themes/triple-pane/images/grad_1.png b/themes/triple-pane/images/grad_1.png
new file mode 100644
index 000000000..1a25a785a
Binary files /dev/null and b/themes/triple-pane/images/grad_1.png differ
diff --git a/themes/triple-pane/images/label.png b/themes/triple-pane/images/label.png
new file mode 100644
index 000000000..e27d0c537
Binary files /dev/null and b/themes/triple-pane/images/label.png differ
diff --git a/themes/triple-pane/images/mark_set.png b/themes/triple-pane/images/mark_set.png
new file mode 100644
index 000000000..b35655c85
Binary files /dev/null and b/themes/triple-pane/images/mark_set.png differ
diff --git a/themes/triple-pane/images/mark_unset.png b/themes/triple-pane/images/mark_unset.png
new file mode 100644
index 000000000..bf9059a32
Binary files /dev/null and b/themes/triple-pane/images/mark_unset.png differ
diff --git a/themes/triple-pane/images/pub_set.png b/themes/triple-pane/images/pub_set.png
new file mode 100644
index 000000000..1aff094fd
Binary files /dev/null and b/themes/triple-pane/images/pub_set.png differ
diff --git a/themes/triple-pane/images/pub_unset.png b/themes/triple-pane/images/pub_unset.png
new file mode 100644
index 000000000..14609dff7
Binary files /dev/null and b/themes/triple-pane/images/pub_unset.png differ
diff --git a/themes/triple-pane/images/resize_handle_horiz.png b/themes/triple-pane/images/resize_handle_horiz.png
new file mode 100644
index 000000000..a2e347e3d
Binary files /dev/null and b/themes/triple-pane/images/resize_handle_horiz.png differ
diff --git a/themes/3pane/images/resize_handle_vert.png b/themes/triple-pane/images/resize_handle_vert.png
similarity index 100%
rename from themes/3pane/images/resize_handle_vert.png
rename to themes/triple-pane/images/resize_handle_vert.png
diff --git a/themes/triple-pane/images/resize_horiz.png b/themes/triple-pane/images/resize_horiz.png
new file mode 100644
index 000000000..cbf190971
Binary files /dev/null and b/themes/triple-pane/images/resize_horiz.png differ
diff --git a/themes/3pane/images/resize_vert.png b/themes/triple-pane/images/resize_vert.png
similarity index 100%
rename from themes/3pane/images/resize_vert.png
rename to themes/triple-pane/images/resize_vert.png
diff --git a/themes/triple-pane/images/tag.png b/themes/triple-pane/images/tag.png
new file mode 100644
index 000000000..5415949ee
Binary files /dev/null and b/themes/triple-pane/images/tag.png differ
diff --git a/themes/3pane/images/ttrss_logo.png b/themes/triple-pane/images/ttrss_logo.png
similarity index 100%
rename from themes/3pane/images/ttrss_logo.png
rename to themes/triple-pane/images/ttrss_logo.png
diff --git a/themes/triple-pane/images/ttrss_logo.svg b/themes/triple-pane/images/ttrss_logo.svg
new file mode 100644
index 000000000..f2dabbc61
--- /dev/null
+++ b/themes/triple-pane/images/ttrss_logo.svg
@@ -0,0 +1,121 @@
+
+
+
diff --git a/themes/3pane/theme.css b/themes/triple-pane/theme.css
similarity index 100%
rename from themes/3pane/theme.css
rename to themes/triple-pane/theme.css
diff --git a/themes/triple-pane/theme.ini b/themes/triple-pane/theme.ini
new file mode 100644
index 000000000..4be8589ab
--- /dev/null
+++ b/themes/triple-pane/theme.ini
@@ -0,0 +1,3 @@
+[theme]
+name=Triple Pane
+version=1.0
diff --git a/tt-rss.js b/tt-rss.js
index 988f2bac4..2782cc726 100644
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -413,7 +413,7 @@ function resize_headlines(delta_x, delta_y) {
feeds_frame.style.bottom = f_frame.offsetHeight + "px";
}
- if (getInitParam("theme") == "3pane") {
+ if (getInitParam("theme") == "triple-pane") {
if (delta_x != undefined) {
if (c_frame.offsetLeft - delta_x > feeds_frame.offsetWidth + feeds_frame.offsetLeft + 100 && c_frame.offsetWidth + delta_x > 100) {
@@ -431,7 +431,7 @@ function resize_headlines(delta_x, delta_y) {
4) + "px";
resize_grab.style.display = "block";
- resize_handle.src = "themes/3pane/images/resize_handle_vert.png";
+ resize_handle.src = "themes/triple-pane/images/resize_handle_vert.png";
resize_handle.style.paddingTop = (resize_grab.offsetHeight / 2 - 7) + "px";
} else {
diff --git a/tt-rss.php b/tt-rss.php
index 6226c05b8..9fa3da1d8 100644
--- a/tt-rss.php
+++ b/tt-rss.php
@@ -240,7 +240,7 @@
-