Tôi muốn hiển thị trường mật khẩu luôn trong bước thanh toán của thanh toán. Chúng tôi loại bỏ các bước nắm tay trong thanh toán.
Trong bước thanh toán này, chúng tôi muốn rằng nếu khách hàng nhập mật khẩu, họ sẽ tạo một tài khoản. Nếu khách hàng bỏ trống các trường đầu vào, nó sẽ thanh toán với tư cách là khách.
Trong billing.phtml tôi hiện có dòng này phía trên các trường nhập mật khẩu:
<?php if($this->helper('skipstep1')->isSkipEnabled() && $this->getQuote()->isAllowedGuestCheckout()): ?>
<li class="fields">
<div class="field">
<label class="account-aanmaken-checkout" for="login:register"><?php echo $this->__('Register with us for future convenience') ?></label>
<div class="input-box checkout-account">
<input type="checkbox" class="checkbox" name="login[register]" id="login:register" value="1" title="<?php echo $this->__('Register') ?>" onclick="toggleRegister(this)"<?php if (Mage::getStoreConfig('checkout/skipstep1/default_method')=='register'): ?> checked="checked"<?php endif ?>/>
</div>
</li>
<?php endif ?>
Mã mặc định cho trường mật khẩu là đây:
<li class="fields" id="register-customer-password">
<div class="field">
<label for="billing:customer_password" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
<div class="input-box">
<input type="password" name="billing[customer_password]" id="billing:customer_password" title="<?php echo $this->__('Password') ?>" class="input-text required-entry validate-password" />
</div>
</div>
<div class="field">
<label for="billing:confirm_password" class="required"><em>*</em><?php echo $this->__('Confirm Password') ?></label>
<div class="input-box">
<input type="password" name="billing[confirm_password]" title="<?php echo $this->__('Confirm Password') ?>" id="billing:confirm_password" class="input-text required-entry validate-cpassword" />
</div>
</div>
</li>
Điều khiển:
<?php if (Mage::helper('skipstep1')->isSkipEnabled()): ?>
<script type="text/javascript">
function toggleRegister(checkbox) {
// If registration is checked, or the customer has no choice => register
if (!checkbox || checkbox.checked) {
checkout.method = 'register';
new Ajax.Request(
checkout.saveMethodUrl,
{method: 'post', onFailure: checkout.ajaxFailure.bind(checkout), parameters: {method:'register'}}
);
Element.show('register-customer-password');
if ($('remember-me-box')) {
$('remember-me-box').show();
}
// If the customer has a choice, and chose not to register => checkout as guest
} else {
checkout.method = 'guest';
new Ajax.Request(
checkout.saveMethodUrl,
{method: 'post', onFailure: checkout.ajaxFailure.bind(checkout), parameters: {method:'guest'}}
);
Element.hide('register-customer-password');
if ($('remember-me-box')) {
$('remember-me-box').hide();
}
}
}
function toggleLogin() {
$('login-form').toggle();
$('co-billing-form').toggle();
$('billing-login-link').toggle();
$('billing-guest-link').toggle();
}
<?php if (!Mage::getSingleton('customer/session')->isLoggedIn()): ?>
checkout.method = '<?php echo Mage::getStoreConfig('checkout/skipstep1/default_method') ?>';
checkout.gotoSection('billing');
toggleRegister($('login:register'));
<?php endif ?>
<?php if ($this->getMessagesBlock()->getMessageCollection()->count()): // Failed login => message => hide address form / show login ?>
toggleLogin();
<?php endif ?>
</script>
<?php endif ?>
Điều đó hiển thị một hộp kiểm, nếu được chọn, khách hàng có thể đăng ký. Nếu không được kiểm tra, khách hàng sẽ thanh toán với tư cách là khách. Điều đó hoạt động rất tốt, nhưng làm thế nào tôi có thể sửa đổi nó rằng nó sẽ hoạt động mà không có hộp kiểm.
Làm thế nào tôi có thể sửa đổi điều này?