def view_favourite_toggle(request): """AJAX""" # login is required here if not (request.user and request.user.is_authenticated()): return HttpResponseNotFound() result = "0" if request.method == "POST": key_id = request.POST.get("key_id", None) if key_id: event = Event.get_by_id(int(key_id, 10)) if not event: return HttpResponseNotFound() # check this favourite exists and toggle it fav = Favourite.all().filter("event =", event).filter("user ="******"1" return HttpResponse(result)
def serialise_events_for_query( query, user=None, facebook=False, provide_favourite_state=False, provide_rsvp_state=False ): """ only shows active events! """ contents = "" query.filter("active =", True) query.filter("moderated =", True) for e in query: if e.name and e.location and e.type: if facebook is True: absolute_url = e.get_facebook_url() else: absolute_url = e.get_absolute_url() contents_list = [ "[" + e.country.key().name() + "] " + prepare_for_csv(e.name), e.type, # numeric value out of type string str(e.fields()["type"].make_value_from_form(e.type)), # sorting needs nice arranged format... e.date_start.strftime("%Y-%m-%d (%a) at %H:%M%Z"), e.date_end.strftime("%Y-%m-%d (%a) at %H:%M%Z"), # e.date_end.strftime('%a %d %b %Y at %H:%M%Z'), # e.date_end.isoformat(' '), e.recurrent, e.location.__str__(), absolute_url, str(e.key().id()), str(e.featured_priority), str(int(e.free)), ] if provide_favourite_state: if user and user.is_authenticated(): is_fav = Favourite.all().filter("event =", e).filter("user ="******"event =", e).filter("user ="******",") contents += "\n" return contents
def view_event_show(request, key_id): key_id = int(key_id, 10) if request.user.is_authenticated(): event = get_object_or_404(Event, id=key_id) fav = Favourite.all().filter("event =", event).filter("user ="******"is_fav": fav} return object_detail(request, Event.all(), object_id=key_id, extra_context=extra_context)