Перейти к содержанию

Рекомендуемые сообщения

Доброго времени суток. Подскажите как добавить еще один чекбокс на страницу регистрации.
 

Спойлер

Screenshot_1.thumb.png.19edad62a2cdbff876fdbc8fefcbfd4d.png

 

Уже как только не пробовал, если и добавляется чекбокс, то не привязывается к кнопке (становится необязательным).
 

Спойлер

register.tpl

<?php echo $header; ?>
<?php if ($error_warning) { ?>
<div class="warning"><?php echo $error_warning; ?></div>
<?php } ?>
<?php echo $column_left; ?><?php echo $column_right; ?>
<div id="content"><?php echo $content_top; ?>
  <div class="breadcrumb">
    <?php foreach ($breadcrumbs as $breadcrumb) { ?>
    <?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
    <?php } ?>
  </div>
  <h1><?php echo $heading_title; ?></h1>
  <p><?php echo $text_account_already; ?></p>
  <form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data">
    <h2><?php echo $text_your_details; ?></h2>
    <div class="content">
    <div style="display:none">
<input type="text" name="fax" value="<?php echo $fax; ?>" />
<input type="text" name="company" value="<?php echo $company; ?>" />
<?php foreach ($customer_groups as $customer_group) { ?>
            <?php if ($customer_group['customer_group_id'] == $customer_group_id) { ?>
            <input type="radio" name="customer_group_id" value="<?php echo $customer_group['customer_group_id']; ?>" id="customer_group_id<?php echo $customer_group['customer_group_id']; ?>" checked="checked" />
            <label for="customer_group_id<?php echo $customer_group['customer_group_id']; ?>"><?php echo $customer_group['name']; ?></label>
            <br />
            <?php } else { ?>
            <input type="radio" name="customer_group_id" value="<?php echo $customer_group['customer_group_id']; ?>" id="customer_group_id<?php echo $customer_group['customer_group_id']; ?>" />
            <label for="customer_group_id<?php echo $customer_group['customer_group_id']; ?>"><?php echo $customer_group['name']; ?></label>
            <?php } ?>
            <?php } ?>
<input type="text" name="company_id" value="<?php echo $company_id; ?>" />
<input type="text" name="tax_id" value="<?php echo $tax_id; ?>" />
          <input type="text" name="address_2" value="<?php echo $address_2; ?>" />
          <input type="text" name="city" value="<?php echo $city; ?>" />
          <input type="text" name="postcode" value="<?php echo $postcode; ?>" />
    <select name="country_id" class="large-field">
        <option value=""><?php echo $text_select; ?></option>
           <option value="176" selected="selected">ад</option>
      </select>
      </div>
      <table class="form">
        <tr>
          <td><span class="required">*</span> <?php echo $entry_firstname; ?></td>
          <td><input type="text" name="firstname" value="<?php echo $firstname; ?>" />
            <?php if ($error_firstname) { ?>
            <span class="error"><?php echo $error_firstname; ?></span>
            <?php } ?></td>
        </tr>
        <tr>
          <td><?php echo $entry_lastname; ?></td>
          <td><input type="text" name="lastname" value="<?php echo $lastname; ?>" />
            <?php if ($error_lastname) { ?>
            <span class="error"><?php echo $error_lastname; ?></span>
            <?php } ?></td>
        </tr>
        <tr>
          <td><span class="required">*</span> <?php echo $entry_email; ?></td>
          <td><input type="text" name="email" value="<?php echo $email; ?>" />
            <?php if ($error_email) { ?>
            <span class="error"><?php echo $error_email; ?></span>
            <?php } ?></td>
        </tr>
        <tr>
          <td><?php echo $entry_telephone; ?></td>
          <td><input type="text" name="telephone" value="<?php echo $telephone; ?>" />
            <?php if ($error_telephone) { ?>
            <span class="error"><?php echo $error_telephone; ?></span>
            <?php } ?></td>
        </tr>
      </table>
    </div>

<div style="display: none">
  <h2><?php echo $text_your_address; ?></h2>
    <div class="content">
      <table class="form">
         <tr>
          <td><span class="required">*</span> <?php echo $entry_zone; ?></td>
          <td><select name="zone_id">
            </select>
            <?php if ($error_zone) { ?>
            <span class="error"><?php echo $error_zone; ?></span>
            <?php } ?></td>
        </tr>
       <tr>
          <td><span class="required">*</span> <?php echo $entry_address_1; ?></td>
          <td><input type="text" name="address_1" value="<?php echo $address_1; ?>" />
            <?php if ($error_address_1) { ?>
            <span class="error"><?php echo $error_address_1; ?></span>
            <?php } ?></td>
        </tr>
      </table>
    </div>
 </div>

    <h2><?php echo $text_your_password; ?></h2>
    <div class="content">
      <table class="form">
        <tr>
          <td><span class="required">*</span> <?php echo $entry_password; ?></td>
          <td><input type="password" name="password" value="<?php echo $password; ?>" />
            <?php if ($error_password) { ?>
            <span class="error"><?php echo $error_password; ?></span>
            <?php } ?></td>
        </tr>
        <tr>
          <td><span class="required">*</span> <?php echo $entry_confirm; ?></td>
          <td><input type="password" name="confirm" value="<?php echo $confirm; ?>" />
            <?php if ($error_confirm) { ?>
            <span class="error"><?php echo $error_confirm; ?></span>
            <?php } ?></td>
        </tr>        
<tr>
   <td><span class="required">*</span><?php echo $entry_captcha; ?><br /></td>
      <td><input type="text" name="captcha" value="<?php echo $captcha; ?>" />
      <?php if ($error_captcha) { ?>
      <span class="error"><?php echo $error_captcha; ?></span>
      <?php } ?>
      <br />
      <img src="index.php?route=information/contact/captcha" /></td>
</tr>
      </table>
    </div>
    <h2><?php echo $text_newsletter; ?></h2>
    <div class="content">
      <table class="form">
        <tr>
          <td><?php echo $entry_newsletter; ?></td>
          <td><?php if ($newsletter) { ?>
            <input type="radio" name="newsletter" value="1" checked="checked" />
            <?php echo $text_yes; ?>
            <input type="radio" name="newsletter" value="0" />
            <?php echo $text_no; ?>
            <?php } else { ?>
            <input type="radio" name="newsletter" value="1" />
            <?php echo $text_yes; ?>
            <input type="radio" name="newsletter" value="0" checked="checked" />
            <?php echo $text_no; ?>
            <?php } ?></td>
        </tr>
      </table>
    </div>
    <?php if ($text_agree) { ?>
    <div class="buttons">
      <div class="right"><?php echo $text_agree; ?>
        <?php if ($agree) { ?>
        <input type="checkbox" name="agree" value="1" checked="checked" />
        <?php } else { ?>
        <input type="checkbox" name="agree" value="1" checked="checked" />
        <?php } ?>
        <input type="submit" value="<?php echo $button_continue; ?>" class="button" />
      </div>
    </div>
    <?php } else { ?>
    <div class="buttons">
      <div class="right">
        <input type="submit" value="<?php echo $button_continue; ?>" class="button" />
      </div>
    </div>
    <?php } ?>
  </form>
  <?php echo $content_bottom; ?></div>
<script type="text/javascript"><!--
$('input[name=\'customer_group_id\']:checked').live('change', function() {
    var customer_group = [];
    
<?php foreach ($customer_groups as $customer_group) { ?>
    customer_group[<?php echo $customer_group['customer_group_id']; ?>] = [];
    customer_group[<?php echo $customer_group['customer_group_id']; ?>]['company_id_display'] = '<?php echo $customer_group['company_id_display']; ?>';
    customer_group[<?php echo $customer_group['customer_group_id']; ?>]['company_id_required'] = '<?php echo $customer_group['company_id_required']; ?>';
    customer_group[<?php echo $customer_group['customer_group_id']; ?>]['tax_id_display'] = '<?php echo $customer_group['tax_id_display']; ?>';
    customer_group[<?php echo $customer_group['customer_group_id']; ?>]['tax_id_required'] = '<?php echo $customer_group['tax_id_required']; ?>';
<?php } ?>    

    if (customer_group[this.value]) {
        if (customer_group[this.value]['company_id_display'] == '1') {
            $('#company-id-display').show();
        } else {
            $('#company-id-display').hide();
        }
        
        if (customer_group[this.value]['company_id_required'] == '1') {
            $('#company-id-required').show();
        } else {
            $('#company-id-required').hide();
        }
        
        if (customer_group[this.value]['tax_id_display'] == '1') {
            $('#tax-id-display').show();
        } else {
            $('#tax-id-display').hide();
        }
        
        if (customer_group[this.value]['tax_id_required'] == '1') {
            $('#tax-id-required').show();
        } else {
            $('#tax-id-required').hide();
        }    
    }
});

$('input[name=\'customer_group_id\']:checked').trigger('change');
//--></script>
<script type="text/javascript"><!--
$('select[name=\'country_id\']').bind('change', function() {
    $.ajax({
        url: 'index.php?route=account/register/country&country_id=' + this.value,
        dataType: 'json',
        beforeSend: function() {
            $('select[name=\'country_id\']').after('<span class="wait">&nbsp;<img src="catalog/view/theme/default/image/loading.gif" alt="" /></span>');
        },
        complete: function() {
            $('.wait').remove();
        },            
        success: function(json) {
            if (json['postcode_required'] == '1') {
                $('#postcode-required').show();
            } else {
                $('#postcode-required').hide();
            }
            
            html = '<option value=""><?php echo $text_select; ?></option>';
            
            if (json['zone'] != '') {
                for (i = 0; i < json['zone'].length; i++) {
                    html += '<option value="' + json['zone']['zone_id'] + '"';
                    
                    if (json['zone']['zone_id'] == '<?php echo $zone_id; ?>') {
                          html += ' selected="selected"';
                    }
    
                    html += '>' + json['zone']['name'] + '</option>';
                }
            } else {
                html += '<option value="0" selected="selected"><?php echo $text_none; ?></option>';
            }
            
            $('select[name=\'zone_id\']').html(html);
        },
        error: function(xhr, ajaxOptions, thrownError) {
            alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
        }
    });
});

$('select[name=\'country_id\']').trigger('change');
//--></script>
<script type="text/javascript"><!--
$(document).ready(function() {
    $('.colorbox').colorbox({
        width: 640,
        height: 480
    });
});
//--></script>
<?php echo $footer; ?>

 

Спойлер

register.php

<?php
class ControllerAccountRegister extends Controller {
    private $error = array();
          
      public function index() {
        if ($this->customer->isLogged()) {
              $this->redirect($this->url->link('account/account', '', 'SSL'));
        }

        $this->language->load('account/register');
        
        $this->document->setTitle($this->language->get('heading_title'));
        $this->document->addScript('catalog/view/javascript/jquery/colorbox/jquery.colorbox-min.js');
        $this->document->addStyle('catalog/view/javascript/jquery/colorbox/colorbox.css');
                    
        $this->load->model('account/customer');
        
        if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
            $this->model_account_customer->addCustomer($this->request->post);

            $this->customer->login($this->request->post['email'], $this->request->post['password']);
            
            unset($this->session->data['guest']);
            
            // Default Shipping Address
            if ($this->config->get('config_tax_customer') == 'shipping') {
                $this->session->data['shipping_country_id'] = $this->request->post['country_id'];
                $this->session->data['shipping_zone_id'] = $this->request->post['zone_id'];
                $this->session->data['shipping_postcode'] = $this->request->post['postcode'];                
            }
            
            // Default Payment Address
            if ($this->config->get('config_tax_customer') == 'payment') {
                $this->session->data['payment_country_id'] = $this->request->post['country_id'];
                $this->session->data['payment_zone_id'] = $this->request->post['zone_id'];            
            }
                                    
              $this->redirect($this->url->link('account/success'));
        }

          $this->data['breadcrumbs'] = array();

          $this->data['breadcrumbs'][] = array(
            'text'      => $this->language->get('text_home'),
            'href'      => $this->url->link('common/home'),            
            'separator' => false
          );

          $this->data['breadcrumbs'][] = array(
            'text'      => $this->language->get('text_account'),
            'href'      => $this->url->link('account/account', '', 'SSL'),          
            'separator' => $this->language->get('text_separator')
          );
        
          $this->data['breadcrumbs'][] = array(
            'text'      => $this->language->get('text_register'),
            'href'      => $this->url->link('account/register', '', 'SSL'),          
            'separator' => $this->language->get('text_separator')
          );
        
        $this->data['heading_title'] = $this->language->get('heading_title');
        
        $this->data['text_account_already'] = sprintf($this->language->get('text_account_already'), $this->url->link('account/login', '', 'SSL'));
        $this->data['text_your_details'] = $this->language->get('text_your_details');
        $this->data['text_your_address'] = $this->language->get('text_your_address');
        $this->data['text_your_password'] = $this->language->get('text_your_password');
        $this->data['text_newsletter'] = $this->language->get('text_newsletter');
        $this->data['entry_captcha'] = $this->language->get('entry_captcha');
        $this->data['text_yes'] = $this->language->get('text_yes');
        $this->data['text_no'] = $this->language->get('text_no');
        $this->data['text_select'] = $this->language->get('text_select');
        $this->data['text_none'] = $this->language->get('text_none');
                        
        $this->data['entry_firstname'] = $this->language->get('entry_firstname');
        $this->data['entry_lastname'] = $this->language->get('entry_lastname');
        $this->data['entry_email'] = $this->language->get('entry_email');
        $this->data['entry_telephone'] = $this->language->get('entry_telephone');
        $this->data['entry_fax'] = $this->language->get('entry_fax');
        $this->data['entry_company'] = $this->language->get('entry_company');
        $this->data['entry_customer_group'] = $this->language->get('entry_customer_group');
        $this->data['entry_company_id'] = $this->language->get('entry_company_id');
        $this->data['entry_tax_id'] = $this->language->get('entry_tax_id');
        $this->data['entry_address_1'] = $this->language->get('entry_address_1');
        $this->data['entry_address_2'] = $this->language->get('entry_address_2');
        $this->data['entry_postcode'] = $this->language->get('entry_postcode');
        $this->data['entry_city'] = $this->language->get('entry_city');
        $this->data['entry_country'] = $this->language->get('entry_country');
        $this->data['entry_zone'] = $this->language->get('entry_zone');
        $this->data['entry_newsletter'] = $this->language->get('entry_newsletter');
        $this->data['entry_password'] = $this->language->get('entry_password');
        $this->data['entry_confirm'] = $this->language->get('entry_confirm');

        $this->data['button_continue'] = $this->language->get('button_continue');
    
        if (isset($this->error['warning'])) {
            $this->data['error_warning'] = $this->error['warning'];
        } else {
            $this->data['error_warning'] = '';
        }
        
        if (isset($this->error['firstname'])) {
            $this->data['error_firstname'] = $this->error['firstname'];
        } else {
            $this->data['error_firstname'] = '';
        }    
        
        if (isset($this->error['lastname'])) {
            $this->data['error_lastname'] = $this->error['lastname'];
        } else {
            $this->data['error_lastname'] = '';
        }        
    
        if (isset($this->error['email'])) {
            $this->data['error_email'] = $this->error['email'];
        } else {
            $this->data['error_email'] = '';
        }
        
        if (isset($this->error['telephone'])) {
            $this->data['error_telephone'] = $this->error['telephone'];
        } else {
            $this->data['error_telephone'] = '';
        }
        
        if (isset($this->error['password'])) {
            $this->data['error_password'] = $this->error['password'];
        } else {
            $this->data['error_password'] = '';
        }
        
         if (isset($this->error['confirm'])) {
            $this->data['error_confirm'] = $this->error['confirm'];
        } else {
            $this->data['error_confirm'] = '';
        }
        
          if (isset($this->error['company_id'])) {
            $this->data['error_company_id'] = $this->error['company_id'];
        } else {
            $this->data['error_company_id'] = '';
        }
        
          if (isset($this->error['tax_id'])) {
            $this->data['error_tax_id'] = $this->error['tax_id'];
        } else {
            $this->data['error_tax_id'] = '';
        }
                                
          if (isset($this->error['address_1'])) {
            $this->data['error_address_1'] = $this->error['address_1'];
        } else {
            $this->data['error_address_1'] = '';
        }
           
        if (isset($this->error['city'])) {
            $this->data['error_city'] = $this->error['city'];
        } else {
            $this->data['error_city'] = '';
        }
        
        if (isset($this->error['postcode'])) {
            $this->data['error_postcode'] = $this->error['postcode'];
        } else {
            $this->data['error_postcode'] = '';
        }

        if (isset($this->error['country'])) {
            $this->data['error_country'] = $this->error['country'];
        } else {
            $this->data['error_country'] = '';
        }

        if (isset($this->error['zone'])) {
            $this->data['error_zone'] = $this->error['zone'];
        } else {
            $this->data['error_zone'] = '';
        }
        
        $this->data['action'] = $this->url->link('account/register', '', 'SSL');
        
        if (isset($this->request->post['firstname'])) {
            $this->data['firstname'] = $this->request->post['firstname'];
        } else {
            $this->data['firstname'] = '';
        }

        if (isset($this->request->post['lastname'])) {
            $this->data['lastname'] = $this->request->post['lastname'];
        } else {
            $this->data['lastname'] = '';
        }
        
        if (isset($this->request->post['email'])) {
            $this->data['email'] = $this->request->post['email'];
        } else {
            $this->data['email'] = '';
        }
        
        if (isset($this->request->post['telephone'])) {
            $this->data['telephone'] = $this->request->post['telephone'];
        } else {
            $this->data['telephone'] = '';
        }
        
        if (isset($this->request->post['fax'])) {
            $this->data['fax'] = $this->request->post['fax'];
        } else {
            $this->data['fax'] = '';
        }
        
        if (isset($this->request->post['company'])) {
            $this->data['company'] = $this->request->post['company'];
        } else {
            $this->data['company'] = '';
        }

        $this->load->model('account/customer_group');
        
        $this->data['customer_groups'] = array();
        
        if (is_array($this->config->get('config_customer_group_display'))) {
            $customer_groups = $this->model_account_customer_group->getCustomerGroups();
            
            foreach ($customer_groups as $customer_group) {
                if (in_array($customer_group['customer_group_id'], $this->config->get('config_customer_group_display'))) {
                    $this->data['customer_groups'][] = $customer_group;
                }
            }
        }
        
        if (isset($this->request->post['customer_group_id'])) {
            $this->data['customer_group_id'] = $this->request->post['customer_group_id'];
        } else {
            $this->data['customer_group_id'] = $this->config->get('config_customer_group_id');
        }
        
        // Company ID
        if (isset($this->request->post['company_id'])) {
            $this->data['company_id'] = $this->request->post['company_id'];
        } else {
            $this->data['company_id'] = '';
        }
        
        // Tax ID
        if (isset($this->request->post['tax_id'])) {
            $this->data['tax_id'] = $this->request->post['tax_id'];
        } else {
            $this->data['tax_id'] = '';
        }
                        
        if (isset($this->request->post['address_1'])) {
            $this->data['address_1'] = $this->request->post['address_1'];
        } else {
            $this->data['address_1'] = '';
        }

        if (isset($this->request->post['address_2'])) {
            $this->data['address_2'] = $this->request->post['address_2'];
        } else {
            $this->data['address_2'] = '';
        }

        if (isset($this->request->post['postcode'])) {
            $this->data['postcode'] = $this->request->post['postcode'];
        } elseif (isset($this->session->data['shipping_postcode'])) {
            $this->data['postcode'] = $this->session->data['shipping_postcode'];        
        } else {
            $this->data['postcode'] = '';
        }
        
        if (isset($this->request->post['city'])) {
            $this->data['city'] = $this->request->post['city'];
        } else {
            $this->data['city'] = '';
        }

        if (isset($this->request->post['country_id'])) {
              $this->data['country_id'] = $this->request->post['country_id'];
        } elseif (isset($this->session->data['shipping_country_id'])) {
            $this->data['country_id'] = $this->session->data['shipping_country_id'];        
        } else {    
              $this->data['country_id'] = $this->config->get('config_country_id');
        }

        if (isset($this->request->post['zone_id'])) {
              $this->data['zone_id'] = $this->request->post['zone_id'];     
        } elseif (isset($this->session->data['shipping_zone_id'])) {
            $this->data['zone_id'] = $this->session->data['shipping_zone_id'];            
        } else {
              $this->data['zone_id'] = '';
        }
        
        $this->load->model('localisation/country');
        
        $this->data['countries'] = $this->model_localisation_country->getCountries();
        
        if (isset($this->request->post['password'])) {
            $this->data['password'] = $this->request->post['password'];
        } else {
            $this->data['password'] = '';
        }
        
        if (isset($this->request->post['confirm'])) {
            $this->data['confirm'] = $this->request->post['confirm'];
        } else {
            $this->data['confirm'] = '';
        }
        
        if (isset($this->request->post['newsletter'])) {
            $this->data['newsletter'] = $this->request->post['newsletter'];
        } else {
            $this->data['newsletter'] = '';
        }    
        
        if (isset($this->error['captcha'])) {
        $this->data['error_captcha'] = $this->error['captcha'];
        } else {
            $this->data['error_captcha'] = '';
        }            

        if ($this->config->get('config_account_id')) {
            $this->load->model('catalog/information');
            
            $information_info = $this->model_catalog_information->getInformation($this->config->get('config_account_id'));
            
            if ($information_info) {
                $this->data['text_agree'] = sprintf($this->language->get('text_agree'), $this->url->link('information/information/info', 'information_id=' . $this->config->get('config_account_id'), 'SSL'), $information_info['title'], $information_info['title']);
            } else {
                $this->data['text_agree'] = '';
            }
        } else {
            $this->data['text_agree'] = '';
        }
        
        if (isset($this->request->post['agree'])) {
              $this->data['agree'] = $this->request->post['agree'];
        } else {
            $this->data['agree'] = false;
        }
        
        if (isset($this->request->post['captcha'])) {
            $this->data['captcha'] = $this->request->post['captcha'];
        } else {
            $this->data['captcha'] = '';
        }
        
        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/register.tpl')) {
            $this->template = $this->config->get('config_template') . '/template/account/register.tpl';
        } else {
            $this->template = 'default/template/account/register.tpl';
        }
        
        $this->children = array(
            'common/column_left',
            'common/column_right',
            'common/content_top',
            'common/content_bottom',
            'common/footer',
            'common/header'    
        );
                
        $this->response->setOutput($this->render());    
      }
    
    public function captcha() {
        $this->load->library('captcha');
        $captcha = new Captcha();
        $this->session->data['captcha'] = $captcha->getCode();
        $captcha->showImage();
    }

      protected function validate() {
        if ((utf8_strlen($this->request->post['firstname']) < 1) || (utf8_strlen($this->request->post['firstname']) > 32)) {
              $this->error['firstname'] = $this->language->get('error_firstname');
        }

//        if ((utf8_strlen($this->request->post['lastname']) < 1) || (utf8_strlen($this->request->post['lastname']) > 32)) {
//              $this->error['lastname'] = $this->language->get('error_lastname');
//        }

        if ((utf8_strlen($this->request->post['email']) > 96) || !preg_match('/^[^\@]+@.*\.[a-z]{2,6}$/i', $this->request->post['email'])) {
              $this->error['email'] = $this->language->get('error_email');
        }

        if ($this->model_account_customer->getTotalCustomersByEmail($this->request->post['email'])) {
              $this->error['warning'] = $this->language->get('error_exists');
        }
        
//        if ((utf8_strlen($this->request->post['telephone']) < 3) || (utf8_strlen($this->request->post['telephone']) > 32)) {
//              $this->error['telephone'] = $this->language->get('error_telephone');
//        }
        
        // Customer Group
        $this->load->model('account/customer_group');
        
        if (isset($this->request->post['customer_group_id']) && is_array($this->config->get('config_customer_group_display')) && in_array($this->request->post['customer_group_id'], $this->config->get('config_customer_group_display'))) {
            $customer_group_id = $this->request->post['customer_group_id'];
        } else {
            $customer_group_id = $this->config->get('config_customer_group_id');
        }

        $customer_group = $this->model_account_customer_group->getCustomerGroup($customer_group_id);
            
        if ($customer_group) {    
            // Company ID
//            if ($customer_group['company_id_display'] && $customer_group['company_id_required'] && empty($this->request->post['company_id'])) {
//                $this->error['company_id'] = $this->language->get('error_company_id');
//            }
            
//            // Tax ID
//            if ($customer_group['tax_id_display'] && $customer_group['tax_id_required'] && empty($this->request->post['tax_id'])) {
//                $this->error['tax_id'] = $this->language->get('error_tax_id');
//            }                        
        }
        
//        if ((utf8_strlen($this->request->post['address_1']) < 3) || (utf8_strlen($this->request->post['address_1']) > 128)) {
//              $this->error['address_1'] = $this->language->get('error_address_1');
//        }

//        if ((utf8_strlen($this->request->post['city']) < 2) || (utf8_strlen($this->request->post['city']) > 128)) {
//              $this->error['city'] = $this->language->get('error_city');
//        }

        $this->load->model('localisation/country');
        
        $country_info = $this->model_localisation_country->getCountry($this->request->post['country_id']);
        
//        if ($country_info) {
//            if ($country_info['postcode_required'] && (utf8_strlen($this->request->post['postcode']) < 2) || (utf8_strlen($this->request->post['postcode']) > 10)) {
//                $this->error['postcode'] = $this->language->get('error_postcode');
//            }
//            
//            // VAT Validation
            $this->load->helper('vat');
//            
//            if ($this->config->get('config_vat') && $this->request->post['tax_id'] && (vat_validation($country_info['iso_code_2'], $this->request->post['tax_id']) == 'invalid')) {
//                $this->error['tax_id'] = $this->language->get('error_vat');
//            }
//        }

//        if ($this->request->post['country_id'] == '') {
//              $this->error['country'] = $this->language->get('error_country');
//        }
        
//        if (!isset($this->request->post['zone_id']) || $this->request->post['zone_id'] == '') {
//              $this->error['zone'] = $this->language->get('error_zone');
//        }

        if ((utf8_strlen($this->request->post['password']) < 4) || (utf8_strlen($this->request->post['password']) > 20)) {
              $this->error['password'] = $this->language->get('error_password');
        }

        if ($this->request->post['confirm'] != $this->request->post['password']) {
              $this->error['confirm'] = $this->language->get('error_confirm');
        }
        
        if ($this->config->get('config_account_id')) {
            $this->load->model('catalog/information');
            
            $information_info = $this->model_catalog_information->getInformation($this->config->get('config_account_id'));
            
            if ($information_info && !isset($this->request->post['agree'])) {
                  $this->error['warning'] = sprintf($this->language->get('error_agree'), $information_info['title']);
            }
        }
        
        if (!isset($this->session->data['captcha']) || ($this->session->data['captcha'] != $this->request->post['captcha'])) {
            $this->error['captcha'] = $this->language->get('error_captcha');
        }
        
        if (!$this->error) {
              return true;
        } else {
              return false;
        }
      }
    
    public function country() {
        $json = array();
        
        $this->load->model('localisation/country');

        $country_info = $this->model_localisation_country->getCountry($this->request->get['country_id']);
        
        if ($country_info) {
            $this->load->model('localisation/zone');

            $json = array(
                'country_id'        => $country_info['country_id'],
                'name'              => $country_info['name'],
                'iso_code_2'        => $country_info['iso_code_2'],
                'iso_code_3'        => $country_info['iso_code_3'],
                'address_format'    => $country_info['address_format'],
                'postcode_required' => $country_info['postcode_required'],
                'zone'              => $this->model_localisation_zone->getZonesByCountryId($this->request->get['country_id']),
                'status'            => $country_info['status']        
            );
        }
        
        $this->response->setOutput(json_encode($json));
    }    
}
?>

 

Спойлер

register.php - language

<?php
// Heading
$_['heading_title']        = 'Регистрация';
// Text
$_['text_account']         = 'Личный Кабинет';
$_['text_register']        = 'Регистрация';
$_['text_account_already'] = 'Если Вы уже зарегистрированы, перейдите на страницу <a href="%s">входа в систему</a>.';
$_['text_your_details']    = 'Основные данные';
$_['text_your_address']    = 'Ваш адрес';
$_['text_newsletter']      = 'Рассылка новостей';
$_['text_your_password']   = 'Ваш пароль';
$_['text_agree']           = 'Я прочитал <a class="colorbox cboxElement" href="%s" alt="%s"><b>%s</b></a> и согласен с условиями';
// Entry
$_['entry_firstname']      = 'Имя:';
$_['entry_lastname']       = 'Фамилия:';
$_['entry_email']          = 'E-Mail:';
$_['entry_telephone']      = 'Телефон:';
$_['entry_fax']            = 'Факс:';
$_['entry_company']        = 'Компания:';
$_['entry_customer_group'] = 'Направление бизнеса:';
$_['entry_company_id']     = 'ID Компании:';
$_['entry_tax_id']         = 'ИНН:';
$_['entry_address_1']      = 'Улица, дом, квартира:';
$_['entry_address_2']      = 'Примечание:';
$_['entry_postcode']       = 'Индекс:';
$_['entry_city']           = 'Город:';
$_['entry_country']        = 'Страна:';
$_['entry_zone']           = 'Город:';
$_['entry_newsletter']     = 'Подписка на новости:';
$_['entry_password']       = 'Пароль:';

$_['text_signup']        = 'Новый пользователь зарегистрировался на сайте.';
$_['text_website']        = 'Сайт: ';
$_['text_firstname']        = 'Имя: ';
$_['text_email']        = 'e-mail: ';
$_['text_telephone']        = 'Телефон: ';
$_['entry_confirm']        = 'Повторите пароль:';

$_['entry_captcha']        = 'Введите код с картинки:';
$_['error_captcha']        = 'Код с картинки введен неверно!';


// Error
$_['error_exists']         = 'Этот E-Mail уже зарегистрирован!';
$_['error_firstname']      = 'Имя должно содержать от 1 до 32 символов!';
$_['error_lastname']       = 'Фамилия должна содержать от 1 до 32 символов!';
$_['error_email']          = 'E-Mail введён неправильно!';
$_['error_telephone']      = 'В телефоне должно быть от 3 до 32 цифр!';
$_['error_password']       = 'В пароле должно быть от 4 до 20 символов!';
$_['error_confirm']        = 'Пароли не совпадают!';
$_['error_address_1']      = 'Адрес должен содержать от 3 до 128 символов!';
$_['error_city']           = 'Название города должно содержать от 2 до 128 символов!';
$_['error_postcode']       = 'В индексе должно быть от 2 до 10 символов!';
$_['error_country']        = 'Выберите страну!';
$_['error_zone']           = 'Выберите город!';
$_['error_agree']          = 'Для совершения покупок Вы должны быть согласны с документом %s!';
$_['error_company_id']     = 'Необходим ID Компании!';
$_['error_tax_id']         = 'Необходим ИНН!';
$_['error_vat']            = 'Неправильный индекс!';
$_['entry_captcha']        = 'Введите код:';
$_['error_captcha']        = 'Код введен неверно!';
?>


Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В чём сакральный смысл сюда вставлять исходный код? Те кто может вам помочь его наизусть помнят.

 

1 час назад, deltex сказал:

Уже как только не пробовал

 

Вам нужно полностью повторить куски кода про "agree", поменяв имя переменной, в тех файлах которые вы прислали.

Изменено пользователем d0tb0t

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, d0tb0t сказал:

В чём сакральный смысл сюда вставлять исходный код? Те кто может вам помочь его наизусть помнят.

 

 

Вам нужно полностью повторить куски кода про "agree", поменяв имя переменной, в тех файлах которые вы прислали.

 

Если повторять код, то получается 2 кнопки подтверждения регистрации...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.