def calendar_by_params(request, period=None, date=None, category=None, priority=None, is_active=None): """ returns events for: -> a period = Year, Month, Week, Day -> a DATE = datetime -> a user -> a cal_type = wikis, events, with cals, for cals, -> a cal_place = place where the cal takes effect -> a cal_category -> a cal_priority -> eventually to see whether if the cal is active or canceled """ # in_datetime = None # if user is None: # user = request.user.id # in_datetime = coerce_date_dict(request.GET) # if in_datetime: # try: # in_datetime = datetime.datetime(**in_datetime) # except ValueError: # raise Http404 # else: # in_datetime = datetime.datetime.now() start = request.GET['start'] start = datetime.datetime.fromtimestamp(int(start)) start = timezone.make_aware(start, timezone.get_default_timezone()) end = request.GET['end'] end = datetime.datetime.fromtimestamp(int(end)) end = timezone.make_aware(end, timezone.get_default_timezone()) list_cal = all_events_by_params(user=request.user.pk, is_active=is_active, category=category, calendar=True, priority=priority, by_date="S") list_cal = list_cal.filter( Q(start__gte=start, start__lte=end) | Q(end__gte=start, end__lte=end) | Q(end_recurring_period__gte=start)) # f_period = period(list_cal, in_datetime) # if not f_period: # return HttpResponseRedirect('/') json_cals = simplejson.dumps(_get_sorted_occurrences(list_cal, start, end), ensure_ascii=False) return HttpResponse(json_cals, content_type='application/javascript; charset=utf-8')
def planning(request,user_id=None, plannable=None, priority=None, category=None, is_active=None, template_name="calendars/planning.html"): list_cal = all_events_by_params(user=user_id, user_request=request.user.pk, is_active=is_active, category=category,calendar=True, priority=priority, by_date="S") in_datetime = datetime.datetime.now() upcoming = list_cal.filter(end__gte=in_datetime) due = list_cal.filter(end__lte=in_datetime) if not list_cal: list_cal = None c = RequestContext(request, {'upcoming': upcoming, 'due': due, }) return render_to_response(template_name, c)
def calendar_by_params(request, period=None, date=None, category=None, priority=None, is_active=None): """ returns events for: -> a period = Year, Month, Week, Day -> a DATE = datetime -> a user -> a cal_type = wikis, events, with cals, for cals, -> a cal_place = place where the cal takes effect -> a cal_category -> a cal_priority -> eventually to see whether if the cal is active or canceled """ # in_datetime = None # if user is None: # user = request.user.id # in_datetime = coerce_date_dict(request.GET) # if in_datetime: # try: # in_datetime = datetime.datetime(**in_datetime) # except ValueError: # raise Http404 # else: # in_datetime = datetime.datetime.now() start = request.GET['start'] start = datetime.datetime.fromtimestamp(int(start)) start = timezone.make_aware(start, timezone.get_default_timezone()) end = request.GET['end'] end = datetime.datetime.fromtimestamp(int(end)) end = timezone.make_aware(end, timezone.get_default_timezone()) list_cal = all_events_by_params(user=request.user.pk, is_active=is_active, category=category,calendar=True, priority=priority, by_date="S") list_cal = list_cal.filter(Q(start__gte=start, start__lte=end) | Q(end__gte=start, end__lte=end) | Q(end_recurring_period__gte=start)) # f_period = period(list_cal, in_datetime) # if not f_period: # return HttpResponseRedirect('/') json_cals = simplejson.dumps(_get_sorted_occurrences(list_cal, start, end), ensure_ascii=False) return HttpResponse(json_cals, content_type='application/javascript; charset=utf-8')
def planning(request, user_id=None, plannable=None, priority=None, category=None, is_active=None, template_name="calendars/planning.html"): list_cal = all_events_by_params(user=user_id, user_request=request.user.pk, is_active=is_active, category=category, calendar=True, priority=priority, by_date="S") in_datetime = datetime.datetime.now() upcoming = list_cal.filter(end__gte=in_datetime) due = list_cal.filter(end__lte=in_datetime) if not list_cal: list_cal = None c = RequestContext(request, { 'upcoming': upcoming, 'due': due, }) return render_to_response(template_name, c)