Welcome Guest, Not a member yet? Register   Sign In
Form validation error messages from language file?
#11

Hello i resolve overriding Lang.php with MY_Lang.php , hope it helps

PHP Code:
class MY_Lang extends CI_Lang {
    public function 
__construct() {
        
parent::__construct ();
    }
    
    
// --------------------------------------------------------------------
    
    /**
     * Load a language file
     *
     * @param mixed $langfile
     *            Language file name
     * @param string $idiom
     *            Language name (english, etc.)
     * @param bool $return
     *            Whether to return the loaded array of translations
     * @param bool $add_suffix
     *            Whether to add suffix to $langfile
     * @param string $alt_path
     *            Alternative path to look for the language file
     *            
     * @return void|string[] Array containing translations, if $return is set to TRUE
     */
    
public function load($langfile$idiom ''$return FALSE$add_suffix TRUE$alt_path '') {
        if (
is_array $langfile )) {
            foreach ( 
$langfile as $value ) {
                
$this->load $value$idiom$return$add_suffix$alt_path );
            }
            
            return;
        }
        
        
$langfile str_replace '.php'''$langfile );
        
        if (
$add_suffix === TRUE) {
            
$langfile preg_replace '/_lang$/'''$langfile ) . '_lang';
        }
        
        
$langfile .= '.php';
        
        if (empty ( 
$idiom ) or ! preg_match '/^[a-z_-]+$/i'$idiom )) {
            
$idioaux getLang ();
            if (
$idioaux != null && ! empty ( $idioaux ))
                
$idiom $idioaux;
            else {
                
$config = & get_config ();
                
$idiom = empty ( $config ['language'] ) ? 'es' $config ['language'];
            }
        }
        
        if (
$return === FALSE && isset ( $this->is_loaded [$langfile] ) && $this->is_loaded [$langfile] === $idiom) {
            return;
        }
        
        
// Load the base file, so any others found can override it
        
$basepath BASEPATH 'language/' $idiom '/' $langfile;
        if ((
$found file_exists $basepath )) === TRUE) {
            include (
$basepath);
        }
        
        
// Do we have an alternative path to look in?
        
if ($alt_path !== '') {
            
$alt_path .= 'language/' $idiom '/' $langfile;
            if (
file_exists $alt_path )) {
                include (
$alt_path);
                
$found TRUE;
            }
        } else {
            foreach ( 
get_instance ()->load->get_package_paths TRUE ) as $package_path ) {
                
$package_path .= 'language/' $idiom '/' $langfile;
                if (
$basepath !== $package_path && file_exists $package_path )) {
                    include (
$package_path);
                    
$found TRUE;
                    break;
                }
            }
        }
        
        if (
$found !== TRUE) {
            
show_error 'Unable to load the requested language file: language/' $idiom '/' $langfile );
        }
        
        if (! isset ( 
$lang ) or ! is_array $lang )) {
            
log_message 'error''Language file contains no data: language/' $idiom '/' $langfile );
            
            if (
$return === TRUE) {
                return array ();
            }
            return;
        }
        
        if (
$return === TRUE) {
            return 
$lang;
        }
        
        
$this->is_loaded [$langfile] = $idiom;
        
$this->language array_merge $this->language$lang );
        
        
log_message 'info''Language file loaded: language/' $idiom '/' $langfile );
        return 
TRUE;
    }

Reply




Theme © iAndrew 2016 - Forum software by © MyBB