!98 Optimize the personal center button, etc.
* wip * Optimize the personal center button, etc. * wip * wip * wip * Modify an entry, name -> full name
This commit is contained in:
parent
b88d889861
commit
812b7655af
|
|
@ -25,7 +25,6 @@ class AddressRequest extends FormRequest
|
|||
{
|
||||
return [
|
||||
'name' => 'required|min:2|max:16',
|
||||
'phone' => 'required|min:6|max:16',
|
||||
'country_id' => 'required|exists:countries,id',
|
||||
'zone_id' => 'required|exists:zones,id',
|
||||
'address_1' => 'required',
|
||||
|
|
@ -36,7 +35,6 @@ class AddressRequest extends FormRequest
|
|||
{
|
||||
return [
|
||||
'name' => trans('address.name'),
|
||||
'phone' => trans('address.phone'),
|
||||
'country_id' => trans('address.country_id'),
|
||||
'zone_id' => trans('address.zone_id'),
|
||||
'address_1' => trans('address.address_1'),
|
||||
|
|
|
|||
|
|
@ -100,6 +100,7 @@ h1,h2,h3, h4, h5, h6, b, strong {
|
|||
|
||||
img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -12,14 +12,15 @@ body.page-account-address, body.page-checkout {
|
|||
.addresses-wrap {
|
||||
.item {
|
||||
position: relative;
|
||||
padding: 14px 14px 14px 18px;
|
||||
padding: 14px;
|
||||
margin-bottom: 1.3rem;
|
||||
border: 1px solid #e8e8e8;
|
||||
height: 130px;
|
||||
border: 1px solid #e5e5e5;
|
||||
height: 140px;
|
||||
cursor: pointer;
|
||||
|
||||
@media (max-width: 768px) {
|
||||
padding: 10px 10px 10px 14px;
|
||||
padding: 10px;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
|
|
@ -58,6 +59,7 @@ body.page-account-address, body.page-checkout {
|
|||
|
||||
.zipcode {
|
||||
margin-bottom: .3rem;
|
||||
min-height: 20px;
|
||||
}
|
||||
|
||||
.address-info {
|
||||
|
|
@ -67,13 +69,11 @@ body.page-account-address, body.page-checkout {
|
|||
}
|
||||
|
||||
.address-bottom {
|
||||
min-height: 28px;
|
||||
display: flex;
|
||||
align-items: center; // flex-start | center
|
||||
justify-content: space-between; // flex-end | center | space-between
|
||||
// flex-wrap: wrap;
|
||||
a {
|
||||
color: #2d68a8;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -170,9 +170,8 @@ body.page-checkout, body.page-bk-stripe {
|
|||
align-items: center; // flex-start | center
|
||||
padding-right: 4px;
|
||||
|
||||
img {
|
||||
width: 40px;
|
||||
margin-right: 10px;
|
||||
.img {
|
||||
flex: 0 0 40px;
|
||||
}
|
||||
|
||||
.quantity {
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@ return [
|
|||
'addresses' => [
|
||||
'index' => 'Addresses',
|
||||
'add_address' => 'Add New Address',
|
||||
'default_address' => 'Default Address',
|
||||
'default_address' => 'Default',
|
||||
'delete' => 'Delete',
|
||||
'edit' => 'Edit',
|
||||
'enter_name' => 'Please type in your name',
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ return [
|
|||
'index' => '修改个人信息',
|
||||
'modify_avatar' => '修改头像',
|
||||
'suggest' => '上传JPG或PNG图片。建议300 x 300。',
|
||||
'name' => '名称',
|
||||
'name' => '昵称',
|
||||
'email' => '邮箱',
|
||||
'crop' => '裁剪',
|
||||
'password_edit_success' => '密码修改成功',
|
||||
|
|
@ -48,7 +48,7 @@ return [
|
|||
'index' => '我的收藏',
|
||||
'product' => '商品',
|
||||
'price' => '价格',
|
||||
'check_details' => '查看详情',
|
||||
'check_details' => '查看',
|
||||
],
|
||||
|
||||
'order' => [
|
||||
|
|
|
|||
|
|
@ -19,27 +19,27 @@
|
|||
<div class="card h-min-600">
|
||||
<div class="card-header d-flex justify-content-between align-items-center">
|
||||
<h5 class="card-title">{{ __('shop/account.addresses.index') }}</h5>
|
||||
</div>
|
||||
<div class="card-body h-600">
|
||||
<button v-if="addresses.length" class="btn btn-dark mb-3" @click="editAddress"><i class="bi bi-plus-square-dotted me-1"></i>
|
||||
<button v-if="addresses.length" class="btn btn-primary btn-sm mb-3" @click="editAddress"><i class="bi bi-plus-square-dotted me-1"></i>
|
||||
{{ __('shop/account.addresses.add_address') }}</button>
|
||||
</div>
|
||||
<div class="card-body h-600 pt-0">
|
||||
<div class="addresses-wrap" v-cloak>
|
||||
<div class="row" v-if="addresses.length">
|
||||
<div class="col-6" v-for="address, index in addresses" :key="index">
|
||||
<div class="col-md-6 col-12" v-for="address, index in addresses" :key="index">
|
||||
<div class="item">
|
||||
<div class="name-wrap">
|
||||
<span class="name">@{{ address.name }}</span>
|
||||
<span class="phone">@{{ address.phone }}</span>
|
||||
</div>
|
||||
<div class="zipcode" style="min-height: 20px">@{{ address.zipcode }}</div>
|
||||
<div class="zipcode">@{{ address.zipcode }}</div>
|
||||
<div class="address-info">@{{ address.country }} @{{ address.zone }} @{{ address.city }}
|
||||
@{{ address.address_1 }}</div>
|
||||
<div class="address-bottom">
|
||||
<div><span class="badge bg-success"
|
||||
v-if="address.default">{{ __('shop/account.addresses.default_address') }}</span></div>
|
||||
<div>
|
||||
<a class="me-2" @click.stop="deleteAddress(index)">{{ __('shop/account.addresses.delete') }}</a>
|
||||
<a href="javascript:void(0)" @click.stop="editAddress(index)">{{ __('shop/account.addresses.edit') }}</a>
|
||||
<button type="button" class="me-2 btn btn-outline-secondary btn-sm" @click.stop="deleteAddress(index)">{{ __('shop/account.addresses.delete') }}</button>
|
||||
<button type="button" href="javascript:void(0)" class="btn btn-outline-secondary btn-sm" @click.stop="editAddress(index)">{{ __('shop/account.addresses.edit') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
<tr class="{{ $loop->first ? 'first-tr' : '' }}">
|
||||
<td>
|
||||
<div class="product-info">
|
||||
<div class="img border d-flex justify-content-between align-items-center"><img src="{{ $product->image }}" class="img-fluid"></div>
|
||||
<div class="img border d-flex justify-content-center align-items-center wh-60"><img src="{{ $product->image }}" class="img-fluid"></div>
|
||||
<div class="name">
|
||||
<a class="text-dark"
|
||||
href="{{ shop_route('products.show', ['product' => $product->product_id]) }}">{{ $product->name }}</a>
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@
|
|||
@foreach ($order->orderProducts as $product)
|
||||
<div class="product-list">
|
||||
<div class="d-flex">
|
||||
<div class="left border d-flex justify-content-between align-items-center"><img src="{{ $product->image }}" class="img-fluid"></div>
|
||||
<div class="left border d-flex justify-content-center align-items-center wh-80"><img src="{{ $product->image }}" class="img-fluid"></div>
|
||||
<div class="right">
|
||||
<div class="name">
|
||||
<a class="text-dark" href="{{ shop_route('products.show', ['product' => $product->product_id]) }}">{{ $product->name }}</a>
|
||||
|
|
|
|||
|
|
@ -35,9 +35,9 @@
|
|||
<td>{{ $item['price'] }}</td>
|
||||
<td class="text-end">
|
||||
<div class="">
|
||||
<a class="btn btn-dark btn-sm add-cart"
|
||||
<a class="btn btn-outline-secondary btn-sm add-cart"
|
||||
href="{{ shop_route('products.show', $item['product_id']) }}">{{ __('shop/account.wishlist.check_details') }}</a>
|
||||
<button class="btn btn-danger btn-sm remove-wishlist"><i class="bi bi-x-lg"></i></button>
|
||||
<button class="btn btn-outline-danger btn-sm remove-wishlist"><i class="bi bi-x-lg"></i></button>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@
|
|||
<td>
|
||||
<div class="d-flex align-items-center p-image">
|
||||
<input class="form-check-input" type="checkbox" @change="checkedCartTr(index)" v-model="product.selected">
|
||||
<div class="border d-flex align-items-center justify-content-between wh-80 ms-3"><img :src="product.image_url" class="img-fluid"></div>
|
||||
<div class="border d-flex align-items-center justify-content-center wh-80 ms-3"><img :src="product.image_url" class="img-fluid"></div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
|
|
|
|||
|
|
@ -88,7 +88,9 @@
|
|||
@foreach ($carts['carts'] as $cart)
|
||||
<div class="item">
|
||||
<div class="image">
|
||||
<img src="{{ $cart['image'] }}" class="img-fluid">
|
||||
<div class="img border d-flex align-items-center justify-content-center wh-40 me-2">
|
||||
<img src="{{ image_resize($cart['image'], 100, 100) }}" class="img-fluid">
|
||||
</div>
|
||||
<div class="name">
|
||||
<div title="{{ $cart['name'] }}" class="text-truncate-2">{{ $cart['name'] }}</div>
|
||||
@if ($cart['variant_labels'])
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
<span class="badge bg-success"
|
||||
v-if="form.shipping_address_id == address.id">{{ __('shop/checkout.chosen') }}</span>
|
||||
</div>
|
||||
<a href="javascript:void(0)" class=""
|
||||
@click.stop="editAddress(index, 'shipping_address_id')">{{ __('shop/checkout.edit') }}</a>
|
||||
<button type="button" class="btn btn-outline-secondary btn-sm"
|
||||
@click.stop="editAddress(index, 'shipping_address_id')">{{ __('shop/checkout.edit') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -59,8 +59,8 @@
|
|||
<div>
|
||||
<span class="badge bg-success">{{ __('shop/checkout.chosen') }}</span>
|
||||
</div>
|
||||
<a class="javascript:void(0)"
|
||||
@click.stop="editAddress(null, 'guest_shipping_address')">{{ __('shop/checkout.edit') }}</a>
|
||||
<button type="button" class="btn btn-outline-secondary btn-sm"
|
||||
@click.stop="editAddress(null, 'guest_shipping_address')">{{ __('shop/checkout.edit') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -10,9 +10,6 @@
|
|||
<el-input v-model="form.email"></el-input>
|
||||
</el-form-item>
|
||||
@endif
|
||||
<el-form-item label="{{ __('address.phone') }}" prop="phone">
|
||||
<el-input maxlength="11" v-model="form.phone" type="number"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.address') }}" required>
|
||||
<div class="row dialog-address">
|
||||
<div class="col-4">
|
||||
|
|
@ -40,15 +37,18 @@
|
|||
</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.post_code') }}" prop="zipcode">
|
||||
<el-input v-model="form.zipcode"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.address_1') }}" prop="address_1">
|
||||
<el-input v-model="form.address_1"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.address_2') }}">
|
||||
<el-input v-model="form.address_2"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.post_code') }}" prop="zipcode">
|
||||
<el-input v-model="form.zipcode"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.phone') }}">
|
||||
<el-input maxlength="11" v-model="form.phone" type="number"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="{{ __('address.default') }}" v-if="source.isLogin">
|
||||
<el-switch
|
||||
v-model="form.default"
|
||||
|
|
@ -102,11 +102,6 @@
|
|||
message: '{{ __('shop/login.enter_email') }}',
|
||||
trigger: 'blur'
|
||||
}, ],
|
||||
phone: [{
|
||||
required: true,
|
||||
message: '{{ __('shop/account.addresses.enter_phone') }}',
|
||||
trigger: 'blur'
|
||||
}, ],
|
||||
address_1: [{
|
||||
required: true,
|
||||
message: ' {{ __('shop/account.addresses.enter_address') }}',
|
||||
|
|
|
|||
Loading…
Reference in New Issue