edit_customer.blade.php 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
  1. @extends('layouts.master')
  2. @section('title') @lang('translation.Form_Wizard') @endsection
  3. @section('content')
  4. @component('components.breadcrumb')
  5. @slot('li_1') Forms @endslot
  6. @slot('title') Add New Customer @endslot
  7. @endcomponent
  8. <div class="row">
  9. <form class="needs-validation" id="customer_form" action="{{ route('update_customer', ['id' => $user->id]) }}" method="post" enctype="multipart/form-data">
  10. @csrf
  11. <div class="col-lg-12">
  12. <div class="card">
  13. <div class="card-body">
  14. <!-- <h4 class="card-title mb-4">Basic Wizard</h4> -->
  15. <div id="basic-example">
  16. <!-- Seller Details -->
  17. <h3>Customer Details</h3>
  18. <section>
  19. <div class="row">
  20. <div class="col-lg-6">
  21. <div class="mb-3">
  22. <label for="first_name" class="form-label">First name</label>
  23. <input type="text" name="first_name" class="form-control" id="first_name" value="{{ $user->UserData->first_name }}" required>
  24. <div id="first_name_errors" class="invalid-feedback">
  25. </div>
  26. </div>
  27. </div>
  28. <div class="col-lg-6">
  29. <div class="mb-3">
  30. <label for="last_name">Last name</label>
  31. <input type="text" name="last_name" class="form-control" id="last_name" placeholder="Enter Your Last Name" value="{{ $user->UserData->last_name }}" required>
  32. <div id="last_name_errors" class="invalid-feedback">
  33. </div>
  34. </div>
  35. </div>
  36. </div>
  37. <div class="row">
  38. <div class="col-lg-6">
  39. <div class="mb-3">
  40. <label for="phone_number">Phone</label>
  41. <input type="text" name="phone_number" class="form-control" id="phone_number" placeholder="Enter Your Phone No." value="{{ $user->UserData->phone_number }}" required>
  42. <div id="phone_number_errors" class="invalid-feedback">
  43. </div>
  44. </div>
  45. </div>
  46. <div class="col-lg-6">
  47. <div class="mb-3">
  48. <label for="email">Email</label>
  49. <input type="email" name="email" class="form-control" id="email" placeholder="Enter Your Email ID" value="{{ $user->email }}" required>
  50. <div id="email_errors" class="invalid-feedback">
  51. </div>
  52. </div>
  53. </div>
  54. </div>
  55. <div class="row">
  56. <div class="col-lg-6">
  57. <div class="mb-3">
  58. <label for="address">User Type</label>
  59. <select name="user_type" class="form-select">
  60. <option value="Subscribers" {{ $user->UserData->user_type == 'Subscriber' ? 'selected' : '' }} >Subscriber/Rider</option>
  61. <option value="Corporate" {{ $user->UserData->user_type == 'Corporate' ? 'selected' : '' }} >Corporate</option>
  62. <option value="Driver" {{ $user->UserData->user_type == 'Driver' ? 'selected' : '' }} >Driver</option>
  63. </select>
  64. </div>
  65. </div>
  66. <div class="col-lg-6">
  67. <div class="mb-3">
  68. <label for="address">Address</label>
  69. <input type="text" name="address" id="address" class="form-control" placeholder="Enter Your Address" value="{{ $user->UserData->last_name }}" >
  70. </div>
  71. </div>
  72. </div>
  73. </section>
  74. <!-- Company Document -->
  75. <h3>KYC Document</h3>
  76. <section>
  77. <div class="row">
  78. <div class="repeater" enctype="multipart/form-data">
  79. <div data-repeater-list="user-docs">
  80. @if($userDocuments)
  81. @foreach ($userDocuments as $userDocument)
  82. <div data-repeater-item class="row">
  83. <div class="mb-3 col-lg-2">
  84. <label for="doc_name">Doc Name</label>
  85. <input type="text" name="doc_id" class="form-control" value="{{ $userDocument['id'] }}" />
  86. <input type="text" name="doc_name" class="form-control" id="doc_name" placeholder="Enter Your Document Name." value="{{ $userDocument['doc_name'] }}" />
  87. </div>
  88. <div class="mb-3 col-lg-2">
  89. <label for="doc_page">Doc Page(Front/Back)</label>
  90. <input type="text" id="doc_page" name="doc_page" class="form-control" placeholder="Enter Your Document Page" value="{{ $userDocument['doc_page'] }}" />
  91. </div>
  92. <div class="mb-3 col-lg-2">
  93. <label for="doc_number">Doc Number</label>
  94. <input id="doc_number" name="doc_number" type="text" class="form-control" placeholder="Document Number" value="{{ $userDocument['doc_number'] }}" />
  95. </div>
  96. <div class="mb-3 col-lg-2 user-doc-field">
  97. <label for="doc">Document</label>
  98. <img src="{{ isset($userDocument['path']) ? $userDocument['path'] : '' }}" alt="{{ !isset($userDocuments['aadhaar_front']) ? 'Aadhar Doc' : '' }} ? " class="img-thumbnail"/>
  99. <input id="doc" name="doc" type="file" class="form-control userDoc">
  100. </div>
  101. <div class="mb-3 col-lg-2">
  102. <label for="doc">Description</label>
  103. <textarea id="doc" name="doc" type="file" name="description" class="form-control" row="2"> {{ $userDocument['description'] }}</textarea>
  104. </div>
  105. <div class="col-lg-2 align-self-center">
  106. <div class="d-grid">
  107. <div class="form-check {{ $userDocument['verify'] == 1 ? 'form-check-success' : 'form-check-primary' }} mb-3 user-verify-field" >
  108. <input class="form-check-input" name="verify" value="1" {{ $userDocument['verify'] == 1 ? 'checked' : '' }} type="checkbox" id="formCheckcolor1">
  109. <label class="form-check-label" for="formCheckcolor1">
  110. {{ $userDocument['verify'] == 1 ? 'Verified' : 'Verify' }}
  111. </label>
  112. </div>
  113. <input data-repeater-delete type="button" class="delete-kyc btn btn-primary" value="Delete" data-id="{{ $userDocument['id'] }}" />
  114. </div>
  115. </div>
  116. </div>
  117. @endforeach
  118. @endif
  119. </div>
  120. <input data-repeater-create type="button" class="user-doc-add-btn btn btn-success mt-3 mt-lg-0" value="Add" />
  121. </div>
  122. </div>
  123. </section>
  124. <!-- Bank Details -->
  125. <h3>Wallet Details</h3>
  126. <section>
  127. <div>
  128. <div class="row">
  129. <div class="col-lg-6">
  130. <div class="mb-3">
  131. <label for="wallet_amount">Wallet Amount</label>
  132. <input type="text" value="{{ $user->UserData->wallet_amount }}" name="wallet_amount" class="form-control" id="wallet_amount" placeholder="Wallet Amount">
  133. </div>
  134. </div>
  135. <div class="col-lg-6">
  136. <div class="mb-3">
  137. <label for="reason">Reason</label>
  138. <textarea id="Reason" name="reason" class="form-control" rows="2" placeholder="Enter Your Address"></textarea>
  139. </div>
  140. </div>
  141. </div>
  142. </section>
  143. <!-- Confirm Details -->
  144. <h3>Confirm Detail</h3>
  145. <section>
  146. <div class="row justify-content-center">
  147. <div class="col-lg-6">
  148. <div class="text-center">
  149. <div class="mb-4">
  150. <i class="mdi mdi-check-circle-outline text-success display-4"></i>
  151. </div>
  152. <div>
  153. <h5>Confirm Detail</h5>
  154. <p class="text-muted">If several languages coalesce, the grammar of the resulting</p>
  155. </div>
  156. </div>
  157. </div>
  158. </div>
  159. </section>
  160. </div>
  161. </div>
  162. <!-- end card body -->
  163. </div>
  164. <!-- end card -->
  165. </div>
  166. </form>
  167. <!-- end col -->
  168. </div>
  169. <!-- end row -->
  170. @endsection
  171. @section('script')
  172. <!-- jquery step -->
  173. <script src="{{ URL::asset('/assets/libs/jquery-steps/jquery-steps.min.js') }}"></script>
  174. <!-- form wizard init -->
  175. <script src="{{ URL::asset('/assets/js/pages/form-wizard.init.js') }}"></script>
  176. <script src="{{ URL::asset('/assets/libs/parsleyjs/parsleyjs.min.js') }}"></script>
  177. <script src="{{ URL::asset('/assets/js/pages/form-validation.init.js') }}"></script>
  178. <!-- form repeater js -->
  179. <script src="{{ URL::asset('/assets/libs/jquery-repeater/jquery-repeater.min.js') }}"></script>
  180. <script src="{{ URL::asset('/assets/js/pages/form-repeater.int.js') }}"></script>
  181. <script type="text/javascript">
  182. $(document).ready(function(){
  183. $('.userDoc').hide();
  184. $( ".disabled" ).addClass('done');
  185. $( ".done" ).removeClass('disabled');
  186. $(document).on('click', '.user-doc-add-btn', function(event) {
  187. event.preventDefault();
  188. var html ='';
  189. var total = $('.user-doc-field').length;
  190. console.log(total);
  191. $(".user-doc-field").each(function(index) {
  192. if (index === total - 1) {
  193. img = $(this).children('img');
  194. img.hide();
  195. }
  196. });
  197. $(".user-verify-field").each(function(index) {
  198. if (index === total - 1) {
  199. $(this).addClass('form-check-primary');
  200. $(this).removeClass('form-check-success');
  201. verify = $(this).children('input');
  202. verify.prop('checked', false);
  203. verifyLabel = $(this).children('label');
  204. verifyLabel.html('Verify')
  205. }
  206. });
  207. console.log(html);
  208. });
  209. $(document).on('click', '.delete-kyc', function(event) {
  210. event.preventDefault();
  211. id = $(this).attr('data-id');
  212. actionUrl = "/admin/users/delete-kyc"+id;
  213. $.ajax({
  214. type: "GET",
  215. url: actionUrl,
  216. success: function(data){
  217. $(this).parent('.row').addClass('collapse');
  218. },
  219. error: function (data) {
  220. },
  221. });
  222. });
  223. $(document).on('click', '[href="#finish"]', function(event) {
  224. event.preventDefault();
  225. // $( "#customer_form" ).submit();
  226. form = $( "#customer_form" );
  227. actionUrl = form.attr('action');
  228. $.ajax({
  229. type: "POST",
  230. url: actionUrl,
  231. data: form.serialize(), // serializes the form's elements.
  232. success: function(data){
  233. console.log(data);
  234. $( "#customer_form" ).submit();
  235. //window.location.href = "{{ route('admin.customers') }}";
  236. },
  237. error: function (data) {
  238. console.log('An error occurred.');
  239. console.log(data);
  240. response = data.responseJSON;
  241. if(response.status == false){
  242. $.each(response.errors, function(i, item) {
  243. $('#'+i+'_errors').html(response.errors[i]);
  244. $('.needs-validation').addClass('was-validated');
  245. });
  246. }
  247. },
  248. });
  249. });
  250. });
  251. </script>
  252. @endsection