mirror of
https://github.com/FreshRSS/FreshRSS.git
synced 2026-10-24 03:58:33 -04:00
Begin to fix JS for new aside
This commit is contained in:
1 parent
8769931a68
commit
4204336bd6
4 files changed
+42
-40
No files matched your search
@@ -22,15 +22,15 @@
|
||||
<form id="mark-read-aside" method="post" style="display: none"></form>
|
||||
|
||||
<ul class="tree">
|
||||
<li class="tree-folder<?php echo FreshRSS_Context::isCurrentGet('a') ? ' active' : ''; ?>">
|
||||
<li class="tree-folder all<?php echo FreshRSS_Context::isCurrentGet('a') ? ' active' : ''; ?>">
|
||||
<div class="tree-folder-title">
|
||||
<?php echo _i('all'); ?> <a data-unread="<?php echo format_number(FreshRSS_Context::$total_unread); ?>" href="<?php echo _url('index', 'index'); ?>"><?php echo _t('main_stream'); ?></a>
|
||||
<?php echo _i('all'); ?> <a class="title" data-unread="<?php echo format_number(FreshRSS_Context::$total_unread); ?>" href="<?php echo _url('index', 'index'); ?>"><?php echo _t('main_stream'); ?></a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="tree-folder<?php echo FreshRSS_Context::isCurrentGet('s') ? ' active' : ''; ?>">
|
||||
<li class="tree-folder favorites<?php echo FreshRSS_Context::isCurrentGet('s') ? ' active' : ''; ?>">
|
||||
<div class="tree-folder-title">
|
||||
<?php echo _i('bookmark'); ?> <a data-unread="<?php echo format_number(FreshRSS_Context::$total_starred['unread']); ?>" href="<?php echo _url('index', 'index', 'get', 's'); ?>"><?php echo _t('favorite_feeds', format_number(FreshRSS_Context::$total_starred['all'])); ?></a>
|
||||
<?php echo _i('bookmark'); ?> <a class="title" data-unread="<?php echo format_number(FreshRSS_Context::$total_starred['unread']); ?>" href="<?php echo _url('index', 'index', 'get', 's'); ?>"><?php echo _t('favorite_feeds', format_number(FreshRSS_Context::$total_starred['all'])); ?></a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
?>
|
||||
<li class="tree-folder<?php echo $c_active ? ' active' : ''; ?>" data-unread="<?php echo $cat->nbNotRead(); ?>">
|
||||
<div class="tree-folder-title">
|
||||
<?php echo _i('category'); ?> <a data-unread="<?php echo format_number($cat->nbNotRead()); ?>" href="<?php echo _url('index', 'index', 'get', 'c_' . $cat->id()); ?>"><?php echo $cat->name(); ?></a>
|
||||
<a class="dropdown-toggle" href="#"><?php echo _i($c_show ? 'up' : 'down'); ?></a>
|
||||
<a class="title" data-unread="<?php echo format_number($cat->nbNotRead()); ?>" href="<?php echo _url('index', 'index', 'get', 'c_' . $cat->id()); ?>"><?php echo $cat->name(); ?></a>
|
||||
</div>
|
||||
|
||||
<ul class="tree-folder-items<?php echo $c_show ? ' active' : ''; ?>">
|
||||
@@ -52,14 +53,14 @@
|
||||
foreach ($feeds as $feed) {
|
||||
$f_active = FreshRSS_Context::isCurrentGet('f_' . $feed->id());
|
||||
?>
|
||||
<li class="item<?php echo $f_active ? ' active' : ''; ?><?php echo $feed->inError() ? ' error' : ''; ?><?php echo $feed->nbEntries() <= 0 ? ' empty' : ''; ?>" data-unread="<?php echo $feed->nbNotRead(); ?>">
|
||||
<li id="f_<?php echo $feed->id(); ?>" class="item<?php echo $f_active ? ' active' : ''; ?><?php echo $feed->inError() ? ' error' : ''; ?><?php echo $feed->nbEntries() <= 0 ? ' empty' : ''; ?>" data-unread="<?php echo $feed->nbNotRead(); ?>" data-priority="<?php echo $feed->priority(); ?>">
|
||||
<div class="dropdown">
|
||||
<div class="dropdown-target"></div>
|
||||
<a class="dropdown-toggle" data-fweb="<?php echo $feed->website(); ?>"><?php echo _i('configure'); ?></a>
|
||||
<?php /* feed_config_template */ ?>
|
||||
</div>
|
||||
<img class="favicon" src="<?php echo $feed->favicon(); ?>" alt="✇" />
|
||||
<a data-unread="<?php echo format_number($feed->nbNotRead()); ?>" data-priority="<?php echo $feed->priority(); ?>" href="<?php echo _url('index', 'index', 'get', 'f_' . $feed->id()); ?>"><?php echo $feed->name(); ?></a>
|
||||
<a data-unread="<?php echo format_number($feed->nbNotRead()); ?>" href="<?php echo _url('index', 'index', 'get', 'f_' . $feed->id()); ?>"><?php echo $feed->name(); ?></a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
</ul>
|
||||
|
||||
+32
-31
@@ -56,31 +56,31 @@ function incLabel(p, inc, spaceAfter) {
|
||||
|
||||
function incUnreadsFeed(article, feed_id, nb) {
|
||||
//Update unread: feed
|
||||
var elem = $('#' + feed_id + '>.feed').get(0),
|
||||
var elem = $('#' + feed_id).get(0),
|
||||
feed_unreads = elem ? str2int(elem.getAttribute('data-unread')) : 0,
|
||||
feed_priority = elem ? str2int(elem.getAttribute('data-priority')) : 0;
|
||||
if (elem) {
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
elem = $(elem).closest('li').get(0);
|
||||
elem.setAttribute('data-unread', feed_unreads + nb);
|
||||
elem = $(elem).children('a').get(0);
|
||||
if (elem) {
|
||||
elem.setAttribute('data-unread', feed_unreads + nb);
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
}
|
||||
}
|
||||
|
||||
//Update unread: category
|
||||
elem = $('#' + feed_id).parent().prevAll('.category').children(':first').get(0);
|
||||
elem = $('#' + feed_id).parents('.tree-folder').get(0);
|
||||
feed_unreads = elem ? str2int(elem.getAttribute('data-unread')) : 0;
|
||||
if (elem) {
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
elem = $(elem).closest('li').get(0);
|
||||
elem.setAttribute('data-unread', feed_unreads + nb);
|
||||
elem = $(elem).find('.tree-folder-title .title').get(0);
|
||||
if (elem) {
|
||||
elem.setAttribute('data-unread', feed_unreads + nb);
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
}
|
||||
}
|
||||
|
||||
//Update unread: all
|
||||
if (feed_priority > 0) {
|
||||
elem = $('#aside_feed .all').children(':first').get(0);
|
||||
elem = $('#aside_feed .all .tree-folder-title .title').get(0);
|
||||
if (elem) {
|
||||
feed_unreads = elem ? str2int(elem.getAttribute('data-unread')) : 0;
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
@@ -89,7 +89,7 @@ function incUnreadsFeed(article, feed_id, nb) {
|
||||
|
||||
//Update unread: favourites
|
||||
if (article && article.closest('div').hasClass('favorite')) {
|
||||
elem = $('#aside_feed .favorites').children(':first').get(0);
|
||||
elem = $('#aside_feed .favorites .tree-folder-title .title').get(0);
|
||||
if (elem) {
|
||||
feed_unreads = elem ? str2int(elem.getAttribute('data-unread')) : 0;
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + nb));
|
||||
@@ -97,7 +97,7 @@ function incUnreadsFeed(article, feed_id, nb) {
|
||||
}
|
||||
|
||||
var isCurrentView = false;
|
||||
//Update unread: title
|
||||
// Update unread: title
|
||||
document.title = document.title.replace(/^((?:\([ 0-9]+\) )?)/, function (m, p1) {
|
||||
var $feed = $('#' + feed_id);
|
||||
if (article || ($feed.closest('.active').length > 0 && $feed.siblings('.active').length === 0)) {
|
||||
@@ -194,7 +194,7 @@ function mark_favorite(active) {
|
||||
}
|
||||
$b.find('.icon').replaceWith(data.icon);
|
||||
|
||||
var favourites = $('.favorites>a').contents().last().get(0);
|
||||
var favourites = $('#aside_feed .favorites .tree-folder-title .title').contents().last().get(0);
|
||||
if (favourites && favourites.textContent) {
|
||||
favourites.textContent = favourites.textContent.replace(/((?: \([ 0-9]+\))?\s*)$/, function (m, p1) {
|
||||
return incLabel(p1, inc, false);
|
||||
@@ -202,7 +202,7 @@ function mark_favorite(active) {
|
||||
}
|
||||
|
||||
if (active.closest('div').hasClass('not_read')) {
|
||||
var elem = $('#aside_feed .favorites').children(':first').get(0),
|
||||
var elem = $('#aside_feed .favorites .tree-folder-title .title').get(0),
|
||||
feed_unreads = elem ? str2int(elem.getAttribute('data-unread')) : 0;
|
||||
if (elem) {
|
||||
elem.setAttribute('data-unread', numberFormat(feed_unreads + inc));
|
||||
@@ -292,42 +292,42 @@ function next_entry() {
|
||||
}
|
||||
|
||||
function prev_feed() {
|
||||
var active_feed = $("#aside_feed .feeds li.active");
|
||||
var active_feed = $("#aside_feed .tree-folder-items .item.active");
|
||||
if (active_feed.length > 0) {
|
||||
active_feed.prevAll(':visible:first').find('a.feed').each(function(){this.click();});
|
||||
active_feed.prevAll(':visible:first').find('a').each(function(){this.click();});
|
||||
} else {
|
||||
last_feed();
|
||||
}
|
||||
}
|
||||
|
||||
function next_feed() {
|
||||
var active_feed = $("#aside_feed .feeds li.active");
|
||||
var active_feed = $("#aside_feed .tree-folder-items .item.active");
|
||||
if (active_feed.length > 0) {
|
||||
active_feed.nextAll(':visible:first').find('a.feed').each(function(){this.click();});
|
||||
active_feed.nextAll(':visible:first').find('a').each(function(){this.click();});
|
||||
} else {
|
||||
first_feed();
|
||||
}
|
||||
}
|
||||
|
||||
function first_feed() {
|
||||
var feed = $("#aside_feed .feeds.active li:visible:first");
|
||||
var feed = $("#aside_feed .tree-folder-items.active .item:visible:first");
|
||||
if (feed.length > 0) {
|
||||
feed.find('a')[1].click();
|
||||
}
|
||||
}
|
||||
|
||||
function last_feed() {
|
||||
var feed = $("#aside_feed .feeds.active li:visible:last");
|
||||
var feed = $("#aside_feed .tree-folder-items.active .item:visible:last");
|
||||
if (feed.length > 0) {
|
||||
feed.find('a')[1].click();
|
||||
}
|
||||
}
|
||||
|
||||
function prev_category() {
|
||||
var active_cat = $("#aside_feed .category.stick.active");
|
||||
var active_cat = $("#aside_feed .tree-folder.active");
|
||||
|
||||
if (active_cat.length > 0) {
|
||||
var prev_cat = active_cat.parent('li').prevAll(':visible:first').find('.category.stick a.btn');
|
||||
var prev_cat = active_cat.prevAll(':visible:first').find('.tree-folder-title .title');
|
||||
if (prev_cat.length > 0) {
|
||||
prev_cat[0].click();
|
||||
}
|
||||
@@ -338,10 +338,10 @@ function prev_category() {
|
||||
}
|
||||
|
||||
function next_category() {
|
||||
var active_cat = $("#aside_feed .category.stick.active");
|
||||
var active_cat = $("#aside_feed .tree-folder.active");
|
||||
|
||||
if (active_cat.length > 0) {
|
||||
var next_cat = active_cat.parent('li').nextAll(':visible:first').find('.category.stick a.btn');
|
||||
var next_cat = active_cat.nextAll(':visible:first').find('.tree-folder-title .title');
|
||||
if (next_cat.length > 0) {
|
||||
next_cat[0].click();
|
||||
}
|
||||
@@ -352,16 +352,16 @@ function next_category() {
|
||||
}
|
||||
|
||||
function first_category() {
|
||||
var cat = $("#aside_feed .category.stick:visible:first");
|
||||
var cat = $("#aside_feed .tree-folder:visible:first");
|
||||
if (cat.length > 0) {
|
||||
cat.find('a.btn')[0].click();
|
||||
cat.find('.tree-folder-title .title')[0].click();
|
||||
}
|
||||
}
|
||||
|
||||
function last_category() {
|
||||
var cat = $("#aside_feed .category.stick:visible:last");
|
||||
var cat = $("#aside_feed .tree-folder:visible:last");
|
||||
if (cat.length > 0) {
|
||||
cat.find('a.btn')[0].click();
|
||||
cat.find('.tree-folder-title .title')[0].click();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -487,7 +487,8 @@ function init_column_categories() {
|
||||
if (context['current_view'] !== 'normal') {
|
||||
return;
|
||||
}
|
||||
$('#aside_feed').on('click', '.category>a.dropdown-toggle', function () {
|
||||
|
||||
$('#aside_feed').on('click', '.tree-folder>.tree-folder-title>a.dropdown-toggle', function () {
|
||||
$(this).children().each(function() {
|
||||
if (this.alt === '▽') {
|
||||
this.src = this.src.replace('/icons/down.', '/icons/up.');
|
||||
@@ -497,12 +498,12 @@ function init_column_categories() {
|
||||
this.alt = '▽';
|
||||
}
|
||||
});
|
||||
$(this).parent().next(".feeds").slideToggle();
|
||||
$(this).parent().next(".tree-folder-items").slideToggle();
|
||||
return false;
|
||||
});
|
||||
$('#aside_feed').on('click', '.feeds .dropdown-toggle', function () {
|
||||
$('#aside_feed').on('click', '.tree-folder-items .item .dropdown-toggle', function () {
|
||||
if ($(this).nextAll('.dropdown-menu').length === 0) {
|
||||
var feed_id = $(this).closest('li').attr('id').substr(2),
|
||||
var feed_id = $(this).closest('.item').attr('id').substr(2),
|
||||
feed_web = $(this).data('fweb'),
|
||||
template = $('#feed_config_template').html().replace(/!!!!!!/g, feed_id).replace('http://example.net/', feed_web);
|
||||
$(this).attr('href', '#dropdown-' + feed_id).prev('.dropdown-target').attr('id', 'dropdown-' + feed_id).parent().append(template);
|
||||
|
||||
@@ -565,7 +565,7 @@ a.btn {
|
||||
position: relative;
|
||||
margin: 5px 0;
|
||||
}
|
||||
.aside_feed .tree-folder-title > a:not([data-unread="0"]):after {
|
||||
.aside_feed .tree-folder-title > .title:not([data-unread="0"]):after {
|
||||
position: absolute;
|
||||
top: 3px; right: 3px;
|
||||
padding: 0 5px;
|
||||
|
||||
@@ -395,7 +395,7 @@ a.btn {
|
||||
.aside_feed.state_unread .tree-folder .item:not(.active)[data-unread="0"] {
|
||||
display: none;
|
||||
}
|
||||
.aside_feed .tree-folder-title > a:not([data-unread="0"]):after {
|
||||
.aside_feed .tree-folder-title > .title:not([data-unread="0"]):after {
|
||||
content: attr(data-unread);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user