mirror of
https://github.com/Athou/commafeed.git
synced 2026-03-21 21:37:29 +00:00
fix markAsRead propagation
This commit is contained in:
@@ -55,27 +55,25 @@ module.controller('CategoryTreeCtrl', function($scope, $routeParams, $location,
|
|||||||
$location.path('/feeds/view/category/' + id);
|
$location.path('/feeds/view/category/' + id);
|
||||||
};
|
};
|
||||||
|
|
||||||
var markAsRead = function(children, entry, read) {
|
var markAsRead = function(node, entry, read) {
|
||||||
for ( var i = 0; i < children.length; i++) {
|
if (node.children) {
|
||||||
var child = children[i];
|
for ( var i = 0; i < node.children.length; i++) {
|
||||||
if (child.children) {
|
markAsRead(node.children[i], entry, read);
|
||||||
markAsRead(child.children, entry, read);
|
|
||||||
}
|
}
|
||||||
if (child.feeds) {
|
}
|
||||||
for ( var j = 0; j < child.feeds.length; j++) {
|
if (node.feeds) {
|
||||||
var feed = child.feeds[j];
|
for ( var i = 0; i < node.feeds.length; i++) {
|
||||||
if (feed.id == entry.feedId) {
|
var feed = node.feeds[i];
|
||||||
var c = read ? -1 : 1;
|
if (feed.id == entry.feedId) {
|
||||||
feed.unread = feed.unread + c;
|
var c = read ? -1 : 1;
|
||||||
}
|
feed.unread = feed.unread + c;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
$scope.$on('markAsRead', function(event, args) {
|
$scope.$on('markAsRead', function(event, args) {
|
||||||
console.log(args.entry)
|
markAsRead($scope.root, args.entry, args.read)
|
||||||
markAsRead($scope.root.children, args.entry, args.read)
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -3,28 +3,26 @@
|
|||||||
<div class="span2" ng-controller="CategoryTreeCtrl">
|
<div class="span2" ng-controller="CategoryTreeCtrl">
|
||||||
<div class="css-treeview">
|
<div class="css-treeview">
|
||||||
<ul>
|
<ul>
|
||||||
<category node="root" feed-click="feedClicked(id)" category-click="categoryClicked(id)"
|
<category node="root" feed-click="feedClicked(id)"
|
||||||
selected-type="selectedType" selected-id="selectedId"
|
category-click="categoryClicked(id)" selected-type="selectedType"
|
||||||
format-category-name="formatCategoryName(category)" format-feed-name="formatFeedName(feed)">
|
selected-id="selectedId"
|
||||||
</category>
|
format-category-name="formatCategoryName(category)"
|
||||||
<!-- <li ng-repeat="node in root.children"> -->
|
format-feed-name="formatFeedName(feed)"> </category>
|
||||||
<!-- <category node="node" feed-click="feedClicked(id)" category-click="categoryClicked(id)" -->
|
|
||||||
<!-- selected-type="selectedType" selected-id="selectedId" -->
|
|
||||||
<!-- format-category-name="formatCategoryName(category)" format-feed-name="formatFeedName(feed)"> -->
|
|
||||||
<!-- </category> -->
|
|
||||||
<!-- </li> -->
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="span10" ng-controller="FeedListCtrl">
|
<div class="span10" ng-controller="FeedListCtrl">
|
||||||
<span>{{entryList.name}}</span><span ng-show="selectedType == 'category'"> »</span>
|
<span>{{entryList.name}}</span><span
|
||||||
|
ng-show="selectedType == 'category'"> »</span>
|
||||||
<div class="accordion" id="feed-accordion">
|
<div class="accordion" id="feed-accordion">
|
||||||
<div class="accordion-group" ng-repeat="entry in entryList.entries">
|
<div class="accordion-group" ng-repeat="entry in entryList.entries">
|
||||||
<div class="accordion-heading">
|
<div class="accordion-heading">
|
||||||
<a class="accordion-toggle" data-toggle="collapse" ng-click="markAsRead(entry)" ng-class="{unread: entry.read == false}"
|
<a class="accordion-toggle" data-toggle="collapse"
|
||||||
|
ng-click="markAsRead(entry)"
|
||||||
|
ng-class="{unread: entry.read == false}"
|
||||||
data-parent="#feed-accordion" href="{{'#feed-body' + $index}}">
|
data-parent="#feed-accordion" href="{{'#feed-body' + $index}}">
|
||||||
<span ng-show="selectedType == 'category'">{{entry.feedName}} - </span>{{entry.title}}
|
<span ng-show="selectedType == 'category'">{{entry.feedName}}
|
||||||
<span class="pull-right">{{entry.date}}</span>
|
- </span>{{entry.title}} <span class="pull-right">{{entry.date}}</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div id="{{'feed-body' + $index}}" class="accordion-body collapse">
|
<div id="{{'feed-body' + $index}}" class="accordion-body collapse">
|
||||||
@@ -34,6 +32,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
Reference in New Issue
Block a user