aboutsummaryrefslogtreecommitdiff
path: root/p/scripts
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-01-27 23:34:09 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-01-27 23:34:09 +0100
commit71ea7532db3d74cde0dd079777aeb8fca3ec1d89 (patch)
treea0ee5722cd06c7414cd2f0d74ea5eca5a617cf84 /p/scripts
parent4799db4ad1f39f7ce6a2815dc6f0a886fe0e2730 (diff)
parent2fe2f876eac5e5fb8730000ef3d32ab45eefa8ea (diff)
Merge branch 'dev' into beta
Diffstat (limited to 'p/scripts')
-rw-r--r--p/scripts/main.js72
1 files changed, 25 insertions, 47 deletions
diff --git a/p/scripts/main.js b/p/scripts/main.js
index ddfa0aec8..921005e3c 100644
--- a/p/scripts/main.js
+++ b/p/scripts/main.js
@@ -21,14 +21,14 @@ function redirect(url, new_tab) {
}
function numberFormat(nStr) {
- // Thx to http://www.mredkj.com/javascript/numberFormat.html
+ // http://www.mredkj.com/javascript/numberFormat.html
nStr += '';
- var x = nStr.split('.');
- var x1 = x[0];
- var x2 = x.length > 1 ? '.' + x[1] : '';
- var rgx = /(\d+)(\d{3})/;
+ var x = nStr.split('.'),
+ x1 = x[0],
+ x2 = x.length > 1 ? '.' + x[1] : '',
+ rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
- x1 = x1.replace(rgx, '$1' + " " + '$2');
+ x1 = x1.replace(rgx, '$1' + ' ' + '$2');
}
return x1 + x2;
}
@@ -42,7 +42,7 @@ function incUnreadsFeed(article, feed_id, nb) {
//Update unread: feed
var elem = $('#' + feed_id + '>.feed').get(0),
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0,
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0,
feed_priority = elem ? (parseInt(elem.getAttribute('data-priority'), 10) || 0) : 0;
if (elem) {
elem.setAttribute('data-unread', numberFormat(Math.max(0, feed_unreads + nb)));
@@ -50,7 +50,7 @@ function incUnreadsFeed(article, feed_id, nb) {
//Update unread: category
elem = $('#' + feed_id).parent().prevAll('.category').children(':first').get(0);
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
if (elem) {
elem.setAttribute('data-unread', numberFormat(Math.max(0, feed_unreads + nb)));
}
@@ -59,7 +59,7 @@ function incUnreadsFeed(article, feed_id, nb) {
if (feed_priority > 0) {
elem = $('#aside_flux .all').children(':first').get(0);
if (elem) {
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
elem.setAttribute('data-unread', numberFormat(Math.max(0, feed_unreads + nb)));
}
}
@@ -68,22 +68,28 @@ function incUnreadsFeed(article, feed_id, nb) {
if (article && article.closest('div').hasClass('favorite')) {
elem = $('#aside_flux .favorites').children(':first').get(0);
if (elem) {
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
elem.setAttribute('data-unread', numberFormat(Math.max(0, feed_unreads + nb)));
}
}
var isCurrentView = false;
//Update unread: title
- document.title = document.title.replace(/((?: \(\d+\))?)( · .*?)((?: \(\d+\))?)$/, function (m, p1, p2, p3) {
+ document.title = document.title.replace(/^([^\(]*)((?: \([0-9 ]+\))?)( · .*?)((?: \([0-9 ]+\))?)$/, function(m, p1, p2, p3, p4) {
var $feed = $('#' + feed_id);
- if (article || ($feed.closest('.active').length > 0 && $feed.siblings('.active').length === 0)) {
+
+ p2 = p2.replace(/ /g, '');
+ p4 = p4.replace(/ /g, '');
+
+ if ($('.category.all > .active').length == 0 && $('.category.favorites > .active').length == 0) { // If the current page is not the home page or the favorites page
isCurrentView = true;
- return incLabel(p1, nb) + p2 + incLabel(p3, feed_priority > 0 ? nb : 0);
+ return p1 + incLabel(p2, nb) + p3 + incLabel(p4, feed_priority > 0 ? nb : 0);
} else {
- return p1 + p2 + incLabel(p3, feed_priority > 0 ? nb : 0);
+ return p1 + p3 + incLabel(p4, feed_priority > 0 ? nb : 0);
}
+
});
+
return isCurrentView;
}
@@ -157,7 +163,7 @@ function mark_favorite(active) {
if (active.closest('div').hasClass('not_read')) {
var elem = $('#aside_flux .favorites').children(':first').get(0),
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
if (elem) {
elem.setAttribute('data-unread', numberFormat(Math.max(0, feed_unreads + inc)));
}
@@ -544,7 +550,7 @@ function refreshUnreads() {
$.each(data, function(feed_id, nbUnreads) {
feed_id = 'f_' + feed_id;
var elem = $('#' + feed_id + '>.feed').get(0),
- feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
+ feed_unreads = elem ? (parseInt(elem.getAttribute('data-unread').replace(' ', ''), 10) || 0) : 0;
if ((incUnreadsFeed(null, feed_id, nbUnreads - feed_unreads) || isAll) && //Update of current view?
(nbUnreads - feed_unreads > 0)) {
$('#new-article').show();
@@ -649,9 +655,9 @@ function init_loginForm() {
c = dcodeIO.bcrypt.hashSync(data.nonce + s, strong ? 4 : poormanSalt());
$('#challenge').val(c);
if (s == '' || c == '') {
- alert('Crypto error!');
+ alert('Crypto error!');
} else {
- success = true;
+ success = true;
}
} catch (e) {
alert('Crypto exception! ' + e);
@@ -755,34 +761,6 @@ function init_print_action() {
});
}
-function init_number_formats() {
- // Init global counter
- var elem = $('#aside_flux .categories li .all a');
- elem.attr('data-unread', numberFormat(elem.attr('data-unread')));
-
- // Init favorites counters
- elem = $('#aside_flux .categories li .favorites a');
- elem.attr('data-unread', numberFormat(elem.attr('data-unread')));
-
- var numFavorites = elem.text().replace(/((?: \(\d+\))?\s*)$/, function (m, p1) {
- return numberFormat(p1)
- });
- elem.text(numFavorites);
-
- // Init feeds counters
- $('#aside_flux .categories li .stick').each(function() {
- // Category-level counter
- elem = $(this).find('a');
- elem.attr('data-unread', numberFormat(elem.attr('data-unread')));
-
- // Feeds counters
- $(this).parent().find('ul.feeds li.item').each(function() {
- elem = $(this).find('a.feed'); // There are two links here. a.feed is the title.
- elem.attr('data-unread', numberFormat(elem.attr('data-unread')));
- });
- });
-}
-
function init_all() {
if (!(window.$ && window.url_freshrss && ((!full_lazyload) || $.fn.lazyload))) {
if (window.console) {
@@ -813,7 +791,7 @@ function init_all() {
init_print_action();
window.setInterval(refreshUnreads, 120000);
}
- init_number_formats();
+
if (window.console) {
console.log('FreshRSS init done.');
}