예제 #1
0
def form_for_now_middle(fieldname, form, description, do_events=False):
    """
    Render a form, or the response to the form. Pulls out the specified fied
    and uses that to generate a TimeGhost.middle. TimeGhost.now is Event.now().
    """
    try:
        # Render requested timeghost
        if request.method == "POST":
            now = Event.now()
            middle_key_or_date = request.form[fieldname]
            middle = Event.get_from_key_or_date(middle_key_or_date, description)

            timeghost = TimeGhostFactory.build(now=now, middle=middle)
            if not do_events:
                timeghost.display_prefix = ""

            return render_template('timeghost.html', timeghost=timeghost)
        # draw the form:
        else:
            events = None
            if do_events:
                events = Event.query().order(-Event.date).fetch()
            return render_template(form, events=events)
    except TimeGhostError as err:
        return render_template('error.html', err=err), 404
예제 #2
0
def add_all_search_docs():
    event_search_index = search.Index(EVENT_SEARCH_INDEX)
    events = Event.query().fetch()
    count = 0
    for event in events:
        count += 1
        doc = event.search_doc
        event_search_index.put(doc)
        #event.put() # TODO Uncomment to go live
    title = "Updated {} events to add search doc".format(count)
    return render_template('events.html', events=events, title=title)
예제 #3
0
def fixup_events():
    user = users.get_current_user()
    now = datetime.datetime.now()

    events = Event.query().filter(Event.created_by == None).fetch()
    for event in events:
        event.created_on = now
        event.created_by = user
        event.approved = True
        event.put()
    title = "Updated events to have created_on and created_by and approved"
    return render_template('events.html', events=events, title=title)
예제 #4
0
def addshorturl():
    #user = users.get_current_user()
    #now = datetime.datetime.now()

    #events = Event.query().filter(Event.created_by == None).fetch()
    #events = Event.query().filter(Event.short_url == None).fetch()
    events = Event.query().fetch()
    count = 0
    for event in events:
        count += 1
        #event.created_on = now
        #event.created_by = user
        #event.approved = True
        event.set_short_url()
        #event.put() # TODO Uncomment to go live
    title = "Updated %s events to add a short_url" % count
    return render_template('events.html', events=events, title=title)
예제 #5
0
    def seed(cls, filename=None):
        """Add Events which don't already exist in the database."""
        if filename is None:
            dirname = os.path.dirname(__file__)
            filename = os.path.join(dirname, EVENTS_FILE)

        events = []
        with open(filename) as csvfile:
            reader = csv.reader(csvfile)
            for row in reader:
                date = row[0]
                desc = row[1]
                event = Event.build(date_str=date, description=desc)
                exists = Event.query(Event.description == event.description).get()
                if not exists:
                    event.put()
                    events.append(event)

        return events
예제 #6
0
def chosen_event_pair():
    try:
        # Render requested timeghost
        if request.method == "POST":
            now = Event.now()

            middle_kod = request.form['middle']
            middle = Event.get_from_key_or_date(middle_kod)

            long_ago_kod = request.form['long_ago']
            long_ago = Event.get_from_key_or_date(long_ago_kod)

            timeghost = TimeGhost(now=now, middle=middle, long_ago=long_ago)
            return render_template('timeghost.html', timeghost=timeghost)
        # draw the form:
        else:
            events = Event.query().order(-Event.date).fetch()
            return render_template('specific_both.html', events=events)
    except TimeGhostError as err:
        return render_template('error.html', err=err), 404
예제 #7
0
    def seed(cls, filename=None):
        """Add Events which don't already exist in the database."""
        if filename is None:
            dirname = os.path.dirname(__file__)
            filename = os.path.join(dirname, EVENTS_FILE)

        events = []
        with open(filename) as csvfile:
            reader = csv.reader(csvfile)
            for row in reader:
                date = row[0]
                desc = row[1]
                event = Event.build(date_str=date, description=desc)
                exists = Event.query(Event.description ==
                                     event.description).get()
                if not exists:
                    event.put()
                    events.append(event)

        return events
예제 #8
0
def chosen_event_pair():
    try:
        # Render requested timeghost
        if request.method == "POST":
            now = Event.now()

            middle_kod = request.form['middle']
            middle = Event.get_from_key_or_date(middle_kod)

            long_ago_kod = request.form['long_ago']
            long_ago = Event.get_from_key_or_date(long_ago_kod)

            timeghost = TimeGhost(now=now, middle=middle, long_ago=long_ago)
            return render_template('timeghost.html', timeghost=timeghost)
        # draw the form:
        else:
            events = Event.query().order(-Event.date).fetch()
            return render_template('specific_both.html', events=events)
    except TimeGhostError as err:
        return render_template('error.html', err=err), 404
예제 #9
0
def form_for_now_middle(fieldname, form, description, do_events=False, get_earliest=False):
    """
    Render a form, or the response to the form. Pulls out the specified field
    and uses that to generate a TimeGhost.middle. TimeGhost.now is Event.now().
    """
    try:
        # Render requested timeghost ('form' input seems to be ignored):
        if request.method == "POST":
            middle_key_or_date = request.form[fieldname]
            middle = Event.get_from_key_or_date(middle_key_or_date, description)
            timeghost = TimeGhostFactory.build(middle=middle, get_earliest=get_earliest)
            if not do_events:
                timeghost.display_prefix = ""

            return render_template('timeghost.html', timeghost=timeghost)
        # GET request; draw the form:
        else:
            events = None
            if do_events:
                events = Event.query().order(-Event.date).fetch()
            return render_template(form, events=events)
    except TimeGhostError as err:
        return render_template('error.html', err=err), 404
예제 #10
0
def approve_all():
    events = Event.query().fetch()
    for event in events:
        event.approved = True
        event.put()
    return "HI"