|
5 | 5 | use \Locker\XApi\Helpers as XApiHelpers; |
6 | 6 | use \Jenssegers\Mongodb\Eloquent\Builder as Builder; |
7 | 7 | use \Illuminate\Database\Eloquent\Model as Model; |
| 8 | +use Carbon\Carbon as Carbon; |
| 9 | +use MongoDate; |
8 | 10 |
|
9 | 11 | interface IndexerInterface { |
10 | 12 | public function index(IndexOptions $opts); |
@@ -45,20 +47,22 @@ public function index(IndexOptions $opts) { |
45 | 47 | $key = 'stored'; |
46 | 48 | $op = '>'; |
47 | 49 | return $builder->where(function ($query) use ($key, $value, $op) { |
48 | | - $date = new \MongoDate(strtotime($value)); |
| 50 | + $date = new Carbon($value); |
| 51 | + $mongodate = new MongoDate($date->timestamp, $date->micro); |
49 | 52 | return $query |
50 | | - ->orWhere($key, $op, $date) |
51 | | - ->orWhere('refs.'.$key, $op, $date); |
| 53 | + ->orWhere($key, $op, $mongodate) |
| 54 | + ->orWhere('refs.'.$key, $op, $mongodate); |
52 | 55 | }); |
53 | 56 | }, |
54 | 57 | 'until' => function ($value, $builder, IndexOptions $opts) { |
55 | 58 | $key = 'stored'; |
56 | 59 | $op = '<='; |
57 | 60 | return $builder->where(function ($query) use ($key, $value, $op) { |
58 | | - $date = new \MongoDate(strtotime($value)); |
| 61 | + $date = new Carbon($value); |
| 62 | + $mongodate = new MongoDate($date->timestamp, $date->micro); |
59 | 63 | return $query |
60 | | - ->orWhere($key, $op, $date) |
61 | | - ->orWhere('refs.'.$key, $op, $date); |
| 64 | + ->orWhere($key, $op, $mongodate) |
| 65 | + ->orWhere('refs.'.$key, $op, $mongodate); |
62 | 66 | }); |
63 | 67 | }, |
64 | 68 | 'active' => function ($value, $builder, IndexOptions $opts) { |
|
0 commit comments