@@ -96,6 +96,12 @@ class FMBaseBuilder extends Builder
96
96
*/
97
97
public array $ limitPortals = [];
98
98
99
+ /**
100
+ * An array of portals which should have the offset set it the response.
101
+ * This is actually the "starting record", and so the default value is 1.
102
+ */
103
+ public array $ offsetPortals = [];
104
+
99
105
public const ASCEND = 'ascend ' ;
100
106
101
107
public const DESCEND = 'descend ' ;
@@ -112,7 +118,7 @@ class FMBaseBuilder extends Builder
112
118
*
113
119
* @var array
114
120
*/
115
- public $ portal ;
121
+ public $ portal = [] ;
116
122
117
123
/**
118
124
* @var int
@@ -334,23 +340,34 @@ public function limit($value): FMBaseBuilder
334
340
return $ this ;
335
341
}
336
342
337
- public function limitPortal ($ portalName , $ limit ): FMBaseBuilder
343
+ public function limitPortal (string $ portalName , int $ limit ): FMBaseBuilder
338
344
{
339
345
$ this ->limitPortals [] = ['portalName ' => $ portalName , 'limit ' => $ limit ];
340
346
341
347
return $ this ;
342
348
}
343
349
350
+ /**
351
+ * Set an offset for a given portal.
352
+ * This is actually the "starting record", and so the default value is 1.
353
+ */
354
+ public function offsetPortal (string $ portalName , int $ startingRecord ): FMBaseBuilder
355
+ {
356
+ $ this ->offsetPortals [] = ['portalName ' => $ portalName , 'offset ' => $ startingRecord ];
357
+
358
+ return $ this ;
359
+ }
360
+
344
361
public function offset ($ value ): FMBaseBuilder
345
362
{
346
363
$ this ->offset = $ value ;
347
364
348
365
return $ this ;
349
366
}
350
367
351
- public function script ($ name , $ param = null ): FMBaseBuilder
368
+ public function script ($ scriptName , $ param = null ): FMBaseBuilder
352
369
{
353
- $ this ->script = $ name ;
370
+ $ this ->script = $ scriptName ;
354
371
355
372
// set the script parameter if one was passed in
356
373
if ($ param ) {
@@ -360,16 +377,16 @@ public function script($name, $param = null): FMBaseBuilder
360
377
return $ this ;
361
378
}
362
379
363
- public function scriptParam ($ param ): FMBaseBuilder
380
+ public function scriptParam (string $ param ): FMBaseBuilder
364
381
{
365
382
$ this ->scriptParam = $ param ;
366
383
367
384
return $ this ;
368
385
}
369
386
370
- public function scriptPresort ($ name , $ param = null ): FMBaseBuilder
387
+ public function scriptPresort (string $ scriptName , $ param = null ): FMBaseBuilder
371
388
{
372
- $ this ->scriptPresort = $ name ;
389
+ $ this ->scriptPresort = $ scriptName ;
373
390
374
391
// set the script parameter if one was passed in
375
392
if ($ param ) {
@@ -379,16 +396,16 @@ public function scriptPresort($name, $param = null): FMBaseBuilder
379
396
return $ this ;
380
397
}
381
398
382
- public function scriptPresortParam ($ param ): FMBaseBuilder
399
+ public function scriptPresortParam (string $ param ): FMBaseBuilder
383
400
{
384
401
$ this ->scriptPresortParam = $ param ;
385
402
386
403
return $ this ;
387
404
}
388
405
389
- public function scriptPrerequest ($ name , $ param = null ): FMBaseBuilder
406
+ public function scriptPrerequest (string $ scriptName , string $ param = null ): FMBaseBuilder
390
407
{
391
- $ this ->scriptPrerequest = $ name ;
408
+ $ this ->scriptPrerequest = $ scriptName ;
392
409
393
410
// set the script parameter if one was passed in
394
411
if ($ param ) {
@@ -398,16 +415,16 @@ public function scriptPrerequest($name, $param = null): FMBaseBuilder
398
415
return $ this ;
399
416
}
400
417
401
- public function scriptPrerequestParam ($ param ): FMBaseBuilder
418
+ public function scriptPrerequestParam (string $ param ): FMBaseBuilder
402
419
{
403
420
$ this ->scriptPrerequestParam = $ param ;
404
421
405
422
return $ this ;
406
423
}
407
424
408
- public function layoutResponse ($ name ): FMBaseBuilder
425
+ public function layoutResponse (string $ layoutName ): FMBaseBuilder
409
426
{
410
- $ this ->layoutResponse = $ name ;
427
+ $ this ->layoutResponse = $ layoutName ;
411
428
412
429
return $ this ;
413
430
}
@@ -640,7 +657,7 @@ public function createRecord()
640
657
* @param $array array
641
658
* @return $this
642
659
*/
643
- public function fieldData ($ array )
660
+ public function fieldData (array $ array )
644
661
{
645
662
$ this ->fieldData = $ this ->mapFieldNamesForArray ($ array );
646
663
@@ -653,7 +670,7 @@ public function fieldData($array)
653
670
* @param $array array
654
671
* @return $this
655
672
*/
656
- public function portalData ($ array )
673
+ public function portalData (array $ array )
657
674
{
658
675
$ this ->portalData = $ array ;
659
676
@@ -797,7 +814,6 @@ public function portal($portalName)
797
814
// It's a single value, so append it on the array
798
815
array_push ($ this ->portal , $ portalName );
799
816
}
800
- $ this ->portal = $ portalName ;
801
817
802
818
return $ this ;
803
819
}
0 commit comments