This commit is contained in:
Athou
2013-04-09 10:39:02 +02:00
parent 7d676d4d3e
commit 1f8aa26571
6 changed files with 20 additions and 7 deletions

View File

@@ -95,12 +95,12 @@ module.controller('CategoryTreeCtrl', function($scope, $timeout, $stateParams,
$scope.SubscriptionService = SubscriptionService;
var unreadCount = function(category) {
$scope.unreadCount = function(category) {
var count = 0;
var i;
if (category.children) {
for (i = 0; i < category.children.length; i++) {
count = count + unreadCount(category.children[i]);
count = count + $scope.unreadCount(category.children[i]);
}
}
if (category.feeds) {
@@ -113,7 +113,7 @@ module.controller('CategoryTreeCtrl', function($scope, $timeout, $stateParams,
};
var rootUnreadCount = function() {
return unreadCount($scope.SubscriptionService.subscriptions);
return $scope.unreadCount($scope.SubscriptionService.subscriptions);
};
$scope.$watch(rootUnreadCount, function(value) {
@@ -125,7 +125,7 @@ module.controller('CategoryTreeCtrl', function($scope, $timeout, $stateParams,
});
$scope.formatCategoryName = function(category) {
var count = unreadCount(category);
var count = $scope.unreadCount(category);
var label = category.name;
if (count > 0) {
label = label + ' (' + count + ')';

View File

@@ -49,6 +49,7 @@ module.directive('category', function($compile) {
selectedId : '=',
feedClick : '&',
categoryClick : '&',
unreadCount : '&',
formatCategoryName : '&',
formatFeedName : '&'
},
@@ -59,7 +60,8 @@ module.directive('category', function($compile) {
var ul = element.find('ul');
var html = '<category ng-repeat="child in node.children" node="child" feed-click="feedClick({id:id})" ';
html = html + 'category-click="categoryClick({id:id})" selected-type="selectedType" selected-id="selectedId" ';
html = html + 'format-category-name="formatCategoryName({category:category})" format-feed-name="formatFeedName({feed:feed})"> ';
html = html + 'format-category-name="formatCategoryName({category:category})" format-feed-name="formatFeedName({feed:feed})" ';
html = html + 'unread-count="unreadCount({category:category})">';
html = html + '</category>';
ul.prepend(html);
$compile(ul.contents())(scope);