File tree Expand file tree Collapse file tree 2 files changed +36
-0
lines changed Expand file tree Collapse file tree 2 files changed +36
-0
lines changed Original file line number Diff line number Diff line change @@ -100,6 +100,13 @@ abstract class AbstractPaginator implements Htmlable
100
100
*/
101
101
protected static $ viewFactoryResolver ;
102
102
103
+ /**
104
+ * The with query string resolver callback.
105
+ *
106
+ * @var \Closure
107
+ */
108
+ protected static $ queryStringResolver ;
109
+
103
110
/**
104
111
* The default pagination view.
105
112
*
@@ -215,6 +222,20 @@ public function appends($key, $value = null)
215
222
return $ this ->addQuery ($ key , $ value );
216
223
}
217
224
225
+ /**
226
+ * Add all query string values to the paginator.
227
+ *
228
+ * @return $this
229
+ */
230
+ public function withQueryString ()
231
+ {
232
+ if (isset (static ::$ queryStringResolver )) {
233
+ return $ this ->appends (call_user_func (static ::$ queryStringResolver ));
234
+ }
235
+
236
+ return $ this ;
237
+ }
238
+
218
239
/**
219
240
* Add an array of query string values.
220
241
*
@@ -484,6 +505,17 @@ public static function viewFactoryResolver(Closure $resolver)
484
505
static ::$ viewFactoryResolver = $ resolver ;
485
506
}
486
507
508
+ /**
509
+ * Set with query string resolver callback.
510
+ *
511
+ * @param \Closure $resolver
512
+ * @return void
513
+ */
514
+ public static function withQueryStringResolver (Closure $ resolver )
515
+ {
516
+ static ::$ queryStringResolver = $ resolver ;
517
+ }
518
+
487
519
/**
488
520
* Set the default pagination view.
489
521
*
Original file line number Diff line number Diff line change @@ -46,5 +46,9 @@ public function register()
46
46
47
47
return 1 ;
48
48
});
49
+
50
+ Paginator::withQueryStringResolver (function () {
51
+ return $ this ->app ['request ' ]->query ();
52
+ });
49
53
}
50
54
}
You can’t perform that action at this time.
0 commit comments