Apply some customization
This commit is contained in:
parent
791b998489
commit
3c806a5b2b
@ -1875,7 +1875,7 @@ class Feeds extends Handler_Protected {
|
||||
$sum = 0;
|
||||
|
||||
for ($i = 0; $i < strlen($name); $i++) {
|
||||
$sum += ord($name{$i});
|
||||
$sum += ord($name[$i]);
|
||||
}
|
||||
|
||||
$sum %= count($colormap);
|
||||
|
@ -190,7 +190,7 @@ img.img_card_preview {
|
||||
}
|
||||
|
||||
.toolbar-hide {
|
||||
visibility: hidden !important;
|
||||
visibility: visible !important;
|
||||
}
|
||||
|
||||
.dijitMenuPopup {
|
||||
|
@ -205,7 +205,7 @@ function _color_unpack($hex, $normalize = false) {
|
||||
|
||||
if (strlen($hex) == 4) {
|
||||
$hex = $hex[1] . $hex[1] . $hex[2] . $hex[2] . $hex[3] . $hex[3];
|
||||
} $c = hexdec($hex);
|
||||
} $c = hexdec(ltrim($hex, '#'));
|
||||
for ($i = 16; $i >= 0; $i -= 8) {
|
||||
$out[] = (($c >> $i) & 0xFF) / ($normalize ? 255 : 1);
|
||||
} return $out;
|
||||
|
@ -431,7 +431,14 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
});
|
||||
},
|
||||
catchupCurrent: function(mode) {
|
||||
this.catchupFeed(this.getActive(), this.activeIsCat(), mode);
|
||||
Headlines.select('unread');
|
||||
Headlines.selectionToggleUnread({ no_error: 1 });
|
||||
let _feeds = this;
|
||||
setTimeout(function() {
|
||||
if (_feeds.getActive() != undefined) {
|
||||
_feeds.open({feed: _feeds.getActive(), is_cat: _feeds.activeIsCat()});
|
||||
}
|
||||
}, 1000);
|
||||
},
|
||||
catchupFeedInGroup: function(id) {
|
||||
const title = this.getName(id);
|
||||
|
@ -1,6 +1,11 @@
|
||||
'use strict';
|
||||
/* global __, ngettext */
|
||||
define(["dojo/_base/declare"], function (declare) {
|
||||
function decodeHTMLEntities(text) {
|
||||
var textArea = document.createElement('textarea');
|
||||
textArea.innerHTML = text;
|
||||
return textArea.value;
|
||||
}
|
||||
var img_preview_elem = document.createElement('div');
|
||||
img_preview_elem.style.display = 'none';
|
||||
document.body.appendChild(img_preview_elem);
|
||||
@ -191,7 +196,7 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
//console.log("Article.getActive(): " + Article.getActive());
|
||||
//console.log("App.getInitParam('cdm_expanded'): " + App.getInitParam("cdm_expanded"));
|
||||
//console.log("App.getViewMode(): " + App.getViewMode());
|
||||
|
||||
|
||||
if (id != Article.getActiveHeadline() && ((event.ctrlKey || event.shiftKey) || App.getViewMode() == "full")) {
|
||||
Article.setActiveHeadline(id);
|
||||
Article.openInNewWindow(id);
|
||||
@ -440,11 +445,11 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
if (App.isCombinedMode()) {
|
||||
row_class += App.getInitParam("cdm_expanded") ? " expanded" : " expandable";
|
||||
|
||||
img_preview_elem.innerHTML = hl.content;
|
||||
img_preview_elem.innerHTML = decodeHTMLEntities(hl.content) + decodeHTMLEntities(hl.enclosures);
|
||||
var img_preview_src = 'images/blank_icon.gif';
|
||||
var imgs = img_preview_elem.querySelectorAll('img');
|
||||
for (var i = 0; i < imgs.length; i++) {
|
||||
if (imgs[i].src && imgs[i].src.match(/\.(thumb|jpeg|jpg|gif|png)(\?|$)/i) != null) {
|
||||
if (imgs[i].src) {
|
||||
img_preview_src = imgs[i].src;
|
||||
break;
|
||||
}
|
||||
@ -454,7 +459,7 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
const originally_from = Article.formatOriginallyFrom(hl);
|
||||
|
||||
var author_display = hl.feed_title;
|
||||
if (hl.feed_title == "")
|
||||
if (hl.feed_title == "")
|
||||
author_display = hl.author;
|
||||
|
||||
this.fullArticles[hl.id] = `<div class="header">
|
||||
@ -473,8 +478,8 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
— ${hl.author}
|
||||
</span>
|
||||
${hl.labels}
|
||||
|
||||
<div class="right grid-right">
|
||||
|
||||
<div class="right grid-right">
|
||||
<i class="material-icons icon-score" title="${hl.score}" score-id="score-content-${hl.id}" onclick="Article.setScore(${hl.id}, this)">${Article.getScorePic(hl.score)}</i>
|
||||
<span class="updated" title="${hl.imported}">${hl.updated}</span>
|
||||
</div>
|
||||
@ -486,20 +491,20 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
<div id="slide-content-{hl.id}" class="content-inner" lang="${hl.lang ? hl.lang : 'en'}">
|
||||
[[CONTENT]]
|
||||
</div>
|
||||
<div class="intermediate">
|
||||
<div class="intermediate">
|
||||
${hl.enclosures}
|
||||
</div>
|
||||
<div class="footer" onclick="event.stopPropagation()">
|
||||
|
||||
|
||||
<div class="left">
|
||||
${hl.buttons_left}
|
||||
<i class="material-icons">label_outline</i>
|
||||
<span id="ATSTR-${hl.id}">${hl.tags_str}</span>
|
||||
<a title="${__("Edit tags for this article")}" href="#"
|
||||
<a title="${__("Edit tags for this article")}" href="#"
|
||||
onclick="Article.editTags(${hl.id})">(+)</a>
|
||||
${comments}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="right">
|
||||
${originally_from}
|
||||
${hl.buttons}
|
||||
@ -531,8 +536,8 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
— ${author_display}
|
||||
</a>
|
||||
${hl.labels}
|
||||
|
||||
<div class="right grid-right">
|
||||
|
||||
<div class="right grid-right">
|
||||
<i class="material-icons icon-score" title="${hl.score}" score-id="score-${hl.id}" onclick="Article.setScore(${hl.id}, this)">${Article.getScorePic(hl.score)}</i>
|
||||
<span class="updated" title="${hl.imported}">${hl.updated}</span>
|
||||
</div>
|
||||
@ -570,8 +575,8 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
— ${author_display}
|
||||
</a>
|
||||
${hl.labels}
|
||||
|
||||
<div class="right grid-right">
|
||||
|
||||
<div class="right grid-right">
|
||||
<i class="material-icons icon-score" title="${hl.score}" score-id="score-${hl.id}" onclick="Article.setScore(${hl.id}, this)">${Article.getScorePic(hl.score)}</i>
|
||||
<span class="updated" title="${hl.imported}">${hl.updated}</span>
|
||||
</div>
|
||||
@ -604,8 +609,8 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
— ${hl.author}
|
||||
</span>
|
||||
${hl.labels}
|
||||
|
||||
<div class="right grid-right">
|
||||
|
||||
<div class="right grid-right">
|
||||
<i class="material-icons icon-score" title="${hl.score}" score-id="score-content-${hl.id}" onclick="Article.setScore(${hl.id}, this)">${Article.getScorePic(hl.score)}</i>
|
||||
<span class="updated" title="${hl.imported}">${hl.updated}</span>
|
||||
</div>
|
||||
@ -617,20 +622,20 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
<div id="slide-content-{hl.id}" class="content-inner" lang="${hl.lang ? hl.lang : 'en'}">
|
||||
[[CONTENT]]
|
||||
</div>
|
||||
<div class="intermediate">
|
||||
<div class="intermediate">
|
||||
${hl.enclosures}
|
||||
</div>
|
||||
<div class="footer" onclick="event.stopPropagation()">
|
||||
|
||||
|
||||
<div class="left">
|
||||
${hl.buttons_left}
|
||||
<i class="material-icons">label_outline</i>
|
||||
<span id="ATSTR-${hl.id}">${hl.tags_str}</span>
|
||||
<a title="${__("Edit tags for this article")}" href="#"
|
||||
<a title="${__("Edit tags for this article")}" href="#"
|
||||
onclick="Article.editTags(${hl.id})">(+)</a>
|
||||
${comments}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="right">
|
||||
${originally_from}
|
||||
${hl.buttons}
|
||||
@ -640,7 +645,7 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
</div>`;
|
||||
}
|
||||
} else {
|
||||
row = `<div class="hl ${row_class} ${Article.getScoreClass(hl.score)}" data-orig-feed-id="${hl.feed_id}" data-article-id="${hl.id}" id="RROW-${hl.id}"
|
||||
row = `<div class="hl ${row_class} ${Article.getScoreClass(hl.score)}" data-orig-feed-id="${hl.feed_id}" data-article-id="${hl.id}" id="RROW-${hl.id}"
|
||||
data-score="${hl.score}" onmouseover="Article.mouseIn(${hl.id})" onmouseout="Article.mouseOut(${hl.id})">
|
||||
<div class="left">
|
||||
<input dojoType="dijit.form.CheckBox" type="checkbox" onclick="Headlines.onRowChecked(this)" class='rchk'>
|
||||
@ -753,9 +758,9 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
|
||||
for (let i = 0; i < reply['headlines']['content'].length; i++) {
|
||||
const hl = reply['headlines']['content'][i];
|
||||
|
||||
|
||||
$("headlines-frame").appendChild(this.render(reply['headlines'], hl));
|
||||
|
||||
|
||||
//if (App.getViewMode() == "cards") {
|
||||
//Headlines.card_count++;
|
||||
//if (Headlines.card_count == 1) {
|
||||
@ -1051,12 +1056,11 @@ define(["dojo/_base/declare"], function (declare) {
|
||||
elem.innerHTML = ngettext("%d article selected",
|
||||
"%d articles selected", count).replace("%d", count);
|
||||
|
||||
if (count > 0) {
|
||||
if (count > 0) {
|
||||
changeStyle('.toolbar-hide', 'visibility', 'visible');
|
||||
document.getElementById('more-button').style.visibility = 'hidden';
|
||||
Element.show(elem);
|
||||
} else {
|
||||
changeStyle('.toolbar-hide', 'visibility', 'hidden');
|
||||
document.getElementById('more-button').style.visibility = 'visible';
|
||||
Element.hide(elem);
|
||||
}
|
||||
|
@ -567,6 +567,15 @@ require(["dojo/_base/kernel",
|
||||
this.hotkey_actions["toggle_night_mode"] = function () {
|
||||
App.toggleNightMode();
|
||||
};
|
||||
this.hotkey_actions['mark_all_as_read'] = function () {
|
||||
Headlines.select('unread');
|
||||
Headlines.selectionToggleUnread({ no_error: 1 });
|
||||
setTimeout(function() {
|
||||
if (Feeds.getActive() != undefined) {
|
||||
Feeds.open({feed: Feeds.getActive(), is_cat: Feeds.activeIsCat()});
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
},
|
||||
onActionSelected: function(opid) {
|
||||
switch (opid) {
|
||||
|
Loading…
Reference in New Issue
Block a user