ajout app
This commit is contained in:
46
SNIPE-IT/app/Http/Transformers/SelectlistTransformer.php
Normal file
46
SNIPE-IT/app/Http/Transformers/SelectlistTransformer.php
Normal file
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Transformers;
|
||||
|
||||
use Illuminate\Pagination\LengthAwarePaginator;
|
||||
|
||||
/**
|
||||
* Class SelectlistTransformer
|
||||
*
|
||||
* This handles the standardized formatting of the API response we need to provide for
|
||||
* the rich (text and images) Select2 javascript.
|
||||
*
|
||||
* @author [A. Gianotto] [<snipe@snipe.net>]
|
||||
* @since [v4.0.16]
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
class SelectlistTransformer
|
||||
{
|
||||
public function transformSelectlist(LengthAwarePaginator $select_items)
|
||||
{
|
||||
$items_array = [];
|
||||
|
||||
// Loop through the paginated collection to set the array values
|
||||
foreach ($select_items as $select_item) {
|
||||
$items_array[] = [
|
||||
'id' => (int) $select_item->id,
|
||||
'text' => ($select_item->use_text) ? $select_item->use_text : $select_item->name,
|
||||
'image' => ($select_item->use_image) ? $select_item->use_image : null,
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
$results = [
|
||||
'results' => $items_array,
|
||||
'pagination' => [
|
||||
'more' => ($select_items->currentPage() >= $select_items->lastPage()) ? false : true,
|
||||
'per_page' => $select_items->perPage(),
|
||||
],
|
||||
'total_count' => $select_items->total(),
|
||||
'page' => $select_items->currentPage(),
|
||||
'page_count' => $select_items->lastPage(),
|
||||
];
|
||||
|
||||
return $results;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user