summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Maia <patrickjourdanmaia@gmail.com>2014-08-07 18:31:59 -0300
committerPatrick Maia <patrickjourdanmaia@gmail.com>2014-08-08 13:44:44 -0300
commit08e622c79a1f128fbafe7a5b2c8001bed18b0c4f (patch)
tree3c0c6dd0976c32318450f54e9285ffd84e9e186a
parentbd624bdd14ef63186064b2e39fc422f328b24b26 (diff)
moves disabled features list to service
-rw-r--r--fake-service/lib/pixelated_service/server.rb1
-rw-r--r--service/app/pixelated_user_agent.py11
-rw-r--r--web-ui/app/js/features/features.js18
3 files changed, 26 insertions, 4 deletions
diff --git a/fake-service/lib/pixelated_service/server.rb b/fake-service/lib/pixelated_service/server.rb
index d4b9e354..8b29af83 100644
--- a/fake-service/lib/pixelated_service/server.rb
+++ b/fake-service/lib/pixelated_service/server.rb
@@ -17,6 +17,7 @@ module PixelatedService
get '/' do File.read(File.join(settings.root, 'public', 'index.html')) end
end
+ get '/disabled_features' do json [] end
get '/mails' do json mails(params["q"], (params["p"] || 0).to_i, (params["w"] || -1).to_i) end
delete '/mails' do json delete_mails(params["q"], (params["p"] || 0).to_i, (params["w"] || -1).to_i, params["idents"]) end
post '/mails/read' do json readmails(params["idents"], true) end
diff --git a/service/app/pixelated_user_agent.py b/service/app/pixelated_user_agent.py
index 5b6e4b38..75d202ee 100644
--- a/service/app/pixelated_user_agent.py
+++ b/service/app/pixelated_user_agent.py
@@ -22,6 +22,17 @@ def respond_json(entity):
response = json.dumps(entity)
return Response(response=response, mimetype="application/json")
+@app.route('/disabled_features')
+def disabled_features():
+ return respond_json([
+ 'saveDraft',
+ 'createNewTag',
+ 'replySection',
+ 'removeTag',
+ 'encryptionStatus',
+ 'contacts'
+ ])
+
@app.route('/mails', methods=['POST'])
def save_draft_or_send():
diff --git a/web-ui/app/js/features/features.js b/web-ui/app/js/features/features.js
index 74efdd07..7d0eb0c6 100644
--- a/web-ui/app/js/features/features.js
+++ b/web-ui/app/js/features/features.js
@@ -1,13 +1,23 @@
define([], function() {
- var disabledFeatures;
+ var cachedDisabledFeatures;
function getFeatures() {
- disabledFeatures = disabledFeatures || fetchDisabledFeatures();
- return disabledFeatures;
+ cachedDisabledFeatures = cachedDisabledFeatures || fetchDisabledFeatures();
+ return cachedDisabledFeatures;
}
function fetchDisabledFeatures() {
- return ['saveDraft', 'createNewTag', 'replySection'];
+ var disabledFeatures;
+ $.ajax('/disabled_features', {
+ async: false,
+ success: function (results){
+ disabledFeatures = results;
+ },
+ error: function () {
+ console.error('Could not load feature toggles');
+ }
+ });
+ return disabledFeatures;
}
return {