Ignore:
Timestamp:
Aug 17, 2009, 5:00:50 PM (15 years ago)
Author:
Criss
Message:

Add default value to language translation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/ContactForm/classes/cf_config_lang.class.php

    r3743 r3746  
    44class CF_Config_Lang {
    55  static $default_keys = array();
    6   static private $available_languages = null;
     6  static protected $available_languages = null;
    77  protected $defined_languages = array();
    88  protected $added_languages = array();
     
    2626  /* ************************ */
    2727
    28   function CF_Config_Lang() {
     28  function __construct() {
    2929    $this->init();
    3030  }
     
    7777  }
    7878 
    79   function get_value($language=null, $key=null) {
     79  function get_value($language=null, $key=null, $return_default=true) {
    8080    $values = $this->get_merged_values();
    8181    if (null == $language) {
     
    8989    }
    9090    if (!isset($values[$language][$key]) or empty($values[$language][$key])) {
     91      if ($return_default) {
     92        return $values[CF_LANG_DEFAULT][$key];
     93      }
    9194      return null;
    9295    }
     
    104107    }
    105108    $this->add_key($key);
     109  }
     110 
     111  function get_extended_values($language=null) {
     112    $values = $this->get_merged_values();
     113    $return_values = array();
     114    foreach($values as $language => $keys) {
     115      foreach($keys as $key => $value) {
     116        if (!isset($return_values[$key])) {
     117          $return_values[$key] = '';
     118        }
     119        if (!empty($value)) {
     120          if (strcmp($language, CF_LANG_DEFAULT) != 0) {
     121            $language = substr($language, 0, 2);
     122          }
     123          $return_values[$key] .= '[lang=' . $language . ']';
     124          $return_values[$key] .= $value;
     125          $return_values[$key] .= '[/lang]';
     126        }
     127      }
     128    }
     129    return $return_values;
     130  }
     131 
     132  function mass_update($new_values = array()) {
     133    foreach($new_values as $key => $values) {
     134      if (is_array($values)) {
     135        foreach($values as $language => $content) {
     136          $this->set_value($language, $key, $content);
     137        }
     138      }
     139    }
    106140  }
    107141 
Note: See TracChangeset for help on using the changeset viewer.