[COLOR=#0033b3]class [/COLOR][COLOR=#000000]ShopVersionController [/COLOR][COLOR=#0033b3]extends [/COLOR][COLOR=#000000]Controller
[/COLOR]{
[COLOR=#8c8c8c][I]/**
[/I][/COLOR][COLOR=#8c8c8c][I] * Display a listing of the resource.
[/I][/COLOR][COLOR=#8c8c8c][I] *
[/I][/COLOR][COLOR=#8c8c8c][I] * [USER=850422]return[/USER] [/I][/COLOR][COLOR=#000000][I]\Illuminate\Http\JsonResponse
[/I][/COLOR][COLOR=#000000][I] [/I][/COLOR][COLOR=#8c8c8c][I]*/
[/I][/COLOR][COLOR=#8c8c8c][I] [/I][/COLOR][COLOR=#0033b3]public function [/COLOR][COLOR=#00627a]index[/COLOR]([COLOR=#000000]Request [/COLOR][COLOR=#660000]$request[/COLOR])
{
[COLOR=#660000]$region [/COLOR]= [COLOR=#660000]$request[/COLOR]->[COLOR=#00627a]input[/COLOR]([COLOR=#067d17]'locale'[/COLOR]);
[COLOR=#0033b3]try [/COLOR]{
[COLOR=#660000]$validator [/COLOR]= [COLOR=#000000]Validator[/COLOR]::[COLOR=#00627a][I]make[/I][/COLOR]([COLOR=#660000]$request[/COLOR]->[COLOR=#00627a]all[/COLOR](), [
[COLOR=#067d17]'locale' [/COLOR]=> [COLOR=#067d17]'required|string|max:2'[/COLOR],
]);
[COLOR=#0033b3]if [/COLOR]([COLOR=#660000]$validator[/COLOR]->[COLOR=#00627a]fails[/COLOR]()) {
[COLOR=#0033b3]return [/COLOR][COLOR=#000000]response[/COLOR]()->[COLOR=#00627a]json[/COLOR]([[COLOR=#067d17]'errors' [/COLOR]=> [COLOR=#660000]$validator[/COLOR]->[COLOR=#00627a]errors[/COLOR]()->[COLOR=#00627a]all[/COLOR]()], [COLOR=#1750eb]422[/COLOR]);
}
[COLOR=#0033b3]if [/COLOR]([COLOR=#000000]ShopVersion[/COLOR]::[COLOR=#00627a][I]where[/I][/COLOR]([COLOR=#067d17]'locale'[/COLOR], [COLOR=#067d17]'='[/COLOR], [COLOR=#660000]$region[/COLOR])->[COLOR=#00627a]exists[/COLOR]()) {
[COLOR=#8c8c8c][I]// Locale found
[/I][/COLOR][COLOR=#8c8c8c][I] [/I][/COLOR][COLOR=#660000]$localefound [/COLOR]= [COLOR=#000000]ShopVersion[/COLOR]::[COLOR=#00627a][I]where[/I][/COLOR]([COLOR=#067d17]'locale'[/COLOR], [COLOR=#660000]$region[/COLOR])->[COLOR=#00627a]first[/COLOR]();
[COLOR=#660000]$error_code [/COLOR]= [COLOR=#1750eb]1[/COLOR];
[COLOR=#0033b3]return [/COLOR][COLOR=#000000]response[/COLOR]()->[COLOR=#00627a]json[/COLOR]([
[COLOR=#067d17]'result_code' [/COLOR]=> [COLOR=#660000]$error_code[/COLOR],
[COLOR=#067d17]'condition_type' [/COLOR]=> [COLOR=#067d17]'0x00'[/COLOR],
[COLOR=#067d17]'shop_version' [/COLOR]=> [COLOR=#660000]$localefound[/COLOR]->[COLOR=#0037a6]version[/COLOR],
[COLOR=#067d17]'return_structure_type' [/COLOR]=> [COLOR=#067d17]'0x02'[/COLOR],
[COLOR=#067d17]'result_code_channel' [/COLOR]=> [COLOR=#067d17]'null'[/COLOR],
[COLOR=#067d17]'result_message_channel' [/COLOR]=> [COLOR=#067d17]'success'
[/COLOR][COLOR=#067d17] [/COLOR]]);
}
[COLOR=#0033b3]if [/COLOR]([COLOR=#000000]ShopVersion[/COLOR]::[COLOR=#00627a][I]where[/I][/COLOR]([COLOR=#067d17]'locale'[/COLOR], [COLOR=#067d17]'='[/COLOR], [COLOR=#660000]$region[/COLOR])->[COLOR=#00627a]doesntExist[/COLOR]()) {
[COLOR=#8c8c8c][I]// Locale not found
[/I][/COLOR][COLOR=#8c8c8c][I] [/I][/COLOR][COLOR=#660000]$error_code [/COLOR]= [COLOR=#1750eb]90001[/COLOR];
[COLOR=#0033b3]return [/COLOR][COLOR=#000000]response[/COLOR]()->[COLOR=#00627a]json[/COLOR]([
[COLOR=#067d17]'result_code' [/COLOR]=> [COLOR=#660000]$error_code[/COLOR],
[COLOR=#067d17]'condition_type' [/COLOR]=> [COLOR=#067d17]'0x00'[/COLOR],
[COLOR=#067d17]'callback_attribute' [/COLOR]=> [COLOR=#067d17]''[/COLOR],
[COLOR=#067d17]'order_id' [/COLOR]=> [COLOR=#067d17]''[/COLOR],
[COLOR=#067d17]'return_structure_type' [/COLOR]=> [COLOR=#067d17]'0x02'[/COLOR],
[COLOR=#067d17]'result_code_channel' [/COLOR]=> [COLOR=#067d17]'null'[/COLOR],
[COLOR=#067d17]'result_message_channel' [/COLOR]=> [COLOR=#067d17]'Invalid locale'
[/COLOR][COLOR=#067d17] [/COLOR]]);
}
} [COLOR=#0033b3]catch [/COLOR]([COLOR=#000000]Exception [/COLOR][COLOR=#660000]$e[/COLOR]) {
[COLOR=#0033b3]throw new [/COLOR][COLOR=#000000]Exception[/COLOR]([COLOR=#660000]$e[/COLOR]->[COLOR=#00627a]getMessage[/COLOR]());
}
}
}