Использование ion_auth с разными языками

Я пытаюсь использовать ion_auth с разными языками

по умолчанию английский, я думаю, и я пытаюсь использовать французский

контроллер

class Auth extends CI_Controller {

function __construct()
{
    parent::__construct();
    $this->load->library('ion_auth');
    $this->load->library('form_validation');
    $this->load->helper('url');

    // Load MongoDB library instead of native db driver if required
    $this->config->item('use_mongodb', 'ion_auth') ?
    $this->load->library('mongo_db') :

    $this->load->database();

    $this->form_validation->set_error_delimiters($this->config->item('error_start_delimiter', 'ion_auth'), $this->config->item('error_end_delimiter', 'ion_auth'));

    $this->lang->load('auth','french');
    $this->load->helper('language');

            /*    $lang = $this->session->userdata('lang_name');
    if(!isset($lang))
    { //load default language 
      $this->lang->load('site');
      $this->lang->load('ion_auth');
      $this->lang->load('auth');
    }
    else
    { //load language from session
     // print_r('lang :'.$this->session->userdata('lang_name'));
      $this->lang->load('site',$this->session->userdata('lang_name'));
      $this->lang->load('ion_auth',$this->session->userdata('lang_name'));
      $this->lang->load('auth',$this->session->userdata('lang_name'));
    }*/


}

его всегда на английском, никогда не меняется на французский или другой язык

<?php
    $this->lang->load('auth','french');
?>

Я попробовал также выше на представлении, и ничто никогда не изменяется на французский

3 ответа

Вы должны изменить свой язык в CI->config.php

изменить это $config['language']= 'english'; to $config['language']= 'french';

для вашей ссылки https://github.com/benedmunds/CodeIgniter-Ion-Auth/issues/472

Я нашел решение, и это работает, но я не знаю или это безопасно. В файле Ion_auth (в папке с библиотеками - рамки codeigniter)

find public function __construct()

change: $this->lang->load('ion_auth');
to: $this->lang->load('ion_auth',trim($this->input->post('language')));

это все

так далее...

если вы хотите изменить язык для всей системы, вы должны динамически редактировать элементы конфигурации. Например;

       if (isset($set_language)) {
    $this->lang->load('auth','french');
    $this->config->set_item('language','french');
}
Другие вопросы по тегам