Example #1
0
 def update_values(self, values):
     values["user_email"] = users.get_current_user().email().lower()
     url_route_key = self.request.get('route')
     if url_route_key != "":
         route_key = ndb.Key(urlsafe=url_route_key)
         # Next two lines are so that the recent routes list populates correctly.
         route = route_key.get()
         route.put()
         stops_query = Stop.query(ancestor=route_key).order(
             Stop.order_number).fetch()
         stop1 = stops_query[0]
         values["stop1"] = stop1.stop_name
         if stop1.ordered:
             values["stop1_checkbox"] = "on"
         else:
             values["stop1_checkbox"] = "off"
         if (len(stops_query) > 1):
             stop2 = stops_query[1]
             values["stop2"] = stop2.stop_name
             if stop2.ordered:
                 values["stop2_checkbox"] = "on"
             else:
                 values["stop2_checkbox"] = "off"
         if (len(stops_query) > 2):
             stop3 = stops_query[2]
             values["stop3"] = stop3.stop_name
             if stop3.ordered:
                 values["stop3_checkbox"] = "on"
             else:
                 values["stop3_checkbox"] = "off"
         if (len(stops_query) > 3):
             stop4 = stops_query[3]
             values["stop4"] = stop4.stop_name
             if stop4.ordered:
                 values["stop4_checkbox"] = "on"
             else:
                 values["stop4_checkbox"] = "off"
         if (len(stops_query) > 4):
             stop5 = stops_query[4]
             values["stop5"] = stop5.stop_name
             if stop5.ordered:
                 values["stop5_checkbox"] = "on"
             else:
                 values["stop5_checkbox"] = "off"
         values["entity_key"] = url_route_key
     else:
         route_key = ""
     recent_routes_query = Route.query(
         ancestor=utils.get_parent_key_for_email(users.get_current_user(
         ).email())).order(-Route.last_touch_date_time)
     values["recent_routes"] = recent_routes_query.fetch(5)
     my_routes_query = Route.query(ancestor=utils.get_parent_key_for_email(
         users.get_current_user().email())).filter(Route.type == 1).order(
             Route.name)
     values["my_routes"] = my_routes_query.fetch()
     my_notifications_query = Notification.query(
         ancestor=utils.get_parent_key_for_email(users.get_current_user(
         ).email())).filter(Notification.type != 2)
     values["my_notifications"] = my_notifications_query.fetch()
Example #2
0
def remove_page_route(page_key):
    """
    Remove a page from the routing system.
    """
    # print 'router (remove_page_route) - DELETING ROUTE'
    r = Route.query(Route.page_key == page_key).get()
    r.key.delete()
Example #3
0
def route_exists(url):
    """
    Return whether a route exists or not.
    """
    # print 'check route existence'
    a = Route.query(Route.all_lurls == url).get()
    # print 'route:'
    # print a
    return a is not None
Example #4
0
def load_page_by_key(key_us):
    """
    Load a page object starting from a key urlsafe string.
    """
    # print 'load page by key'
    key = ndb.Key(urlsafe=key_us)
    r = Route.query(Route.page_key == key).get() or abort(404)
    p = Template(r.template_id).load_page(r.page_key)
    return p
Example #5
0
def weak_load_page_by_url(url):
    """
    Load a page object starting from an url string.
    """
    # print 'load page by url'
    r = Route.query(Route.all_lurls == url).get()
    # print r.key.urlsafe()
    if r is None:
        return r
    p = Template(r.template_id).load_page(r.page_key)
    return p
Example #6
0
def weak_load_page_by_key(key_us):
    """
    Load a page object starting from a key urlsafe string.
    Return None if page not found.
    """
    # print 'weak load page by key'
    key = ndb.Key(urlsafe=key_us)
    r = Route.query(Route.page_key == key).get()
    if r is None:
        return r
    return Template(r.template_id).load_page(r.page_key)
Example #7
0
def update_page_route(page):
    """
    Add or update the page to the routing system.
    """
    print '[ROUTER] update_page_route'
    r = Route.query(Route.page_key == page.key).get() or Route()
    r.searchable_page_names = []
    r.all_lurls = page.get_all_lurls().values()
    r.page_key = page.key
    r.template_id = page.p_template_id
    r.root_page = page.parent_section is None
    for lang in page.get_languages():
        r.set_page_name(page.get_name(lang), lang)
        r.set_page_url(page.get_url(lang), lang)
    r.put()
Example #8
0
def get_root_routes():
    """
    All root pages: pages that do not belong to any section.
    """
    return Route.query(Route.root_page == True).fetch()