sifatbaho
This commit is contained in:
66
resources/views/user/appraisers-bonus.blade.php
Executable file
66
resources/views/user/appraisers-bonus.blade.php
Executable file
@@ -0,0 +1,66 @@
|
||||
@extends('layouts.master')
|
||||
@section('title')
|
||||
@lang('translation.appraisers-bonus')
|
||||
@endsection
|
||||
@section('content')
|
||||
@component('components.breadcrumb')
|
||||
@slot('li_1')
|
||||
@lang("translation.pages")
|
||||
@endslot
|
||||
@slot('title')
|
||||
@lang('translation.appraisers-bonus')
|
||||
@endslot
|
||||
@endcomponent
|
||||
<div class="row">
|
||||
<div class="col-xl-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="d-flex align-items-center">
|
||||
<h5 class="card-title mb-0 flex-grow-1"> @lang('translation.appraisers-bonuses',[$appraiser->name]) </h5>
|
||||
<form action="{{ route('appraisers.bonus') }}" method="get" autocomplete="off" novalidate>
|
||||
<div class="flex-shrink-0">
|
||||
<input type="hidden" name="appraiser_id" value="{{ $appraiser->id }}">
|
||||
@component('components.page-size',['size'=>$size])@endcomponent
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover table-borderless align-middle table-nowrap mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">ID</th>
|
||||
<th scope="col">@lang('translation.order-number')</th>
|
||||
<th scope="col">@lang('translation.order-customer')</th>
|
||||
<th scope="col">@lang('translation.amount')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($bonuses as $bonus)
|
||||
<tr>
|
||||
<td class="fw-medium">{{($bonuses->currentPage() - 1) * $bonuses->perPage() + $loop->iteration}}</td>
|
||||
<td>
|
||||
<a href="{{ route('auto.show', [$bonus->order_id]) }}">
|
||||
{{ $bonus->number }}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
{{ $bonus->customer }}
|
||||
</td>
|
||||
<td>
|
||||
@component('components.price', ['balance' => $bonus->amount])
|
||||
@endcomponent
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="mt-3">{{ $bonuses->withQueryString()->links() }}</div>
|
||||
|
||||
</div><!-- end card-body -->
|
||||
</div><!-- end card -->
|
||||
</div><!-- end col -->
|
||||
</div>
|
||||
@endsection
|
||||
253
resources/views/user/appraisers.blade.php
Executable file
253
resources/views/user/appraisers.blade.php
Executable file
@@ -0,0 +1,253 @@
|
||||
@extends('layouts.master')
|
||||
@section('title')
|
||||
@lang('translation.appraisers')
|
||||
@endsection
|
||||
@section('content')
|
||||
@component('components.breadcrumb')
|
||||
@slot('li_1')
|
||||
@lang('translation.pages')
|
||||
@endslot
|
||||
@slot('title')
|
||||
@lang('translation.appraisers')
|
||||
@endslot
|
||||
@endcomponent
|
||||
<div class="row">
|
||||
<div class="col-xl-12">
|
||||
<div class="card">
|
||||
<div class="card-header border-0">
|
||||
<div class="d-flex align-items-center">
|
||||
<h5 class="card-title mb-0 flex-grow-1">@lang('translation.order-list')</h5>
|
||||
|
||||
@if(in_array(Auth::user()->role,['admin',\App\Enums\RoleEnum::MANAGER->name]))
|
||||
<div class="flex-shrink-0">
|
||||
<a href="javascript:void(0);" data-bs-toggle="modal"
|
||||
title="Update user informations" data-bs-target="#givingBonusModal"
|
||||
class="btn btn-outline-warning waves-effect waves-light mx-3">
|
||||
@lang('translation.give-bonus')
|
||||
</a>
|
||||
</div>
|
||||
@endif
|
||||
<div class="flex-shrink-0">
|
||||
<form action="{{ route('user.appraisers') }}" method="get" autocomplete="off" novalidate>
|
||||
@component('components.page-size',['size'=>$size])@endcomponent
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<ul class="nav nav-tabs nav-tabs-custom nav-success mb-3" role="tablist">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->get('status') === null ? 'active' : '' }}"
|
||||
href="{{ route('user.appraisers', ['status' => null]) }}">
|
||||
<i class="ri-store-2-fill me-1 align-bottom"></i>
|
||||
@lang('translation.appraisers')
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->status === 'active' ? 'active' : '' }}"
|
||||
href="{{ route('user.appraisers', ['status' => 'active']) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang('translation.active')
|
||||
<span class="badge bg-info bg-gradient align-middle ms-1">
|
||||
{{ $statusStats['active'] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->status === 'inactive' ? 'active' : '' }}"
|
||||
href="{{ route('user.appraisers', ['status' => 'inactive']) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang('translation.inactive')
|
||||
<span class="badge bg-danger align-middle ms-1">
|
||||
{{ $statusStats['inactive'] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-borderless align-middle table-nowrap mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">№</th>
|
||||
<th scope="col">@lang('translation.avatar')</th>
|
||||
<th scope="col">@lang('translation.user-name')</th>
|
||||
<th scope="col">@lang('translation.phone-number')</th>
|
||||
<th scope="col">@lang('translation.registered-date')</th>
|
||||
<th scope="col">@lang('translation.amount')</th>
|
||||
<th scope="col">@lang('translation.status')</th>
|
||||
<th scope="col">@lang('translation.actions')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($users as $user)
|
||||
<tr>
|
||||
<td class="fw-medium">{{($users->currentPage() - 1) * $users->perPage() + $loop->iteration}}</td>
|
||||
<td>
|
||||
<img class="rounded-circle header-profile-user" alt="200x200"
|
||||
src="{{ URL::asset($user->avatar) }}">
|
||||
</td>
|
||||
<td>
|
||||
<a class="text-decoration-underline"
|
||||
href="{{ route('user.show', [$user->id]) }}">
|
||||
{{ $user->name }}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
@component('components.callable-phone',['phone'=>$user->phone]) @endcomponent</td>
|
||||
<td>{{ $user->created_at }}</td>
|
||||
<td>
|
||||
<form method="get" action="{{ route('appraisers.bonus') }}">
|
||||
<input type="hidden" name="appraiser_id" value="{{ $user->id }}">
|
||||
<button
|
||||
data-bs-toggle="tooltip"
|
||||
data-bs-placement="bottom" style="border: none;background: none"
|
||||
class="waves-effect waves-light text-decoration-underline border-none"
|
||||
title="@lang('translation.view-all-bonuses')">
|
||||
@component('components.price',['balance'=>$user->balance]) @endcomponent
|
||||
</button>
|
||||
</form>
|
||||
</td>
|
||||
<td class="text-uppercase">
|
||||
@if ($user->status == 'active')
|
||||
<button type="button"
|
||||
class="btn btn-success btn-label waves-effect waves-light">
|
||||
<i class="ri-emotion-happy-line label-icon align-middle fs-16 me-2"></i>
|
||||
@lang('translation.'.$user->status)
|
||||
</button>
|
||||
@else
|
||||
<button type="button"
|
||||
class="btn btn-danger btn-label waves-effect waves-light">
|
||||
<i
|
||||
class="ri-emotion-unhappy-line label-icon align-middle fs-16 me-2"></i>
|
||||
@lang('translation.'.$user->status)
|
||||
</button>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
<div class="hstack gap-3 fs-15">
|
||||
@if(in_array(Auth::user()->role,['admin',\App\Enums\RoleEnum::MANAGER->name]))
|
||||
<form action="{{ route('user.activate', ['id' => $user->id]) }}"
|
||||
method="POST">
|
||||
@csrf
|
||||
@method('put')
|
||||
<button type="submit" data-bs-toggle="tooltip"
|
||||
data-bs-placement="bottom"
|
||||
class="btn btn-outline-primary btn-icon waves-effect waves-light"
|
||||
title="Setting user status is active">
|
||||
<i class="ri-emotion-happy-line"></i>
|
||||
<!-- Buttons with Label -->
|
||||
</button>
|
||||
</form>
|
||||
<form action="{{ route('user.block', ['id' => $user->id]) }}"
|
||||
method="POST">
|
||||
@csrf
|
||||
@method('put')
|
||||
<button type="submit"
|
||||
class="btn btn-outline-info btn-icon waves-effect waves-light"
|
||||
data-bs-toggle="tooltip" data-bs-placement="bottom"
|
||||
title="Setting user status is block">
|
||||
<i class=" ri-emotion-unhappy-line"></i>
|
||||
</button>
|
||||
</form>
|
||||
@endif
|
||||
<a href="{{ route('user.show', ['id' => $user->id]) }}"
|
||||
data-bs-toggle="tooltip" data-bs-placement="bottom"
|
||||
title="View user profile page"
|
||||
class="btn btn-outline-warning btn-icon waves-effect waves-light">
|
||||
<i class="ri-eye-line"></i>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="mt-3">{{ $users->withQueryString()->links() }}</div>
|
||||
</div><!-- end card-body -->
|
||||
</div><!-- end card -->
|
||||
</div><!-- end col -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Give bonus to Appraiser Modal -->
|
||||
<div class="modal fade" id="givingBonusModal" tabindex="-1" aria-labelledby="givingBonusModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content border-0">
|
||||
<div class="modal-header p-3 ps-4 bg-soft-success">
|
||||
<h5 class="modal-title" id="givingBonusModalLabel">@lang('translation.set-price')</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<form action="{{ route('credit.store') }}" method="POST">
|
||||
@csrf
|
||||
@method('put')
|
||||
|
||||
<div class="modal-body p-4">
|
||||
<div class="card-body">
|
||||
<input type="hidden" value="1-13333" name="order_id" id="order_id">
|
||||
<input type="hidden" value="null" name="order_type" id="order_type">
|
||||
<!-- Input with Label -->
|
||||
<div class="m-3">
|
||||
<label for="appraiser"
|
||||
class="form-label">@lang('translation.select-appraiser')</label>
|
||||
<select class="form-select mb-3" name="appraiser_id" id="appraiser"
|
||||
aria-label="Select appraiser or many appraisers" data-choices
|
||||
data-choices-search-true
|
||||
data-choices-removeItem required @error('appraiser_id') is-invalid @enderror>
|
||||
@foreach ($appraisers as $appraiser)
|
||||
<option class="text-uppercase" value="{{ $appraiser->id }}">
|
||||
{{ $appraiser->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
@error('appraiser_id')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
<!-- Input with Label -->
|
||||
<div class="m-3">
|
||||
<label for="cleave-numeral"
|
||||
class="form-label">@lang('translation.setting-bonus')</label>
|
||||
<input type="text" name="amount" class="form-control " id="cleave-numeral" required
|
||||
@error('amount') is-invalid @enderror>
|
||||
@error('amount')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<!-- Input with Label -->
|
||||
<div class="m-3">
|
||||
<label for="note" class="form-label">
|
||||
@lang('translation.note')
|
||||
</label>
|
||||
<textarea type="text" name="note" class="form-control " id="note"> </textarea>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end card body -->
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-light w-xs" data-bs-dismiss="modal">
|
||||
@lang('translation.cancel')
|
||||
</button>
|
||||
<button type="submit" class="btn btn-success w-xs">
|
||||
@lang('translation.save')
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!-- end modal-content -->
|
||||
</div>
|
||||
<!-- modal-dialog -->
|
||||
</div>
|
||||
<!-- Give bonus to Appraiser end modal -->
|
||||
|
||||
@endsection
|
||||
@section('script')
|
||||
<script src="{{ URL::asset('assets/libs/cleave.js/cleave.js.min.js') }}"></script>
|
||||
<script src="{{ URL::asset('/assets/js/app.min.js') }}"></script>
|
||||
@endsection
|
||||
474
resources/views/user/index.blade.php
Executable file
474
resources/views/user/index.blade.php
Executable file
@@ -0,0 +1,474 @@
|
||||
@extends('layouts.master')
|
||||
@section('title')
|
||||
@lang('translation.users')
|
||||
@endsection
|
||||
@section('content')
|
||||
@component('components.breadcrumb')
|
||||
@slot('li_1')
|
||||
@lang('translation.pages')
|
||||
@endslot
|
||||
@slot('title')
|
||||
@lang('translation.users')
|
||||
@endslot
|
||||
@endcomponent
|
||||
<div class="row">
|
||||
<div class="col-xl-12">
|
||||
<div class="card">
|
||||
<div class="card-header border-1">
|
||||
<div class="d-flex align-items-center">
|
||||
<h5 class="card-title mb-0 flex-grow-1">@lang('translation.users')</h5>
|
||||
<div class="flex-shrink-0 mx-2">
|
||||
<button data-bs-toggle="modal" data-bs-target="#userCreateModal" type="button"
|
||||
class="btn btn-primary add-btn">
|
||||
<i class="ri-add-line align-bottom me-1"></i>
|
||||
@lang('translation.create-user-account')
|
||||
</button>
|
||||
</div>
|
||||
<div class="flex-shrink-0 ">
|
||||
<form action="{{ route('user.index') }}" method="get" autocomplete="off" novalidate>
|
||||
@component('components.page-size',['size'=>$size]) @endcomponent
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<ul class="nav nav-tabs nav-tabs-custom nav-success mb-3" role="tablist">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->get('status') === null ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['status' => null]) }}">
|
||||
<i class="ri-store-2-fill me-1 align-bottom"></i>
|
||||
@lang('translation.users')
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->status === 'active' ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['status' => 'active']) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang('translation.active')
|
||||
<span class="badge bg-info bg-gradient align-middle ms-1">
|
||||
{{ $statusStats['active'] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->status === 'inactive' ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['status' => 'inactive']) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang('translation.inactive')
|
||||
<span class="badge bg-danger align-middle ms-1">
|
||||
{{ $statusStats['inactive'] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item my-3">|
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->role === \App\Enums\RoleEnum::USER->name ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['role' => \App\Enums\RoleEnum::USER->name]) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang(\App\Enums\RoleEnum::USER->value)
|
||||
<span class="badge bg-success bg-gradient align-middle ms-1">
|
||||
{{ $roleStats[\App\Enums\RoleEnum::USER->name] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->role === \App\Enums\RoleEnum::APPRAISER->name ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['role' => \App\Enums\RoleEnum::APPRAISER->name]) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang( \App\Enums\RoleEnum::APPRAISER->value)
|
||||
<span class="badge bg-primary bg-gradient align-middle ms-1">
|
||||
{{ $roleStats[\App\Enums\RoleEnum::APPRAISER->name] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link py-3 {{ request()->role === \App\Enums\RoleEnum::DILLER->name ? 'active' : '' }}"
|
||||
href="{{ route('user.index', ['role' => \App\Enums\RoleEnum::DILLER->name]) }}">
|
||||
<i class="ri-checkbox-circle-line me-1 align-bottom"></i>
|
||||
@lang( \App\Enums\RoleEnum::DILLER->value )
|
||||
<span class="badge bg-success bg-gradient align-middle ms-1">
|
||||
{{ $roleStats[\App\Enums\RoleEnum::DILLER->name] ?? 0 }}
|
||||
</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover table-borderless align-middle table-nowrap mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">№</th>
|
||||
<th scope="col">@lang('translation.avatar')</th>
|
||||
<th scope="col">@lang('translation.username')</th>
|
||||
<th scope="col">@lang('translation.phone-number')</th>
|
||||
<th scope="col">@lang('translation.registered-date')</th>
|
||||
<th scope="col">@lang('translation.role')</th>
|
||||
<th scope="col">@lang('translation.status')</th>
|
||||
<th scope="col">@lang('translation.actions')</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($users as $user)
|
||||
<tr>
|
||||
<td class="fw-medium">{{($users->currentPage() - 1) * $users->perPage() + $loop->iteration}}</td>
|
||||
<td>
|
||||
<img class="rounded-circle header-profile-user" alt="200x200"
|
||||
src="{{ URL::asset($user->avatar) }}">
|
||||
</td>
|
||||
<td>
|
||||
<a class="text-decoration-underline"
|
||||
href="{{ route('user.show', [$user->id]) }}">
|
||||
{{ $user->name }}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
@component('components.callable-phone',['phone'=>$user->phone])@endcomponent
|
||||
</td>
|
||||
<td>{{ $user->created_at }}</td>
|
||||
<td class="text-uppercase">
|
||||
<span class="badge badge-soft-info text-uppercase">
|
||||
@lang('translation.'.$user->role)
|
||||
</span>
|
||||
</td>
|
||||
<td class="text-uppercase">
|
||||
@if ($user->status == 'active')
|
||||
<button type="button"
|
||||
class="btn btn-success btn-label waves-effect waves-light">
|
||||
<i class="ri-emotion-happy-line label-icon align-middle fs-16 me-2"></i>
|
||||
@lang('translation.'.$user->status)
|
||||
</button>
|
||||
@else
|
||||
<button type="button"
|
||||
class="btn btn-danger btn-label waves-effect waves-light">
|
||||
<i
|
||||
class="ri-emotion-unhappy-line label-icon align-middle fs-16 me-2"></i>
|
||||
@lang('translation.'.$user->status)
|
||||
</button>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
<div class="hstack gap-3 fs-15">
|
||||
<form action="{{ route('user.activate', ['id' => $user->id]) }}"
|
||||
method="POST">
|
||||
@csrf
|
||||
@method('put')
|
||||
<button type="submit" data-bs-toggle="tooltip"
|
||||
data-bs-placement="bottom"
|
||||
class="btn btn-outline-success btn-icon waves-effect waves-light"
|
||||
title="Setting user status is active">
|
||||
<i class="ri-emotion-happy-line"></i>
|
||||
<!-- Buttons with Label -->
|
||||
</button>
|
||||
</form>
|
||||
|
||||
<form action="{{ route('user.block', ['id' => $user->id]) }}"
|
||||
method="POST">
|
||||
@csrf
|
||||
@method('put')
|
||||
<button type="submit"
|
||||
class="btn btn-outline-danger btn-icon waves-effect waves-light"
|
||||
data-bs-toggle="tooltip" data-bs-placement="bottom"
|
||||
title="Setting user status is block">
|
||||
<i class=" ri-emotion-unhappy-line"></i>
|
||||
</button>
|
||||
</form>
|
||||
<a href="{{ route('user.show', ['id' => $user->id]) }}"
|
||||
data-bs-toggle="tooltip" data-bs-placement="bottom"
|
||||
title="View user profile page"
|
||||
class="btn btn-outline-info btn-icon waves-effect waves-light">
|
||||
<i class="ri-eye-line"></i>
|
||||
</a>
|
||||
<a href="javascript:void(0);" data-bs-toggle="modal"
|
||||
title="Update user informations" data-bs-target="#userUpdateModal"
|
||||
data-bs-user-id="{{ $user->id }}"
|
||||
data-bs-user-name="{{ $user->name }}"
|
||||
data-bs-user-phone="{{ $user->phone }}"
|
||||
class="btn btn-outline-warning btn-icon waves-effect waves-light">
|
||||
<i class="ri-pencil-line"></i>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="mt-3">{{ $users->withQueryString()->links() }}</div>
|
||||
</div><!-- end card-body -->
|
||||
</div><!-- end card -->
|
||||
</div><!-- end col -->
|
||||
</div>
|
||||
|
||||
<!-- Varying modal content -->
|
||||
<div class="modal fade" id="userCreateModal" tabindex="-1" aria-labelledby="userCreateModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="userCreateModalLabel">
|
||||
@lang('translation.create-user-account')
|
||||
</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<form name="user-create-modal" class="needs-validation" novalidate method="post"
|
||||
action="{{ route('register') }}" enctype="multipart/form-data">
|
||||
@csrf
|
||||
<div class="modal-body">
|
||||
<div class="mb-3">
|
||||
<label for="cleave-phone" class="form-label">
|
||||
@lang('translation.phone')
|
||||
<span class="text-danger">*</span>
|
||||
</label>
|
||||
<input type="phone" class="form-control @error('phone') is-invalid @enderror"
|
||||
name="phone" id="cleave-phone" placeholder="@lang('translation.enter-phone')"
|
||||
required>
|
||||
@error('phone')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
@lang('translation.enter-phone')
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label for="username" class="form-label">
|
||||
@lang('translation.username')
|
||||
<span class="text-danger">*</span>
|
||||
</label>
|
||||
<input type="text" class="form-control @error('name') is-invalid @enderror" name="name"
|
||||
id="username" placeholder="@lang('translation.enter-username')" required>
|
||||
@error('name')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
@lang('translation.enter-username')
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mb-2">
|
||||
<label for="userpassword" class="form-label">
|
||||
@lang('translation.password')
|
||||
<span class="text-danger">*</span>
|
||||
</label>
|
||||
<input type="password" class="form-control @error('password') is-invalid @enderror"
|
||||
name="password" id="userpassword" placeholder="@lang('translation.enter-password')"
|
||||
required>
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
@lang('translation.enter-password')
|
||||
</div>
|
||||
</div>
|
||||
<div class=" mb-4">
|
||||
<label for="input-password">@lang('translation.confirm-password')</label>
|
||||
<input type="password"
|
||||
class="form-control @error('password_confirmation') is-invalid @enderror"
|
||||
name="password_confirmation" id="input-password"
|
||||
placeholder="@lang('translation.enter-confirm-password')"
|
||||
required>
|
||||
@error('password_confirmation')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="form-floating-icon">
|
||||
<i data-feather="lock"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class=" mb-4">
|
||||
<input type="file" class="form-control @error('avatar') is-invalid @enderror"
|
||||
name="avatar" id="edit-input-avatar" required>
|
||||
@error('avatar')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="">
|
||||
<i data-feather="file"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="w-auto btn btn-block btn-light" data-bs-dismiss="modal">
|
||||
@lang('translation.cancel')
|
||||
</button>
|
||||
<button type="submit" class="btn btn-block btn-success w-auto">
|
||||
@lang('translation.save')
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Varying modal content -->
|
||||
<div class="modal fade" id="userUpdateModal" tabindex="-1" aria-labelledby="userUpdateModalLabel"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="userUpdateModalLabel"> {{ __('translation.update') }} </h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<form name="user-update-modal" action="{{ route('user.update') }}" method="post"
|
||||
enctype="multipart/form-data" needs-validation>
|
||||
@csrf
|
||||
@method('put')
|
||||
<div class="modal-body">
|
||||
<input type="hidden" name="user_id" id="edit-user-id">
|
||||
<div class="mb-3">
|
||||
<label for="cleave-phone1" class="form-label"> {{ __('translation.phone') }} <span
|
||||
class="text-danger">*</span></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text" id="basic-phone">
|
||||
<i class="ri-file-user-line"></i>
|
||||
</span>
|
||||
<input type="text"
|
||||
class=" form-control @error('phone') is-invalid @enderror"
|
||||
aria-label="Username" aria-describedby="basic-phone" name="phone"
|
||||
id="cleave-phone1" value="" placeholder="@lang('translation.enter-phone')" required>
|
||||
</div>
|
||||
@error('phone')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
Please enter phone
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label for="edit-user-name" class="form-label">
|
||||
{{ __('translation.username') }}
|
||||
<span class="text-danger">*</span></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text" id="basic-name">
|
||||
<i class="ri-file-user-line"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control @error('name') is-invalid @enderror"
|
||||
name="name" id="edit-user-name" aria-label="Username"
|
||||
aria-describedby="basic-name" placeholder="@lang('translation.enter-username')"
|
||||
required>
|
||||
</div>
|
||||
@error('name')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
Please enter username
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mb-2">
|
||||
<label for="edit-user-password" class="form-label">
|
||||
{{ __('translation.password') }}
|
||||
<span class="text-danger">*</span></label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text" id="basic-password1">
|
||||
<i class="ri-file-user-line"></i>
|
||||
</span>
|
||||
<input type="password" class="form-control @error('password') is-invalid @enderror"
|
||||
aria-label="Username" aria-describedby="basic-password" name="password"
|
||||
id="edit-user-password" placeholder="@lang('translation.enter-password')">
|
||||
</div>
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="invalid-feedback">
|
||||
Please enter password
|
||||
</div>
|
||||
</div>
|
||||
<div class=" mb-4">
|
||||
<label for="edit-input-password">
|
||||
{{ __('translation.confirm-password') }}
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-text" id="basic-confirmation">
|
||||
<i class="ri-file-user-line"></i>
|
||||
</span>
|
||||
<input type="password"
|
||||
class="form-control @error('password_confirmation') is-invalid @enderror"
|
||||
name="password_confirmation" id="edit-input-password2" aria-label="Username"
|
||||
aria-describedby="basic-confirmation"
|
||||
placeholder="@lang('translation.enter-confirm-password')">
|
||||
</div>
|
||||
|
||||
<div class="form-floating-icon">
|
||||
<i data-feather="lock"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class=" mb-4">
|
||||
<input type="file" class="form-control @error('avatar') is-invalid @enderror"
|
||||
name="avatar" id="input-avatar">
|
||||
@error('avatar')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
<div class="">
|
||||
<i data-feather="file"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-light"
|
||||
data-bs-dismiss="modal">{{ __('translation.back') }}</button>
|
||||
<button type="submit" class="btn btn-primary">{{ __('translation.save') }}</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@section('script')
|
||||
{{-- <script src="{{ URL::asset('assets/libs/prismjs/prismjs.min.js') }}"></script> --}}
|
||||
<script src="{{ URL::asset('assets/libs/cleave.js/cleave.js.min.js') }}"></script>
|
||||
<script src="{{ URL::asset('assets/js/pages/form-validation.init.js') }}"></script>
|
||||
<script src="{{ URL::asset('/assets/js/pages/form-masks.js') }}"></script>
|
||||
<script src="{{ URL::asset('/assets/js/app.min.js') }}"></script>
|
||||
<script>
|
||||
if (document.querySelector("#cleave-phone1")) {
|
||||
|
||||
new Cleave('#cleave-phone1', {
|
||||
prefix: '+998',
|
||||
delimiters: ['-', '-', '-', '-'],
|
||||
blocks: [4, 2, 3, 2, 2]
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<script>
|
||||
var userUpdateModal = document.getElementById('userUpdateModal')
|
||||
userUpdateModal.addEventListener('show.bs.modal', function (event) {
|
||||
// Button that triggered the modal
|
||||
var button = event.relatedTarget;
|
||||
// Extract info from data-bs-* attributes
|
||||
var userNameAttr = button.getAttribute('data-bs-user-name');
|
||||
var userIdAttr = button.getAttribute('data-bs-user-id');
|
||||
var userPhoneAttr = button.getAttribute('data-bs-user-phone');
|
||||
console.log(userPhoneAttr);
|
||||
// If necessary, you could initiate an AJAX request here
|
||||
// and then do the updating in a callback.
|
||||
//
|
||||
// Update the modal's content.
|
||||
var modalTitle = userUpdateModal.querySelector('.modal-title');
|
||||
var modalBodyUserName = userUpdateModal.querySelector('.modal-body input#edit-user-name');
|
||||
var modalBodyUserId = userUpdateModal.querySelector('.modal-body input#edit-user-id');
|
||||
var modalBodyUserPhone = userUpdateModal.querySelector('.modal-body input#cleave-phone1');
|
||||
|
||||
modalTitle.textContent += userNameAttr;
|
||||
modalBodyUserName.value = userNameAttr;
|
||||
modalBodyUserId.value = userIdAttr;
|
||||
modalBodyUserPhone.value = userPhoneAttr;
|
||||
})
|
||||
</script>
|
||||
@endsection
|
||||
343
resources/views/user/profile-edit.blade.php
Executable file
343
resources/views/user/profile-edit.blade.php
Executable file
@@ -0,0 +1,343 @@
|
||||
@extends('layouts.master')
|
||||
@section('title')
|
||||
@lang('translation.settings')
|
||||
@endsection
|
||||
@section('content')
|
||||
<div class="position-relative mx-n4 mt-n4">
|
||||
<div class="profile-wid-bg profile-setting-img">
|
||||
<img src="{{ URL::asset('assets/images/profile-bg.jpg') }}" class="profile-wid-img" alt="">
|
||||
<div class="overlay-content">
|
||||
<div class="text-end p-3">
|
||||
<div class="p-0 ms-auto rounded-circle profile-photo-edit">
|
||||
<input id="profile-foreground-img-file-input" type="file" class="profile-foreground-img-file-input"
|
||||
data-url="{{ route('profile.files') }}" data-id="{{ $user->id }}" data-type="COVER"
|
||||
data-csrf="{{ csrf_token() }}">
|
||||
<label for="profile-foreground-img-file-input" class="profile-photo-edit btn btn-light">
|
||||
<i class="ri-image-edit-line align-bottom me-1"></i> Change Cover
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xxl-3">
|
||||
<div class="card mt-n5">
|
||||
<div class="card-body p-4">
|
||||
<div class="text-center">
|
||||
<div class="profile-user position-relative d-inline-block mx-auto mb-4">
|
||||
<img
|
||||
src="@if (Auth::user()->avatar != '') {{ URL::asset( Auth::user()->avatar) }}@else{{ URL::asset('assets/images/users/avatar-1.jpg') }} @endif"
|
||||
class=" rounded-circle avatar-xl img-thumbnail user-profile-image"
|
||||
alt="user-profile-image">
|
||||
<div class="avatar-xs p-0 rounded-circle profile-photo-edit">
|
||||
<input id="profile-img-file-input" type="file" class="profile-img-file-input"
|
||||
data-url="{{ route('profile.files') }}" data-id="{{ $user->id }}"
|
||||
data-type="AVATAR">
|
||||
<label for="profile-img-file-input" class="profile-photo-edit avatar-xs">
|
||||
<span class="avatar-title rounded-circle bg-light text-body">
|
||||
<i class="ri-camera-fill"></i>
|
||||
</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="fs-16 mb-1">
|
||||
{{ $user->name }}
|
||||
</h5>
|
||||
<p class="text-muted mb-0">
|
||||
{{ $user->role }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end card-->
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center mb-5">
|
||||
<div class="flex-grow-1">
|
||||
<h5 class="card-title mb-0">Complete Your Profile</h5>
|
||||
</div>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="javascript:void(0);" class="badge bg-light text-primary fs-12"><i
|
||||
class="ri-edit-box-line align-bottom me-1"></i> Edit</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress animated-progress custom-progress progress-label">
|
||||
<div class="progress-bar bg-danger" role="progressbar" style="width: 30%" aria-valuenow="30"
|
||||
aria-valuemin="0" aria-valuemax="100">
|
||||
<div class="label">30%</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end card-->
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-xxl-9">
|
||||
<div class="card mt-xxl-n5">
|
||||
<div class="card-header">
|
||||
<ul class="nav nav-tabs-custom rounded card-header-tabs border-bottom-0" role="tablist">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link " href="{{ route('profile.info.edit') }}">
|
||||
<i class="fas fa-home"></i>
|
||||
Personal Details
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link active" data-bs-toggle="tab" href="#changePassword" role="tab">
|
||||
<i class="far fa-user"></i>
|
||||
Change Password
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="card-body p-4">
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane " id="personalDetails" role="tabpanel">
|
||||
<form action="javascript:void(0);">
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div class="mb-3">
|
||||
<label for="firstnameInput" class="form-label">First
|
||||
Name</label>
|
||||
<input type="text" class="form-control" id="firstnameInput"
|
||||
placeholder="Enter your firstname"
|
||||
value="{{ auth()->user()->firstName }}">
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-6">
|
||||
<div class="mb-3">
|
||||
<label for="lastnameInput" class="form-label">Last
|
||||
Name</label>
|
||||
<input type="text" class="form-control" id="lastnameInput"
|
||||
placeholder="Enter your lastname"
|
||||
value="{{ auth()->user()->lastName }}">
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-6">
|
||||
<div class="mb-3">
|
||||
<label for="cleave-phone" class="form-label">Phone
|
||||
Number</label>
|
||||
<input type="text" disabled class="form-control" id="cleave-phone"
|
||||
value="{{ auth()->user()->phone }}">
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-6">
|
||||
<div class="mb-3">
|
||||
<label for="emailInput" class="form-label">
|
||||
Email Address
|
||||
</label>
|
||||
<input type="email" class="form-control" id="emailInput"
|
||||
placeholder="Enter your email" value="daveadame@velzon.com">
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
|
||||
<div class="col-lg-12">
|
||||
<div class="mb-3 pb-2">
|
||||
<label for="exampleFormControlTextarea"
|
||||
class="form-label">Description</label>
|
||||
<textarea class="form-control" id="exampleFormControlTextarea"
|
||||
placeholder="Enter your description" rows="3">Hi I'm Anna Adame,It will be as simple as Occidental; in fact, it will be Occidental. To an English person, it will seem like simplified English, as a skeptical Cambridge friend of mine told me what Occidental is European languages are members of the same family.</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-12">
|
||||
<div class="hstack gap-2 justify-content-end">
|
||||
<button type="submit" class="btn btn-primary">Updates</button>
|
||||
<button type="button" class="btn btn-soft-success">Cancel</button>
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
</div>
|
||||
<!--end row-->
|
||||
</form>
|
||||
</div>
|
||||
<!--end tab-pane-->
|
||||
<div class="tab-pane active" id="changePassword" role="tabpanel">
|
||||
<form action="{{ route('password.change') }}" method="post">
|
||||
@csrf
|
||||
@method('put')
|
||||
<div class="row g-2">
|
||||
<div class="col-lg-4">
|
||||
<div>
|
||||
<label for="oldpasswordInput" class="form-label">Old
|
||||
Password*</label>
|
||||
<input type="password" name="old_password"
|
||||
class="form-control @error('old_password') is-invalid @enderror"
|
||||
id="oldpasswordInput"
|
||||
placeholder="Enter current password">
|
||||
@error('old_password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-4">
|
||||
<div>
|
||||
<label for="newpasswordInput" class="form-label">New
|
||||
Password*
|
||||
</label>
|
||||
<input type="password"
|
||||
class="form-control @error('password') is-invalid @enderror"
|
||||
id="newpasswordInput"
|
||||
placeholder="Enter new password" name="password">
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-4">
|
||||
<div>
|
||||
<label for="confirmpasswordInput" class="form-label">Confirm
|
||||
Password*</label>
|
||||
<input type="password"
|
||||
class="form-control @error('password_confirmation') is-invalid @enderror"
|
||||
id="password_confirmedInput"
|
||||
placeholder="Confirm password" name="password_confirmation">
|
||||
@error('password_confirmation')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
<div class="col-lg-12">
|
||||
<div class="text-end">
|
||||
<button type="submit" class="btn btn-success">Change
|
||||
Password
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
</div>
|
||||
<!--end row-->
|
||||
</form>
|
||||
<div class="mt-4 mb-3 border-bottom pb-2">
|
||||
<div class="float-end">
|
||||
<a href="javascript:void(0);" class="link-primary">All Logout</a>
|
||||
</div>
|
||||
<h5 class="card-title">Login History</h5>
|
||||
</div>
|
||||
<div class="d-flex align-items-center mb-3">
|
||||
<div class="flex-shrink-0 avatar-sm">
|
||||
<div class="avatar-title bg-light text-primary rounded-3 fs-18">
|
||||
<i class="ri-smartphone-line"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1 ms-3">
|
||||
<h6>iPhone 12 Pro</h6>
|
||||
<p class="text-muted mb-0">Los Angeles, United States - March 16 at
|
||||
2:47PM</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="javascript:void(0);">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex align-items-center mb-3">
|
||||
<div class="flex-shrink-0 avatar-sm">
|
||||
<div class="avatar-title bg-light text-primary rounded-3 fs-18">
|
||||
<i class="ri-tablet-line"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1 ms-3">
|
||||
<h6>Apple iPad Pro</h6>
|
||||
<p class="text-muted mb-0">Washington, United States - November 06
|
||||
at 10:43AM</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="javascript:void(0);">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex align-items-center mb-3">
|
||||
<div class="flex-shrink-0 avatar-sm">
|
||||
<div class="avatar-title bg-light text-primary rounded-3 fs-18">
|
||||
<i class="ri-smartphone-line"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1 ms-3">
|
||||
<h6>Galaxy S21 Ultra 5G</h6>
|
||||
<p class="text-muted mb-0">Conneticut, United States - June 12 at
|
||||
3:24PM</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="javascript:void(0);">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex align-items-center">
|
||||
<div class="flex-shrink-0 avatar-sm">
|
||||
<div class="avatar-title bg-light text-primary rounded-3 fs-18">
|
||||
<i class="ri-macbook-line"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-grow-1 ms-3">
|
||||
<h6>Dell Inspiron 14</h6>
|
||||
<p class="text-muted mb-0">Phoenix, United States - July 26 at
|
||||
8:10AM</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="javascript:void(0);">Logout</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end tab-pane-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end col-->
|
||||
</div>
|
||||
<!--end row-->
|
||||
@endsection
|
||||
@section('script')
|
||||
<script src="{{ URL::asset('assets/js/pages/profile-setting.init.js') }}"></script>
|
||||
<script src="{{ URL::asset('/assets/js/app.min.js') }}"></script>
|
||||
<script>
|
||||
// if (document.querySelector("#profile-foreground-img-file-input")) {
|
||||
// var foreground = document.querySelector("#profile-foreground-img-file-input");
|
||||
// foreground.addEventListener("change", function(data, value) {
|
||||
// var preview = document.querySelector(".profile-wid-img");
|
||||
// var file = document.querySelector(".profile-foreground-img-file-input").files[0];
|
||||
// var reader = new FileReader();
|
||||
// reader.addEventListener("load", function() {
|
||||
// preview.src = reader.result;
|
||||
// var formData = new FormData();
|
||||
// formData.append("file_type", foreground.dataset.type);
|
||||
// formData.append("user_id", foreground.dataset.id);
|
||||
// formData.append("file", reader.result);
|
||||
// console.table(formData);
|
||||
|
||||
// var xhttp = new XMLHttpRequest();
|
||||
// xhttp.onreadystatechange = function(response) {
|
||||
// if (this.readyState == 4 && this.status == 200) {
|
||||
// // Typical action to be performed when the document is ready:
|
||||
// preview.src = reader.result;
|
||||
// console.log(response);
|
||||
// }
|
||||
// };
|
||||
// console.table(foreground.dataset);
|
||||
// xhttp.open("POST", foreground.dataset.url, true);
|
||||
// xhttp.setRequestHeader('X-CSRF-TOKEN', foreground.dataset.csrf);
|
||||
// xhttp.send(formData);
|
||||
// }, function(e) {
|
||||
// console.log(e);
|
||||
// });
|
||||
|
||||
|
||||
// if (file) {
|
||||
// reader.readAsDataURL(file);
|
||||
// }
|
||||
// });
|
||||
//} // Profile Foreground Img
|
||||
</script>
|
||||
@endsection
|
||||
2735
resources/views/user/profile-update.blade.php
Executable file
2735
resources/views/user/profile-update.blade.php
Executable file
File diff suppressed because it is too large
Load Diff
2594
resources/views/user/profile.blade.php
Executable file
2594
resources/views/user/profile.blade.php
Executable file
File diff suppressed because it is too large
Load Diff
2398
resources/views/user/show.blade.php
Executable file
2398
resources/views/user/show.blade.php
Executable file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user