django-restit 4.2.138__py3-none-any.whl → 4.2.140__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-restit
3
- Version: 4.2.138
3
+ Version: 4.2.140
4
4
  Summary: A Rest Framework for DJANGO
5
5
  License: MIT
6
6
  Author: Ian Starnes
@@ -377,7 +377,7 @@ pushit/utils.py,sha256=IeTCGa-164nmB1jIsK1lu1O1QzUhS3BKfuXHGjCW-ck,2121
377
377
  rest/.gitignore,sha256=TbEvWRMnAiajCTOdhiNrd9eeCAaIjRp9PRjE_VkMM5g,118
378
378
  rest/README.md,sha256=V3ETc-cJu8PZIbKr9xSe_pA4JEUpC8Dhw4bQeVCDJPw,5460
379
379
  rest/RemoteEvents.py,sha256=nL46U7AuxIrlw2JunphR1tsXyqi-ep_gD9CYGpYbNgE,72
380
- rest/__init__.py,sha256=JUtEuNqc7n7slOQOEm9TZVqe9zNOKgxUmepHVFPIeJc,122
380
+ rest/__init__.py,sha256=yQq_7suWzN5e9qoX3OzN7p2okHfUo9n0Rp3W6ZvVR0s,122
381
381
  rest/arc4.py,sha256=y644IbF1ec--e4cUJ3KEYsewTCITK0gmlwa5mJruFC0,1967
382
382
  rest/cache.py,sha256=1Qg0rkaCJCaVP0-l5hZg2CIblTdeBSlj_0fP6vlKUpU,83
383
383
  rest/crypto/__init__.py,sha256=Tl0U11rgj1eBYqd6OXJ2_XSdNLumW_JkBZnaJqI6Ldw,72
@@ -410,7 +410,7 @@ rest/middleware/request.py,sha256=JchRNy5L-bGd-7h-KFYekGRvREe2eCkZXKOYqIkP2hI,41
410
410
  rest/middleware/session.py,sha256=zHSoQpIzRLmpqr_JvW406wzpvU3W3gDbm5JhtzLAMlE,10240
411
411
  rest/middleware/session_store.py,sha256=1nSdeXK8PyuYgGgIufqrS6j6QpIrQ7zbMNT0ol75e6U,1901
412
412
  rest/models/__init__.py,sha256=M8pvFDq-WCF-QcM58X7pMufYYe0aaQ3U0PwGe9TKbbY,130
413
- rest/models/base.py,sha256=soIYiW71wZdUPmYf-JPPcnHx79CrA9B-hGNFt_WlRCI,71609
413
+ rest/models/base.py,sha256=NTw7IHJu4wpJ3CwIDbYZnoDe8mbJ5B6quocAmyzzJ2c,71787
414
414
  rest/models/cacher.py,sha256=eKz8TINVhWEqKhJGMsRkKZTtBUIv5rN3NHbZwOC56Uk,578
415
415
  rest/models/metadata.py,sha256=1nQ7CYo9bJHoaXE_hVNaj1-Y7yqhHlf2ZlaD1IfTzic,12904
416
416
  rest/net.py,sha256=LcB2QV6VNRtsSdmiQvYZgwQUDwOPMn_VBdRiZ6OpI-I,2974
@@ -513,7 +513,7 @@ ws4redis/servers/uwsgi.py,sha256=VyhoCI1DnVFqBiJYHoxqn5Idlf6uJPHvfBKgkjs34mo,172
513
513
  ws4redis/settings.py,sha256=KKq00EwoGnz1yLwCZr5Dfoq2izivmAdsNEEM4EhZwN4,1610
514
514
  ws4redis/utf8validator.py,sha256=S0OlfjeGRP75aO6CzZsF4oTjRQAgR17OWE9rgZdMBZA,5122
515
515
  ws4redis/websocket.py,sha256=R0TUyPsoVRD7Y_oU7w2I6NL4fPwiz5Vl94-fUkZgLHA,14848
516
- django_restit-4.2.138.dist-info/LICENSE.md,sha256=VHN4hhEeVOoFjtG-5fVv4jesA4SWi0Z-KgOzzN6a1ps,1068
517
- django_restit-4.2.138.dist-info/METADATA,sha256=f8SLDPTRNX35L0cWaSmKyOK6ccRD2-Ex2itkf00QD20,7663
518
- django_restit-4.2.138.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
519
- django_restit-4.2.138.dist-info/RECORD,,
516
+ django_restit-4.2.140.dist-info/LICENSE.md,sha256=VHN4hhEeVOoFjtG-5fVv4jesA4SWi0Z-KgOzzN6a1ps,1068
517
+ django_restit-4.2.140.dist-info/METADATA,sha256=GQO5bs9dpHrS_uY2j0m8maJ6xr5TiAKkn3F4Nh7A2eI,7663
518
+ django_restit-4.2.140.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
519
+ django_restit-4.2.140.dist-info/RECORD,,
rest/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  from .uberdict import UberDict # noqa: F401
2
2
  from .settings_helper import settings # noqa: F401
3
3
 
4
- __version__ = "4.2.138"
4
+ __version__ = "4.2.140"
rest/models/base.py CHANGED
@@ -1004,37 +1004,48 @@ class RestModel(object):
1004
1004
  def on_rest_date_filter(cls, request, qset=None):
1005
1005
  dr_start = request.DATA.get("dr_start", field_type=datetime)
1006
1006
  dr_end = request.DATA.get("dr_end", field_type=datetime)
1007
- if dr_start is not None:
1008
- if dr_end is None:
1009
- dr_end = datetime.now() + timedelta(hours=5)
1010
- # # now lets make dr_end the end of day of dr end
1011
- # dr_end = dr_end + timedelta(hours=24)
1012
- elif dr_end == dr_start:
1013
- dr_end = dr_start + timedelta(days=1)
1014
- dr_tz = request.DATA.get("dr_timezone")
1015
- if dr_tz is not None:
1016
- dr_eod = request.DATA.get("dr_eod", 0, field_type=int)
1017
- dr_granularity = request.DATA.get("granularity", "day")
1018
- dr_start, dr_end = rh.getDateRange(dr_start, dr_end, dr_granularity, dr_tz, hour=dr_eod)
1019
- else:
1020
- dr_offset = request.DATA.get("dr_offset", 0, field_type=int)
1021
- if dr_offset > 0:
1022
- dr_start = dr_start + timedelta(minutes=dr_offset)
1023
- dr_end = dr_end + timedelta(minutes=dr_offset)
1024
- tr_start = request.DATA.get("tr_start")
1007
+ dr_end_str = request.DATA.get("dr_end")
1008
+ tr_start = request.DATA.get("tr_start")
1009
+ tr_end = request.DATA.get("tr_end")
1010
+ dr_offset = request.DATA.get("dr_offset", 0, field_type=int)
1011
+ dr_tz = request.DATA.get("dr_timezone")
1012
+
1013
+ # if we only specify timerange lets set the start to today
1014
+ if dr_start is None:
1025
1015
  if tr_start is not None:
1026
- tr_start = rh.updateTimeFromString(dr_start, tr_start)
1027
- tr_end = request.DATA.get("tr_end")
1028
- if tr_end is not None:
1029
- tr_end = rh.updateTimeFromString(dr_end, tr_end)
1030
- dr_field = request.DATA.get("dr_field", getattr(cls.RestMeta, "DATE_RANGE_FIELD", "created"))
1031
- q = dict()
1032
- q["{}__gte".format(dr_field)] = dr_start
1033
- q["{}__lte".format(dr_field)] = dr_end
1034
- qset = qset.filter(**q)
1035
- request.response_extra = dict(
1036
- dr_start=rh.convertToEpoch(dr_start),
1037
- dr_end=rh.convertToEpoch(dr_end))
1016
+ dr_start = datetime.now()
1017
+
1018
+ if dr_start is None:
1019
+ return qset
1020
+
1021
+ if dr_end is None:
1022
+ dr_end = datetime.now() + timedelta(hours=5)
1023
+ elif dr_end == dr_start and not tr_end:
1024
+ dr_end = dr_start + timedelta(days=1)
1025
+ elif "-" in dr_end_str or "/" in dr_end_str:
1026
+ dr_end = dr_end + timedelta(days=1)
1027
+
1028
+ if tr_start is not None:
1029
+ dr_start = rh.updateTimeFromString(dr_start, tr_start)
1030
+ if tr_end is not None:
1031
+ dr_end = rh.updateTimeFromString(dr_end, tr_end)
1032
+
1033
+ if dr_tz is not None:
1034
+ dr_start = request.DATA.get("dr_start", field_type=datetime)
1035
+ dr_end = request.DATA.get("dr_end", field_type=datetime)
1036
+ dr_eod = request.DATA.get("dr_eod", 0, field_type=int)
1037
+ dr_granularity = request.DATA.get("granularity", "day")
1038
+ dr_start, dr_end = rh.getDateRange(dr_start, dr_end, dr_granularity, dr_tz, hour=dr_eod)
1039
+ elif dr_offset > 0:
1040
+ dr_start = dr_start + timedelta(minutes=dr_offset)
1041
+ dr_end = dr_end + timedelta(minutes=dr_offset)
1042
+
1043
+ rh.debug("tr_end changing", str(dr_start), str(dr_end))
1044
+ dr_field = request.DATA.get("dr_field", getattr(cls.RestMeta, "DATE_RANGE_FIELD", "created"))
1045
+ q = dict()
1046
+ q["{}__gte".format(dr_field)] = dr_start
1047
+ q["{}__lte".format(dr_field)] = dr_end
1048
+ qset = qset.filter(**q)
1038
1049
  return qset
1039
1050
 
1040
1051
  @classmethod