From 62b5d4f5c8e85c7f5918b49b1270865621bbf5dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Tue, 5 May 2015 11:23:27 +0200 Subject: [PATCH] api: export list of backoffice menu items (#7146) --- wcs/api.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/wcs/api.py b/wcs/api.py index e97ea0a..55bea7b 100644 --- a/wcs/api.py +++ b/wcs/api.py @@ -17,6 +17,7 @@ import base64 import hmac import hashlib +import json import datetime import urllib import urllib2 @@ -154,7 +155,8 @@ class ApiFormsDirectory(Directory): class ApiDirectory(Directory): - _q_exports = ['forms', ('reverse-geocoding', 'reverse_geocoding')] + _q_exports = ['forms', ('reverse-geocoding', 'reverse_geocoding'), + ('backoffice.menu.json', 'backoffice_menu')] forms = ApiFormsDirectory() @@ -170,3 +172,14 @@ class ApiDirectory(Directory): get_response().set_content_type('application/json') return urllib2.urlopen('%s/reverse?format=json&zoom=18&addressdetails=1&lat=%s&lon=%s' % ( nominatim_url, lat, lon)).read() + + def backoffice_menu(self): + from wcs.backoffice.root import RootDirectory as BackofficeRootDirectory + get_response().set_content_type('application/json') + if get_request().get_environ('HTTP_ORIGIN'): + get_response().set_header('Access-Control-Allow-Origin', + get_request().get_environ('HTTP_ORIGIN')) + get_response().set_header('Access-Control-Allow-Credentials', 'true') + menu_items = [] + backoffice_url = get_publisher().get_backoffice_url() + return json.dumps(BackofficeRootDirectory().get_menu_items()) -- 2.1.4