Skip to content

Commit

Permalink
Merge branch '2.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
devansh-webkul committed Jan 21, 2025
2 parents b74d583 + a50a2a6 commit f9bc530
Show file tree
Hide file tree
Showing 22 changed files with 124 additions and 76 deletions.
60 changes: 30 additions & 30 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion packages/Webkul/Admin/src/Config/system.php
Original file line number Diff line number Diff line change
Expand Up @@ -1415,7 +1415,7 @@
'name' => 'zipcode',
'title' => 'admin::app.configuration.index.sales.shipping-setting.origin.zip',
'type' => 'text',
'validation' => 'required',
'validation' => 'required|postcode',
'channel_based' => true,
'locale_based' => true,
], [
Expand All @@ -1429,6 +1429,7 @@
'title' => 'admin::app.configuration.index.sales.shipping-setting.origin.vat-number',
'type' => 'text',
'channel_based' => true,
'validation' => 'phone',
], [
'name' => 'contact',
'title' => 'admin::app.configuration.index.sales.shipping-setting.origin.contact-number',
Expand Down
3 changes: 2 additions & 1 deletion packages/Webkul/Admin/src/Http/Requests/AddressRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Illuminate\Foundation\Http\FormRequest;
use Webkul\Core\Rules\PhoneNumber;
use Webkul\Core\Rules\PostCode;
use Webkul\Customer\Rules\VatIdRule;

class AddressRequest extends FormRequest
Expand Down Expand Up @@ -33,7 +34,7 @@ public function rules()
'country' => ['required'],
'state' => ['required'],
'city' => ['required'],
'postcode' => ['required', 'numeric'],
'postcode' => ['required', new PostCode],
'phone' => ['required', new PhoneNumber],
'vat_id' => [new VatIdRule],
'email' => ['required'],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Illuminate\Foundation\Http\FormRequest;
use Webkul\Core\Rules\PhoneNumber;
use Webkul\Core\Rules\PostCode;

class CartAddressRequest extends FormRequest
{
Expand Down Expand Up @@ -54,7 +55,7 @@ private function mergeAddressRules(string $addressType)
"{$addressType}.city" => ['required'],
"{$addressType}.country" => ['required'],
"{$addressType}.state" => ['required'],
"{$addressType}.postcode" => ['required', 'numeric'],
"{$addressType}.postcode" => ['required', new PostCode],
"{$addressType}.phone" => ['required', new PhoneNumber],
]);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
use Webkul\Core\Rules\Address;
use Webkul\Core\Rules\Code;
use Webkul\Core\Rules\PhoneNumber;
use Webkul\Core\Rules\PostCode;

class InventorySourceRequest extends FormRequest
{
Expand Down Expand Up @@ -39,7 +40,7 @@ public function rules()
'country' => ['required'],
'state' => ['required'],
'city' => ['required'],
'postcode' => ['required'],
'postcode' => ['required', new PostCode],
];
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,18 @@ export default {
return true;
});

defineRule("postcode", (value) => {
if (! value || ! value.length) {
return true;
}

if (! /^[a-zA-Z0-9][a-zA-Z0-9\s-]*[a-zA-Z0-9]$/.test(value)) {
return false;
}

return true;
});

defineRule("decimal", (value, { decimals = '*', separator = '.' } = {}) => {
if (value === null || value === undefined || value === '') {
return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ class="mb-2"
<x-admin::form.control-group.control
type="text"
name="postcode"
rules="required|integer"
rules="required|postcode"
:label="trans('admin::app.customers.customers.view.address.create.post-code')"
:placeholder="trans('admin::app.customers.customers.view.address.create.post-code')"
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ class="mb-2"
type="text"
name="postcode"
::value="address.postcode"
rules="required|integer"
rules="required|postcode"
:label="trans('admin::app.customers.customers.view.address.edit.post-code')"
:placeholder="trans('admin::app.customers.customers.view.address.edit.post-code')"
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ class="mb-2"
type="text"
::name="controlName + '.postcode'"
::value="address.postcode"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}|postcode"
:label="trans('admin::app.sales.orders.create.cart.address.postcode')"
:placeholder="trans('admin::app.sales.orders.create.cart.address.postcode')"
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -444,7 +444,7 @@ class="!mb-0 text-gray-600 dark:text-gray-300"
type="text"
id="postcode"
name="postcode"
rules="required"
rules="required|postcode"
:value="old('postcode')"
:label="trans('admin::app.settings.inventory-sources.create.postcode')"
:placeholder="trans('admin::app.settings.inventory-sources.create.postcode')"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ class="text-gray-600 dark:text-gray-300"
type="text"
id="postcode"
name="postcode"
rules="required"
rules="required|postcode"
:value="old('postcode') ?? $inventorySource->postcode"
:label="trans('admin::app.settings.inventory-sources.edit.postcode')"
:placeholder="trans('admin::app.settings.inventory-sources.edit.postcode')"
Expand Down
19 changes: 19 additions & 0 deletions packages/Webkul/Core/src/Rules/PostCode.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<?php

namespace Webkul\Core\Rules;

use Closure;
use Illuminate\Contracts\Validation\ValidationRule;

class PostCode implements ValidationRule
{
/**
* Run the validation rule.
*/
public function validate(string $attribute, mixed $value, Closure $fail): void
{
if (! preg_match('/^[a-zA-Z0-9][a-zA-Z0-9\s-]*[a-zA-Z0-9]$/', $value)) {
$fail('core::validation.postcode')->translate();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Illuminate\Foundation\Http\FormRequest;
use Webkul\Core\Rules\PhoneNumber;
use Webkul\Core\Rules\PostCode;
use Webkul\Customer\Rules\VatIdRule;

class AddressRequest extends FormRequest
Expand Down Expand Up @@ -33,7 +34,7 @@ public function rules()
'country' => core()->isCountryRequired() ? ['required'] : ['nullable'],
'state' => core()->isStateRequired() ? ['required'] : ['nullable'],
'city' => ['required', 'string'],
'postcode' => core()->isPostCodeRequired() ? ['required', 'numeric'] : ['numeric'],
'postcode' => core()->isPostCodeRequired() ? ['required', new PostCode] : [new PostCode],
'phone' => ['required', new PhoneNumber],
'vat_id' => [new VatIdRule],
'email' => ['required'],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,18 @@ export default {
return true;
});

defineRule("postcode", (value) => {
if (! value || ! value.length) {
return true;
}

if (! /^[a-zA-Z0-9][a-zA-Z0-9\s-]*[a-zA-Z0-9]$/.test(value)) {
return false;
}

return true;
});

defineRule(
"decimal",
(value, { decimals = "*", separator = "." } = {}) => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ class="overflow-hidden rounded-xl border max-md:rounded-lg max-md:!border-none m
<x-shop::form.control-group.control
type="text"
name="postcode"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}|postcode"
:label="trans('shop::app.checkout.cart.summary.estimate-shipping.postcode')"
:placeholder="trans('shop::app.checkout.cart.summary.estimate-shipping.postcode')"
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ class="mb-2"
type="text"
::name="controlName + '.postcode'"
::value="address.postcode"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}"
rules="{{ core()->isPostCodeRequired() ? 'required' : '' }}|postcode"
:label="trans('shop::app.checkout.onepage.address.postcode')"
:placeholder="trans('shop::app.checkout.onepage.address.postcode')"
/>
Expand Down
Loading

0 comments on commit f9bc530

Please sign in to comment.