From 16f59a4a44209b9102c9a85805fc251af0f08e02 Mon Sep 17 00:00:00 2001 From: Alexis Gousseau Date: Mon, 18 Mar 2024 15:28:23 +0100 Subject: [PATCH] fix listen country field and recruitment button --- app/Enums/Country.php | 265 +++++++++++++++++++-- app/Http/Requests/Fo/ListenFormRequest.php | 11 +- resources/views/fo/pages/hire.blade.php | 2 +- resources/views/fo/pages/listen.blade.php | 35 ++- 4 files changed, 274 insertions(+), 39 deletions(-) diff --git a/app/Enums/Country.php b/app/Enums/Country.php index 4a09295..6b79c3e 100644 --- a/app/Enums/Country.php +++ b/app/Enums/Country.php @@ -357,9 +357,9 @@ enum Country: int self::guatemala->name => 'Guatemala', self::guernsey->name => 'Guernsey', self::guinea->name => 'Guinea', - self::guineaBissau->name => 'GuineaBissau', + self::guineaBissau->name => 'Guinea Bissau', self::guyana->name => 'Guyana', - self::haiti->name => 'Haiti', + self::haiti->name => 'Haïti', self::heardIslandAndMcdonaldIslands->name => 'Heard Island and McDonald Islands', self::holySeeVaticanCityState->name => 'Holy See (Vatican City State)', self::honduras->name => 'Honduras', @@ -589,18 +589,255 @@ enum Country: int * Custom added ISOCODES definition */ private const ISOCODES = [ - self::france->name => 'FR', - self::guadeloupe->name => 'GP', - self::martinique->name => 'MQ', - self::frenchGuiana->name => 'GF', - self::reunion->name => 'RE', - self::saintPierreAndMiquelon->name => 'PM', - self::mayotte->name => 'YT', - self::saintBarthelemy->name => 'BL', - self::saintMartinFrenchPart->name => 'MF', - self::wallisAndFutuna->name => 'WF', - self::frenchPolynesia->name => 'PF', - self::newCaledonia->name => 'NC', + self::afghanistan->name => 'AFG', + self::alandIslands->name => 'ALA', + self::albania->name => 'ALB', + self::algeria->name => 'DZA', + self::americanSamoa->name => 'ASM', + self::andorra->name => 'AND', + self::angola->name => 'AGO', + self::anguilla->name => 'AIA', + self::antarctica->name => 'AQ', + self::antiguaAndBarbuda->name => 'ATG', + self::argentina->name => 'ARG', + self::armenia->name => 'ARM', + self::aruba->name => 'ABW', + self::australia->name => 'AUS', + self::austria->name => 'AUT', + self::azerbaijan->name => 'AZE', + self::bahrain->name => 'BHR', + self::bahamas->name => 'BHS', + self::bangladesh->name => 'BGD', + self::barbados->name => 'BRB', + self::belarus->name => 'BLR', + self::belgium->name => 'BEL', + self::belize->name => 'BLZ', + self::benin->name => 'BEN', + self::bermuda->name => 'BMU', + self::bhutan->name => 'BTN', + self::boliviaPlurinationalStateOf->name => 'BOL', + self::bonaireSintEustatiusAndSaba->name => 'BES', + self::bosniaAndHerzegovina->name => 'BIH', + self::botswana->name => 'BWA', + self::bouvetIsland->name => 'BVT', + self::brazil->name => 'BRA', + self::britishIndianOceanTerritory->name => 'IOT', + self::bruneiDarussalam->name => 'BRN', + self::bulgaria->name => 'BGR', + self::burkinaFaso->name => 'BFA', + self::burundi->name => 'BDI', + self::cambodia->name => 'KHM', + self::cameroon->name => 'CMR', + self::canada->name => 'CAN', + self::capeVerde->name => 'CPV', + self::caymanIslands->name => 'CYM', + self::centralAfricanRepublic->name => 'CAF', + self::chad->name => 'TCD', + self::chile->name => 'CHL', + self::china->name => 'CHN', + self::christmasIsland->name => 'CXR', + self::cocosKeelingIslands->name => 'CCK', + self::colombia->name => 'COL', + self::comoros->name => 'COM', + self::congo->name => 'COG', + self::congoTheDemocraticRepublicOfThe->name => 'COD', + self::cookIslands->name => 'COK', + self::costaRica->name => 'CRI', + self::coteDivoire->name => 'CIV', + self::croatia->name => 'HRV', + self::cuba->name => 'CUB', + self::curacao->name => 'CUW', + self::cyprus->name => 'CYP', + self::czechRepublic->name => 'CZE', + self::denmark->name => 'DNK', + self::djibouti->name => 'DJI', + self::dominica->name => 'DMA', + self::dominicanRepublic->name => 'DOM', + self::ecuador->name => 'ECU', + self::egypt->name => 'EGY', + self::elSalvador->name => 'SLV', + self::equatorialGuinea->name => 'GNQ', + self::eritrea->name => 'ERI', + self::estonia->name => 'EST', + self::ethiopia->name => 'ETH', + self::falklandIslandsMalvinas->name => 'FLK', + self::faroeIslands->name => 'FRO', + self::fiji->name => 'FJI', + self::finland->name => 'FIN', + self::france->name => 'FRA', + self::frenchGuiana->name => 'GUF', + self::frenchPolynesia->name => 'PYF', + self::frenchSouthernTerritories->name => 'ATF', + self::gabon->name => 'GAB', + self::gambia->name => 'GMB', + self::georgia->name => 'GEO', + self::germany->name => 'DEU', + self::ghana->name => 'GHA', + self::gibraltar->name => 'GIB', + self::greece->name => 'GRC', + self::greenland->name => 'GRL', + self::grenada->name => 'GRD', + self::guadeloupe->name => 'GLP', + self::guam->name => 'GUM', + self::guatemala->name => 'GTM', + self::guernsey->name => 'GGY', + self::guinea->name => 'GIN', + self::guineaBissau->name => 'GNB', + self::guyana->name => 'GUY', + self::haiti->name => 'HTI', + self::heardIslandAndMcdonaldIslands->name => 'HMD', + self::holySeeVaticanCityState->name => 'VAT', + self::honduras->name => 'HND', + self::hongKong->name => 'HKG', + self::hungary->name => 'HUN', + self::iceland->name => 'ISL', + self::india->name => 'IND', + self::indonesia->name => 'IDN', + self::iranIslamicRepublicOf->name => 'IRN', + self::iraq->name => 'IRQ', + self::ireland->name => 'IRL', + self::isleOfMan->name => 'IMN', + self::israel->name => 'ISR', + self::italy->name => 'ITA', + self::jamaica->name => 'JAM', + self::japan->name => 'JPN', + self::jersey->name => 'JEY', + self::jordan->name => 'JOR', + self::kazakhstan->name => 'KAZ', + self::kenya->name => 'KEN', + self::kiribati->name => 'KIR', + self::koreaDemocraticPeoplesRepublicOf->name => 'PRK', + self::koreaRepublicOf->name => 'KOR', + self::kuwait->name => 'KWT', + self::kyrgyzstan->name => 'KGZ', + self::laoPeoplesDemocraticRepublic->name => 'LAO', + self::latvia->name => 'LVA', + self::lebanon->name => 'LBN', + self::lesotho->name => 'LSO', + self::liberia->name => 'LBR', + self::libya->name => 'LBY', + self::liechtenstein->name => 'LIE', + self::lithuania->name => 'LTU', + self::luxembourg->name => 'LUX', + self::macao->name => 'MAC', + self::macedoniaTheFormerYugoslavRepublicOf->name => 'MKD', + self::madagascar->name => 'MDG', + self::malawi->name => 'MWI', + self::malaysia->name => 'MYS', + self::maldives->name => 'MDV', + self::mali->name => 'MLI', + self::malta->name => 'MLT', + self::marshallIslands->name => 'MHL', + self::martinique->name => 'MTQ', + self::mauritania->name => 'MRT', + self::mauritius->name => 'MUS', + self::mayotte->name => 'MYT', + self::mexico->name => 'MEX', + self::micronesiaFederatedStatesOf->name => 'FSM', + self::moldovaRepublicOf->name => 'MDA', + self::monaco->name => 'MCO', + self::mongolia->name => 'MNG', + self::montenegro->name => 'MNE', + self::montserrat->name => 'MSR', + self::morocco->name => 'MAR', + self::mozambique->name => 'MOZ', + self::myanmar->name => 'MMR', + self::namibia->name => 'NAM', + self::nauru->name => 'NRU', + self::nepal->name => 'NPL', + self::netherlands->name => 'NLD', + self::newCaledonia->name => 'NCL', + self::newZealand->name => 'NZL', + self::nicaragua->name => 'NIC', + self::niger->name => 'NER', + self::nigeria->name => 'NGA', + self::niue->name => 'NIU', + self::norfolkIsland->name => 'NFK', + self::northernMarianaIslands->name => 'MNP', + self::norway->name => 'NOR', + self::oman->name => 'OMN', + self::pakistan->name => 'PAK', + self::palau->name => 'PLW', + self::palestineStateOf->name => 'PSE', + self::panama->name => 'PAN', + self::papuaNewGuinea->name => 'PNG', + self::paraguay->name => 'PRY', + self::peru->name => 'PER', + self::philippines->name => 'PHL', + self::pitcairn->name => 'PCN', + self::poland->name => 'POL', + self::portugal->name => 'PRT', + self::puertoRico->name => 'PRI', + self::qatar->name => 'QAT', + self::reunion->name => 'REU', + self::romania->name => 'ROU', + self::russianFederation->name => 'RUS', + self::rwanda->name => 'RWA', + self::saintBarthelemy->name => 'BLM', + self::saintHelenaAscensionAndTristanDaCunha->name => 'SHN', + self::saintKittsAndNevis->name => 'KNA', + self::saintLucia->name => 'LCA', + self::saintMartinFrenchPart->name => 'MAF', + self::saintPierreAndMiquelon->name => 'SPM', + self::saintVincentAndTheGrenadines->name => 'VCT', + self::samoa->name => 'WSM', + self::sanMarino->name => 'SMR', + self::saoTomeAndPrincipe->name => 'STP', + self::saudiArabia->name => 'SAU', + self::senegal->name => 'SEN', + self::serbia->name => 'SRB', + self::seychelles->name => 'SYC', + self::sierraLeone->name => 'SLE', + self::singapore->name => 'SGP', + self::sintMaartenDutchPart->name => 'SXM', + self::slovakia->name => 'SVK', + self::slovenia->name => 'SVN', + self::solomonIslands->name => 'SLB', + self::somalia->name => 'SOM', + self::southAfrica->name => 'ZAF', + self::southGeorgiaAndTheSouthSandwichIslands->name => 'SGS', + self::southSudan->name => 'SSD', + self::spain->name => 'ESP', + self::sriLanka->name => 'LKA', + self::sudan->name => 'SDN', + self::suriname->name => 'SUR', + self::svalbardAndJanMayen->name => 'SJM', + self::swaziland->name => 'SWZ', + self::sweden->name => 'SWE', + self::switzerland->name => 'CHE', + self::syrianArabRepublic->name => 'SYR', + self::taiwanProvinceOfChina->name => 'TWN', + self::tajikistan->name => 'TJK', + self::tanzaniaUnitedRepublicOf->name => 'TZA', + self::thailand->name => 'THA', + self::timorLeste->name => 'TLS', + self::togo->name => 'TGO', + self::tokelau->name => 'TKL', + self::tonga->name => 'TON', + self::trinidadAndTobago->name => 'TTO', + self::tunisia->name => 'TUN', + self::turkey->name => 'TUR', + self::turkmenistan->name => 'TKM', + self::turksAndCaicosIslands->name => 'TCA', + self::tuvalu->name => 'TUV', + self::uganda->name => 'UGA', + self::ukraine->name => 'UKR', + self::unitedArabEmirates->name => 'ARE', + self::unitedKingdom->name => 'GBR', + self::unitedStates->name => 'USA', + self::unitedStatesMinorOutlyingIslands->name => 'UMI', + self::uruguay->name => 'URY', + self::uzbekistan->name => 'UZB', + self::vanuatu->name => 'VUT', + self::venezuelaBolivarianRepublicOf->name => 'VEN', + self::vietNam->name => 'VNM', + self::virginIslandsBritish->name => 'VGB', + self::virginIslandsUs->name => 'VIR', + self::wallisAndFutuna->name => 'WLF', + self::westernSahara->name => 'ESH', + self::yemen->name => 'YEM', + self::zambia->name => 'ZMB', + self::zimbabwe->name => 'ZWE', ]; /** diff --git a/app/Http/Requests/Fo/ListenFormRequest.php b/app/Http/Requests/Fo/ListenFormRequest.php index 577eca2..1602066 100644 --- a/app/Http/Requests/Fo/ListenFormRequest.php +++ b/app/Http/Requests/Fo/ListenFormRequest.php @@ -40,8 +40,14 @@ class ListenFormRequest extends FormRequest 'last_name' => 'required|string|between:3,100', 'society' => 'present|nullable|string|between:3,255', 'email' => 'required|email:rfc,strict,dns,spoof,filter|max:255', - 'phone' => 'present|nullable|phone:FR|max:25', - 'postal_code' => 'present|nullable|postal_code:FR|max:25', + // @phpstan-ignore-next-line + 'phone' => 'present|nullable|' . ( + Country::make(request()->country)->value === Country::france->value + ) ? 'phone:FR|max:25' : 'number|max:50', + // @phpstan-ignore-next-line + 'postal_code' => 'present|nullable|' . ( + Country::make(request()->country)->value === Country::france->value + ) ? 'postal_code:FR|max:25' : 'number|max:50', 'city' => 'present|nullable|string|between:3,20', 'country' => ['present', 'nullable', new Enum(Country::class)], 'address' => 'present|nullable|string|between:3,255', @@ -66,7 +72,6 @@ class ListenFormRequest extends FormRequest )); } elseif (isset(request()->file) and (request()->file->getClientMimeType() === "application/pdf")) { $rules = \array_merge($rules, [ - //phpcs:ignore Generic.Files.LineLength.TooLong 'file' => 'present|nullable|mimes:pdf' ]); } elseif ( diff --git a/resources/views/fo/pages/hire.blade.php b/resources/views/fo/pages/hire.blade.php index 47e723e..000c3f0 100644 --- a/resources/views/fo/pages/hire.blade.php +++ b/resources/views/fo/pages/hire.blade.php @@ -263,7 +263,7 @@ @php $findSection = $sectionModels->where('section', \App\Enums\Sections\PageSectionEnum::hire_find)->first(); @endphp -
+
diff --git a/resources/views/fo/pages/listen.blade.php b/resources/views/fo/pages/listen.blade.php index c1ccac2..46bb499 100644 --- a/resources/views/fo/pages/listen.blade.php +++ b/resources/views/fo/pages/listen.blade.php @@ -18,10 +18,13 @@ @section('content')
@@ -30,9 +33,13 @@
@if ($staticPageModel->content) @@ -127,10 +134,10 @@ - @foreach (\App\Enums\Country::validShippingCountries() as $key => $country) - @endforeach @@ -156,7 +163,6 @@ - @foreach (\App\Enums\Listen\ObjectEnum::toArray() as $key => $object) @endforeach - @push('scripts') - - @endpush @foreach ($errors->get('object') as $message)
{{ $message }}
@endforeach