index.php 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. <?php
  2. /**
  3. * FecShop file.
  4. *
  5. * @link http://www.fecshop.com/
  6. * @copyright Copyright (c) 2016 FecShop Software LLC
  7. * @license http://www.fecshop.com/license/
  8. */
  9. ?>
  10. <div class="main container two-columns-left">
  11. <?= Yii::$service->page->widget->render('breadcrumbs',$this); ?>
  12. <?= Yii::$service->page->widget->render('flashmessage'); ?>
  13. <div class="col-main account_center">
  14. <div class="std">
  15. <div style="margin:4px 0 0">
  16. <div class="page-title">
  17. <h2><?= Yii::$service->page->translate->__('Edit Account Information');?></h2>
  18. </div>
  19. <form method="post" id="form-validate" autocomplete="off" action="<?= $actionUrl ?>">
  20. <?= \fec\helpers\CRequest::getCsrfInputHtml(); ?>
  21. <div class="">
  22. <ul class="">
  23. <li>
  24. <label for="email" class="required"><?= Yii::$service->page->translate->__('Email Address');?></label>
  25. <div class="input-box">
  26. <input style="color:#ccc;" readonly="true" id="customer_email" name="editForm[email]" value="<?= $email ?>" title="Email" maxlength="255" class="input-text required-entry" type="text">
  27. </div>
  28. </li>
  29. <li class="">
  30. <div class="field name-firstname">
  31. <label for="firstname" class="required"><?= Yii::$service->page->translate->__('First Name');?></label>
  32. <div class="input-box">
  33. <input id="firstname" name="editForm[firstname]" value="<?= $firstname ?>" title="First Name" maxlength="255" class="input-text required-entry" type="text">
  34. <div class="validation-advice" id="required_current_firstname" style="display:none;"><?= Yii::$service->page->translate->__('This is a required field.');?></div>
  35. </div>
  36. </div>
  37. </li>
  38. <li>
  39. <div class="field name-lastname">
  40. <label for="lastname" class="required"><?= Yii::$service->page->translate->__('Last Name');?></label>
  41. <div class="input-box">
  42. <input id="lastname" name="editForm[lastname]" value="<?= $lastname ?>" title="Last Name" maxlength="255" class="input-text required-entry" type="text">
  43. <div class="validation-advice" id="required_current_lastname" style="display:none;"><?= Yii::$service->page->translate->__('This is a required field.');?></div>
  44. </div>
  45. </div>
  46. </li>
  47. <li class="control">
  48. <input name="editForm[change_password]" id="change_password" value="1" onclick="setPasswordForm(this.checked)" title="Change Password" class="checkbox" type="checkbox">
  49. <label style="display:inline;" for="change_password"><?= Yii::$service->page->translate->__('Change Password');?></label>
  50. </li>
  51. </ul>
  52. </div>
  53. <div class="" id="fieldset_pass" style="display:none;">
  54. <ul class="form-list">
  55. <li>
  56. <label style="font-weight:100;" for="current_password" class="required"><?= Yii::$service->page->translate->__('Current Password');?></label>
  57. <div class="input-box">
  58. <input title="Current Password" class="input-text required-entry" name="editForm[current_password]" id="current_password" type="password">
  59. <div class="validation-advice" id="required_current_password" style="display:none;"><?= Yii::$service->page->translate->__('This is a required field.');?></div>
  60. </div>
  61. </li>
  62. <li class="fields">
  63. <div class="field">
  64. <label style="font-weight:100;" for="password" class="required"><?= Yii::$service->page->translate->__('New Password');?></label>
  65. <div class="input-box">
  66. <input title="New Password" class="input-text validate-password required-entry" name="editForm[password]" id="password" type="password">
  67. <div class="validation-advice" id="required_new_password" style="display:none;"><?= Yii::$service->page->translate->__('This is a required field.');?></div>
  68. </div>
  69. </div>
  70. <div class="field">
  71. <label style="font-weight:100;" for="confirmation" class="required"><em>*</em><?= Yii::$service->page->translate->__('Confirm New Password');?></label>
  72. <div class="input-box">
  73. <input title="Confirm New Password" class="input-text validate-cpassword required-entry" name="editForm[confirmation]" id="confirmation" type="password">
  74. <div class="validation-advice" id="required_confirm_password" style="display:none;"><?= Yii::$service->page->translate->__('This is a required field.');?></div>
  75. </div>
  76. </div>
  77. <div class="clear"></div>
  78. </li>
  79. </ul>
  80. </div>
  81. <div class="buttons-set">
  82. <button type="submit" title="Save" class="button" onclick="return check_edit()"><span><span><?= Yii::$service->page->translate->__('Submit');?></span></span></button>
  83. </div>
  84. </form>
  85. </div>
  86. </div>
  87. </div>
  88. <div class="col-left ">
  89. <?php
  90. $leftMenu = [
  91. 'class' => 'fecshop\app\appfront\modules\Customer\block\LeftMenu',
  92. 'view' => 'customer/leftmenu.php'
  93. ];
  94. ?>
  95. <?= Yii::$service->page->widget->render($leftMenu,$this); ?>
  96. </div>
  97. <div class="clear"></div>
  98. </div>
  99. <script>
  100. <?php $this->beginBlock('customer_account_info_update') ?>
  101. function setPasswordForm(arg){
  102. if(arg){
  103. $('#fieldset_pass').show();
  104. }else{
  105. $('#fieldset_pass').hide();
  106. }
  107. }
  108. function check_edit(){
  109. $check_current_password = true;
  110. $check_new_password = true;
  111. $check_confir_password = true;
  112. $check_current_firstname = true;
  113. $check_current_lastname = true;
  114. $firstname = $('#firstname').val();
  115. $lastname = $('#lastname').val();
  116. $check_confir_password_with_pass = true;
  117. if($firstname == ''){
  118. $('#firstname').addClass('validation-failed');
  119. $('#required_current_firstname').show();
  120. $check_current_firstname = false;
  121. }else{
  122. $('#firstname').removeClass('validation-failed');
  123. $('#required_current_firstname').hide();
  124. $check_current_firstname = true;
  125. }
  126. if($lastname == ''){
  127. $('#lastname').addClass('validation-failed');
  128. $('#required_current_lastname').show();
  129. $check_current_lastname = false;
  130. }else{
  131. $('#lastname').removeClass('validation-failed');
  132. $('#required_current_lastname').hide();
  133. $check_current_lastname = true;
  134. }
  135. if($('#change_password').is(':checked')){
  136. $current_password = $('#current_password').val();
  137. $password = $('#password').val();
  138. $confirmation = $('#confirmation').val();
  139. if($current_password == ''){
  140. $('#current_password').addClass('validation-failed');
  141. $('#required_current_password').show();
  142. $check_current_password = false;
  143. }else{
  144. $('#current_password').removeClass('validation-failed');
  145. $('#required_current_password').hide();
  146. $check_current_password = true;
  147. }
  148. if($password == ''){
  149. $('#password').addClass('validation-failed');
  150. $('#required_new_password').show().html('This is a required field.');;
  151. $check_new_password = false;
  152. }else{
  153. if(!checkPass($password)){
  154. $('#password').addClass('validation-failed');
  155. $('#required_new_password').show();
  156. $('#required_new_password').html('Must have 6 to 30 characters and no spaces.');
  157. $check_new_password = false;
  158. }else{
  159. $('#password').removeClass('validation-failed');
  160. $('#required_new_password').hide();
  161. $check_new_password = true;
  162. }
  163. }
  164. if($confirmation == ''){
  165. $('#confirmation').addClass('validation-failed');
  166. $('#required_confirm_password').show().html('This is a required field.');
  167. $check_confir_password = false;
  168. }else{
  169. if(!checkPass($confirmation)){
  170. $('#confirmation').addClass('validation-failed');
  171. $('#required_confirm_password').show();
  172. $('#required_confirm_password').html('Must have 6 to 30 characters and no spaces.');
  173. $check_confir_password = false;
  174. }else{
  175. if($password != $confirmation){
  176. $('#confirmation').addClass('validation-failed');
  177. $('#required_confirm_password').show();
  178. $('#required_confirm_password').html('Two password is not the same!');
  179. $check_confir_password_with_pass = false;
  180. }else{
  181. $('#confirmation').removeClass('validation-failed');
  182. $('#required_confirm_password').hide();
  183. $check_confir_password = true;
  184. }
  185. }
  186. }
  187. }
  188. if( $check_confir_password_with_pass && $check_current_firstname && $check_current_lastname && $check_confir_password && $check_new_password && $check_current_password){
  189. return true;
  190. }else{
  191. return false;
  192. }
  193. }
  194. function checkPass(str){
  195. var re = /^\w{6,30}$/;
  196. if(re.test(str)){
  197. return true;
  198. }else{
  199. return false;
  200. }
  201. }
  202. function checkEmail(str){
  203. var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/;
  204. if(myReg.test(str)) return true;
  205. return false;
  206. }
  207. <?php $this->endBlock(); ?>
  208. </script>
  209. <?php $this->registerJs($this->blocks['customer_account_info_update'],\yii\web\View::POS_END);//将编写的js代码注册到页面底部 ?>