Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Recommended Posts

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

Спойлер

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']        = 'Код введен неверно!';
?>


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

Link to post
Share on other sites

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

 

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

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

 

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

Edited by d0tb0t
Link to post
Share on other sites

2 часа назад, d0tb0t сказал:

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

 

 

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

 

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

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.