// Generated by CoffeeScript 1.6.3 /* ownCloud - News @author Bernhard Posselt @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com This library is free software; you can redistribute it and/or modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE License as published by the Free Software Foundation; either version 3 of the License, or any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU AFFERO GENERAL PUBLIC LICENSE for more details. You should have received a copy of the GNU Affero General Public License along with this library. If not, see . */ (function() { var __hasProp = {}.hasOwnProperty, __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; angular.module('News').factory('StarredBusinessLayer', [ '_BusinessLayer', 'StarredCount', 'Persistence', 'ActiveFeed', 'FeedType', 'ItemModel', function(_BusinessLayer, StarredCount, Persistence, ActiveFeed, FeedType, ItemModel) { var StarredBusinessLayer; StarredBusinessLayer = (function(_super) { __extends(StarredBusinessLayer, _super); function StarredBusinessLayer(_starredCount, feedType, persistence, activeFeed, itemModel) { this._starredCount = _starredCount; StarredBusinessLayer.__super__.constructor.call(this, activeFeed, persistence, itemModel, feedType.Starred); } StarredBusinessLayer.prototype.isVisible = function() { if (this.isActive(0)) { return true; } else { return this._starredCount.getStarredCount() > 0; } }; StarredBusinessLayer.prototype.getUnreadCount = function() { return this._starredCount.getStarredCount(); }; StarredBusinessLayer.prototype.increaseCount = function() { return this._starredCount.setStarredCount(this._starredCount.getStarredCount() + 1); }; StarredBusinessLayer.prototype.decreaseCount = function() { return this._starredCount.setStarredCount(this._starredCount.getStarredCount() - 1); }; return StarredBusinessLayer; })(_BusinessLayer); return new StarredBusinessLayer(StarredCount, FeedType, Persistence, ActiveFeed, ItemModel); } ]); }).call(this);