app/soc/views/helpers/response_helpers.py
changeset 200 8e3a18cead22
parent 190 b1351bf81064
child 201 bc7f0ac07fcb
equal deleted inserted replaced
199:14ede160ef16 200:8e3a18cead22
    39   # In the development server
    39   # In the development server
    40   from google.appengine.runtime.apiproxy_errors import DeadlineExceededError
    40   from google.appengine.runtime.apiproxy_errors import DeadlineExceededError
    41 
    41 
    42 from soc.logic import system
    42 from soc.logic import system
    43 from soc.logic.site import id_user
    43 from soc.logic.site import id_user
       
    44 from soc.logic.site import sidebar
    44 
    45 
       
    46 from soc.views.helpers import html_menu
    45 from soc.views.helpers import request_helpers
    47 from soc.views.helpers import request_helpers
    46 from soc.views.helpers import template_helpers
    48 from soc.views.helpers import template_helpers
    47 
    49 
    48 
    50 
    49 def respond(request, template, context=None, response_args=None):
    51 def respond(request, template, context=None, response_args=None):
   105         context['id']
   107         context['id']
   106       'is_admin': True if users.is_current_user_admin() is True
   108       'is_admin': True if users.is_current_user_admin() is True
   107       'is_debug': True if system.isDebug() is True
   109       'is_debug': True if system.isDebug() is True
   108       'sign_in': a Google Account login URL
   110       'sign_in': a Google Account login URL
   109       'sign_out': a Google Account logout URL
   111       'sign_out': a Google Account logout URL
       
   112       'sidebar_menu_html': an HTML string that renders the sidebar menu
   110     }
   113     }
   111   """
   114   """
   112   if context is None:
   115   if context is None:
   113     context = {}
   116     context = {}
   114 
   117 
   122   context['is_debug'] = context.get('is_debug', system.isDebug())
   125   context['is_debug'] = context.get('is_debug', system.isDebug())
   123   context['sign_in'] = context.get(
   126   context['sign_in'] = context.get(
   124       'sign_in', users.create_login_url(request.path))
   127       'sign_in', users.create_login_url(request.path))
   125   context['sign_out'] = context.get(
   128   context['sign_out'] = context.get(
   126       'sign_out', users.create_logout_url(request.path))
   129       'sign_out', users.create_logout_url(request.path))
       
   130 
       
   131   if not context.get('sidebar_menu_html'):
       
   132     # pass the currently constructed context as keyword arguments to
       
   133     # all of the sidebar builder functions
       
   134     context['sidebar_menu_html'] = str(html_menu.UlMenu(
       
   135       sidebar.buildSidebar(**context)))
   127 
   136 
   128   return context
   137   return context
   129 
   138 
   130 
   139 
   131 def redirectToChangedSuffix(
   140 def redirectToChangedSuffix(