summaryrefslogtreecommitdiffstats
path: root/js/app/services
diff options
context:
space:
mode:
authorBernhard Posselt <nukeawhale@gmail.com>2013-04-15 12:06:14 +0200
committerBernhard Posselt <nukeawhale@gmail.com>2013-04-15 12:06:14 +0200
commit360966ab4bdafd15cdef21e34492f5d7d3151b74 (patch)
tree0d196a502d41a5234a2da5903fda09e7d51ddaed /js/app/services
parentfe2bb06a2cc7bf3cd70388d6179728a600eabc9f (diff)
get language from server and save it in a language object, dont use a seperate file for instantiating controllers
Diffstat (limited to 'js/app/services')
-rw-r--r--js/app/services/language.coffee37
-rw-r--r--js/app/services/persistence.coffee10
-rw-r--r--js/app/services/services.coffee5
3 files changed, 49 insertions, 3 deletions
diff --git a/js/app/services/language.coffee b/js/app/services/language.coffee
new file mode 100644
index 000000000..85a405fc7
--- /dev/null
+++ b/js/app/services/language.coffee
@@ -0,0 +1,37 @@
+###
+
+ownCloud - News
+
+@author Bernhard Posselt
+@copyright 2012 Bernhard Posselt nukeawhale@gmail.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 <http://www.gnu.org/licenses/>.
+
+###
+
+angular.module('News').factory 'Language', ->
+
+ class Language
+
+ constructor: ->
+ @_language = 'en'
+
+ handle: (data) ->
+ @_language = data.language
+
+ getLanguage: ->
+ return @_language
+
+
+ return new Language()
diff --git a/js/app/services/persistence.coffee b/js/app/services/persistence.coffee
index b6a9cd2c6..2b627301a 100644
--- a/js/app/services/persistence.coffee
+++ b/js/app/services/persistence.coffee
@@ -47,7 +47,8 @@ angular.module('News').factory '_Persistence', ->
@getAllFeeds(triggerHideRead)
@userSettingsRead(triggerHideRead)
@getStarredItems(triggerHideRead)
-
+ @userSettingsLanguage()
+
###
ITEM CONTROLLER
@@ -320,6 +321,13 @@ angular.module('News').factory '_Persistence', ->
@_request.post 'news_usersettings_read_hide', data
+ userSettingsLanguage: (callback=null) ->
+ callback or= ->
+ data =
+ onSuccess: callback
+ @_request.get 'news_usersettings_language', data
+
+
_triggerHideRead: ->
@_$rootScope.$broadcast('triggerHideRead')
diff --git a/js/app/services/services.coffee b/js/app/services/services.coffee
index 83e76e20e..19e4b990d 100644
--- a/js/app/services/services.coffee
+++ b/js/app/services/services.coffee
@@ -82,14 +82,15 @@ angular.module('News').factory 'ItemModel', ['_ItemModel', (_ItemModel) ->
angular.module('News').factory 'Publisher',
['_Publisher', 'ActiveFeed', 'ShowAll', 'StarredCount', 'ItemModel',
-'FolderModel', 'FeedModel',
+'FolderModel', 'FeedModel', 'Language',
(_Publisher, ActiveFeed, ShowAll, StarredCount, ItemModel,
-FolderModel, FeedModel) ->
+FolderModel, FeedModel, Language) ->
# register items at publisher to automatically add incoming items
publisher = new _Publisher()
publisher.subscribeObjectTo(ActiveFeed, 'activeFeed')
publisher.subscribeObjectTo(ShowAll, 'showAll')
+ publisher.subscribeObjectTo(Language, 'language')
publisher.subscribeObjectTo(StarredCount, 'starred')
publisher.subscribeObjectTo(FolderModel, 'folders')
publisher.subscribeObjectTo(FeedModel, 'feeds')