| @@ -1,9 +1,10 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | namespace FluentSupport\App\Http\Controllers; |
| 3 | 3 | |
| 4 | +use FluentSupport\App\Services\Helper; | |
| 4 | 5 | use FluentSupport\App\Services\Tickets\Importer\MigratorService; |
| 5 | -use FluentSupport\Framework\Request\Request; | |
| 6 | +use FluentSupport\Framework\Http\Request\Request; | |
| 6 | 7 | use FluentSupport\App\Services\Tickets\Importer\BaseImporter; |
| 7 | 8 | |
| 8 | 9 | |
| 9 | 10 | class TicketImportController extends Controller |
| @@ -19,15 +20,40 @@ | ||
| 19 | 20 | |
| 20 | 21 | public function importTickets(MigratorService $importService, Request $request) |
| 21 | 22 | { |
| 22 | 23 | try { |
| 23 | - return $importService->handleImport( $request->getSafe('page', 'intval'), $request->getSafe('handler'), $request->getSafe('query', []) ); | |
| 24 | + $handler = $request->getSafe('handler', 'sanitize_key'); | |
| 25 | + $rawQuery = $request->get('query', []); | |
| 26 | + $query = []; | |
| 27 | + | |
| 28 | + if (is_array($rawQuery)) { | |
| 29 | + if (isset($rawQuery['access_token'])) { | |
| 30 | + $query['access_token'] = sanitize_text_field($rawQuery['access_token']); | |
| 31 | + } | |
| 32 | + if (isset($rawQuery['mailbox'])) { | |
| 33 | + $query['mailbox'] = intval($rawQuery['mailbox']); | |
| 34 | + } | |
| 35 | + if (isset($rawQuery['domain'])) { | |
| 36 | + $query['domain'] = sanitize_text_field($rawQuery['domain']); | |
| 37 | + } | |
| 38 | + if (isset($rawQuery['email'])) { | |
| 39 | + $query['email'] = sanitize_email($rawQuery['email']); | |
| 40 | + } | |
| 41 | + if (isset($rawQuery['cursor'])) { | |
| 42 | + $query['cursor'] = sanitize_text_field($rawQuery['cursor']); | |
| 43 | + } | |
| 44 | + if (!empty($rawQuery['include_archived'])) { | |
| 45 | + $query['include_archived'] = true; | |
| 46 | + } | |
| 47 | + } | |
| 48 | + | |
| 49 | + return $importService->handleImport( $request->getSafe('page', 'intval'), $handler, $query ); | |
| 24 | 50 | } catch (\Exception $e) { |
| 25 | - return $this->sendError($e->getMessage()); | |
| 51 | + return $this->sendError(Helper::getSafeErrorMessage($e)); | |
| 26 | 52 | } |
| 27 | 53 | } |
| 28 | 54 | |
| 29 | 55 | public function deleteTickets (MigratorService $importService, Request $request) |
| 30 | 56 | { |
| 31 | - return $importService->deleteTickets($request->getSafe('page', 'intval'), $request->getSafe('handler')); | |
| 57 | + return $importService->deleteTickets($request->getSafe('page', 'intval'), $request->getSafe('handler', 'sanitize_key')); | |
| 32 | 58 | } |
| 33 | 59 | } |