public function fetchData()
 {
     $this->activeRecord = null;
     $resultRaw = parent::fetchData();
     foreach ($resultRaw as $key => $value) {
         if (substr($key, 0, 1) == '_') {
             $key = substr($key, 1);
         }
         $result[$key] = $value;
     }
     $lang = Openbiz::$app->getClientProxy()->getFormInputs("fld_lang");
     $lang ? $lang : ($lang = I18n::getCurrentLangCode());
     $record_id = $result["Id"];
     $transDO = Openbiz::getObject($this->translateDO, 1);
     $currentRecord = $transDO->fetchOne("[lang]='{$lang}'");
     if ($currentRecord) {
         $currentRecord = $currentRecord->toArray();
         foreach ($currentRecord as $field => $value) {
             $result['_' . $field] = $value;
         }
     } else {
         $result['_repo_name'] = "";
         $result['_repo_desc'] = "";
     }
     return $result;
 }
Exemplo n.º 2
0
 public function getFromList(&$list)
 {
     $current_locale = I18n::getCurrentLangCode();
     $country = Openbiz::$app->getClientProxy()->getFormInputs("fld_region");
     $country = strtoupper($country);
     if (!$country) {
         $locale = explode('_', $current_locale);
         $country = strtoupper($locale[0]);
     }
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale($current_locale);
     $code2name = $locale->getTranslationList('territorytolanguage', $locale);
     $list = array();
     $i = 0;
     foreach ($code2name as $key => $value) {
         if (preg_match('/' . $country . '/', $value) || strtoupper($key) == $country) {
             $lang_list = explode(" ", $value);
             foreach ($lang_list as $lang) {
                 $list[$i]['txt'] = strtolower($key) . "_" . strtoupper($lang);
                 $list[$i]['val'] = strtolower($key) . "_" . strtoupper($lang);
                 $i++;
             }
         }
     }
     return $list;
 }
Exemplo n.º 3
0
 public function getDefaultLangName($lang = null)
 {
     if ($lang == null) {
         $do = Openbiz::getObject("myaccount.do.PreferenceDO", 1);
         $rec = $do->fetchOne("[user_id]='0' AND [name]='language'");
         if ($rec) {
             $lang = $rec['value'];
         } else {
             $lang = OPENBIZ_DEFAULT_LANGUAGE;
         }
     }
     $current_locale = I18n::getCurrentLangCode();
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale($current_locale);
     $display_name = \Zend_Locale::getTranslation($lang, 'language', $locale);
     if ($display_name) {
         return $display_name;
     } else {
         if ($lang) {
             return $lang;
         } else {
             return OPENBIZ_DEFAULT_LANGUAGE;
         }
     }
 }
Exemplo n.º 4
0
 /**
  * Get message from CONSTANT, translate and format it
  * @param string $msgId ID if constant
  * @param array $params parameter for format (use vsprintf)
  * @return string
  */
 public static function getMessage($msgId, $params = array())
 {
     $message = constant($msgId);
     if (isset($message)) {
         $message = I18n::t($message, $msgId, 'system');
         $result = vsprintf($message, $params);
     }
     return $result;
 }
Exemplo n.º 5
0
 /**
  * Constructor of TypeManager, set locale with $localCode parameter
  *
  * @param string $localeCode
  * @return void
  **/
 public function __construct($localeCode = "")
 {
     //try to set correct locale for current language as defined in app.inc section I18n
     $currentLanguage = I18n::getCurrentLangCode();
     $localeCode = $GLOBALS["local"][$currentLanguage];
     setlocale(LC_ALL, $localeCode);
     $this->_localeInfo = localeconv();
     if ($this->_localeInfo['frac_digits'] > 10) {
         $this->_localeInfo = null;
     }
 }
Exemplo n.º 6
0
 public function getMessage($messageId, $params = array())
 {
     $message = isset($this->objectMessages[$messageId]) ? $this->objectMessages[$messageId] : @constant($messageId);
     if (!$message) {
         $message = $messageId;
     } else {
         //$message = I18n::getInstance()->translate($message);
         $message = I18n::t($message, $messageId, $this->getModuleName($this->objectName));
     }
     return @vsprintf($message, $params);
 }
Exemplo n.º 7
0
 public function getFromList(&$list)
 {
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale(I18n::getCurrentLangCode());
     $code2name = $locale->getTranslationList('territory', $locale, 2);
     $list = array();
     $i = 0;
     foreach ($code2name as $key => $value) {
         if ((int) $key == 0) {
             $list[$i]['val'] = $key;
             $list[$i]['txt'] = $value;
             $i++;
         }
     }
     return $list;
 }
Exemplo n.º 8
0
 public function fetchData()
 {
     preg_match("/\\[([\\S]*?)\\]=\\'file_(.*?)\\'/si", $this->fixSearchRule, $match);
     $Id = $match[2];
     $resultArr = $this->fetchDataSet();
     $record = $resultArr[$Id];
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale(I18n::getCurrentLangCode());
     $code2name = $locale->getTranslationList('language', $locale);
     $lang_code = $this->getLang();
     $locale = explode('_', $lang_code);
     $lang = $code2name[$locale[0]];
     $image_path = OPENBIZ_APP_URL . "/images/nations/22x14/" . strtolower($locale[1]) . '.png';
     $image = "<image  style=\"float:left;display:block;margin-right:5px;padding-top:2px;\" src=\"{$image_path}\" />";
     $record['lang'] = "<div>" . $image . " <span style=\"float:left;display:block;\">{$lang} ( {$lang_code} )</span></div>";
     $record['translation'] = file_get_contents($record['path']);
     $this->recordId = "file_" . $Id;
     return $record;
 }
 public function fetchDataSet()
 {
     $result = parent::fetchDataSet();
     $resultSet = array();
     $messageFile_loaded = false;
     foreach ($result as $record) {
         $form = unserialize($record['form']);
         $data = unserialize($record['data']);
         if (!$messageFile_loaded) {
             $this->objectMessages = MessageHelper::loadMessage($form['message_file'], $form['package']);
             $formObj = Openbiz::getObject($this->parentFormName);
             I18n::AddLangData("common", substr($formObj->package, 0, intval(strpos($formObj->package, '.'))));
             $messageFile_loaded = true;
         }
         if (is_array($data)) {
             foreach ($data as $key => $value) {
                 $elemObjMeta = $data[$key]['element'];
                 $elemObjMeta = $this->replaceElementClass($elemObjMeta);
                 if ($elemObjMeta["ATTRIBUTES"]['FIELDTYPE'] == 'ExtendField') {
                     $extendSettingId = (int) str_replace("extend_field_", $replace, $elemObjMeta["ATTRIBUTES"]['NAME']);
                     $elemObjMeta["ATTRIBUTES"] = Openbiz::getService("extend.lib.ExtendFieldService")->translateElemArr($elemObjMeta["ATTRIBUTES"], $extendSettingId);
                 }
                 $objName = $elemObjMeta["ATTRIBUTES"]['CLASS'];
                 $formObj = Openbiz::getObject($this->parentFormName);
                 $elemObj = new $objName($elemObjMeta, $formObj);
                 $data[$key]['label'] = $elemObj->renderLabel();
                 $elemObj->setValue($data[$key]['old']);
                 $elemObj->text = str_replace("{@:Elem[" . $elemObj->objectName . "].Value}", $data[$key]['old'], $elemObj->text);
                 $data[$key]['old'] = $elemObj->render();
                 $elemObj = new $objName($elemObjMeta, $formObj);
                 $elemObj->setValue($data[$key]['new']);
                 $elemObj->text = str_replace("{@:Elem[" . $elemObj->objectName . "].Value}", $data[$key]['new'], $elemObj->text);
                 $data[$key]['new'] = $elemObj->render();
                 unset($data[$key]['element']);
             }
         }
         $record['data'] = $data;
         unset($record['form']);
         $resultSet[] = $record;
     }
     return $resultSet;
 }
Exemplo n.º 10
0
 public function getFormatCurrency($amount, $prefix = '')
 {
     $current_locale = I18n::getCurrentLangCode();
     /*
     switch($current_locale)
     {
     	case "zh_CN":
     		$display_amount = "¥ ";
     		break;
     	case "en_US":
     	default:
     		$display_amount = "$ ";
     		break;
     }
     $display_amount.= number_format(floatval($amount));
     return $prefix.$display_amount;
     */
     setlocale(LC_MONETARY, $current_locale . '.utf8');
     if (function_exists("money_format") && false) {
         $display_amount = money_format('%n', (double) $amount);
     } else {
         $locale_info = localeconv();
         if (!$locale_info[currency_symbol]) {
             setlocale(LC_MONETARY, $current_locale);
             $locale_info = localeconv();
         }
         $display_amount = $locale_info[currency_symbol] . ' ' . sprintf("%.2f", (double) $amount);
     }
     return $prefix . $display_amount;
     /*
     //Zend Currency is crazy slow
     require_once('Zend/Currency.php');
     $current_currency = CUBI_DEFAULT_CURRENCY;		
     if(!$current_currency){
     	$current_currency = "USD";
     }				
     $currency = new \Zend_Currency($current_currency,$current_locale);	
     $amount = floatval($amount);
     $display_name = $currency->toCurrency($prefix.$amount);
     return $display_name;
     */
 }
Exemplo n.º 11
0
 function getFromList(&$list)
 {
     $current_locale = I18n::getCurrentLangCode();
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale($current_locale);
     $current_currency = CUBI_DEFAULT_CURRENCY;
     if (!$current_currency) {
         $current_currency = "USD";
     }
     //require_once('Zend/Currency.php');
     $currency = new \Zend_Currency($current_currency, $current_locale);
     $currencyList = $currency->getCurrencyList();
     foreach ($currencyList as $currency_code => $country) {
         $display_name = $currency->getName($currency_code, $current_locale);
         if ($display_name) {
             array_push($list, array("val" => $currency_code, "txt" => "{$currency_code} - {$display_name}"));
         }
     }
     return $list;
 }
 public function fetchData()
 {
     $this->activeRecord = null;
     $result = parent::fetchData();
     $lang = Openbiz::$app->getClientProxy()->getFormInputs("fld_lang");
     $lang ? $lang : ($lang = I18n::getCurrentLangCode());
     $record_id = $result["Id"];
     $transDO = Openbiz::getObject($this->translateDO, 1);
     $currentRecord = $transDO->fetchOne("[{$this->recordFKField}]='{$record_id}' AND [lang]='{$lang}'");
     if ($currentRecord) {
         $currentRecord = $currentRecord->toArray();
         foreach ($currentRecord as $field => $value) {
             $result['_' . $field] = $value;
         }
     } else {
         $result['_name'] = "";
         $result['_description'] = "";
     }
     return $result;
 }
Exemplo n.º 13
0
 function getList()
 {
     $list = array();
     $lang_dir = OPENBIZ_APP_PATH . DIRECTORY_SEPARATOR . "languages" . DIRECTORY_SEPARATOR . $lang;
     if (!is_dir($lang_dir)) {
         return array();
     }
     $current_locale = I18n::getCurrentLangCode();
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale($current_locale);
     $code2name = $locale->getTranslationList('language', $locale);
     foreach (glob($lang_dir . DIRECTORY_SEPARATOR . "*") as $dir) {
         $lang_code = basename($dir);
         if ($lang_code == 'dictionary') {
             continue;
         }
         $locale = explode('_', $lang_code);
         $lang_name = $code2name[strtolower($locale[0])];
         array_push($list, array("val" => $lang_code, "txt" => $lang_name . " ( {$lang_code} )", "pic" => OPENBIZ_APP_URL . "/images/nations/22x14/" . strtolower($locale[1]) . ".png"));
     }
     return $list;
 }
Exemplo n.º 14
0
 public function translateElemArr($elemArr, $setting_id)
 {
     $lang = I18n::getCurrentLangCode();
     if (!$lang) {
         return $elemArr;
     }
     $setting_id = (int) $setting_id;
     $transDO = Openbiz::getObject($this->extendSettingTranslationDO, 1);
     $transRec = $transDO->fetchOne("[setting_id]='{$setting_id}' AND [lang]='{$lang}'");
     if (!$transRec) {
         return $elemArr;
     }
     $elemArr['LABEL'] = $transRec['label'];
     $elemArr['DESCRIPTION'] = $transRec['description'];
     $elemArr['DEFAULTVALUE'] = $transRec['defaultvalue'];
     if ($elemArr['SELECTFROM']) {
         $transOptDO = Openbiz::getObject($this->extendSettingOptionDO, 1);
         $opts = $transOptDO->directfetch("[setting_id]='" . $setting_id . "' AND [lang]='{$lang}'");
         if ($opts && $opts->count() > 0) {
             $elemArr['SELECTFROM'] = $this->extendSettingOptionDO . "[text:value],[setting_id]='" . $setting_id . "' AND [lang]='{$lang}' ";
         }
     }
     return $elemArr;
 }
Exemplo n.º 15
0
 protected function translate()
 {
     $module = substr($this->viewName, 0, intval(strpos($this->viewName, '.')));
     //echo $this->getTransKey('Description');
     $this->objectDescription = I18n::t($this->objectDescription, $this->getTransKey('Description'), $module);
 }
Exemplo n.º 16
0
/**
 * Smarty block function, provides gettext support for smarty.
 *
 * The block content is the text that should be translated.
 *
 * Any parameter that is sent to the function will be represented as %n in the translation text, 
 * where n is 1 for the first parameter. The following parameters are reserved:
 *   - escape - sets escape mode:
 *       - 'html' for HTML escaping, this is the default.
 *       - 'js' for javascript escaping.
 *       - 'url' for url escaping.
 *       - 'no'/'off'/0 - turns off escaping
 *   - plural - The plural version of the text (2nd parameter of ngettext())
 *   - count - The item count for plural mode (3rd parameter of ngettext())
 */
function smarty_block_t($params, $text, &$smarty)
{
    $text = stripslashes($text);
    // set escape mode
    if (isset($params['escape'])) {
        $escape = $params['escape'];
        unset($params['escape']);
    }
    // set plural version
    if (isset($params['plural'])) {
        $plural = $params['plural'];
        unset($params['plural']);
        // set count
        if (isset($params['count'])) {
            $count = $params['count'];
            unset($params['count']);
        }
    }
    //debut modif lolo
    //utilisons Zend_translate
    // use plural if required parameters are set
    /*if (isset($count) && isset($plural)) {
    		$text = ngettext($text, $plural, $count);
    	} else { // use normal
    		$text = gettext($text);
    	}*/
    //$text=I18n::getInstance()->translate($text);
    $module = $smarty->_tpl_vars['module'];
    $key = strtoupper('STRING_' . md5($text));
    $text = I18n::t($text, $key, $module);
    //fin modif lolo
    // run strarg if there are parameters
    if (count($params)) {
        $text = smarty_gettext_strarg($text, $params);
    }
    if (!isset($escape) || $escape == 'html') {
        // html escape, default
        $text = nl2br(htmlspecialchars($text));
    } elseif (isset($escape)) {
        switch ($escape) {
            case 'javascript':
            case 'js':
                // javascript escape
                $text = str_replace('\'', '\\\'', stripslashes($text));
                break;
            case 'url':
                // url escape
                $text = urlencode($text);
                break;
        }
    }
    $text = str_replace('\\n', "<br/>", $text);
    return $text;
}
Exemplo n.º 17
0
 /**
  * Get \Zend Template
  * @return \Zend_View zend view template object
  */
 public static function getZendTemplate()
 {
     $view = new \Zend_View();
     if (defined('SMARTY_TPL_PATH')) {
         $view->setScriptPath(SMARTY_TPL_PATH);
     }
     $theme = Openbiz::$app->getCurrentTheme();
     // load the config file which has the images and css url defined
     $view->app_url = OPENBIZ_APP_URL;
     $view->app_index = OPENBIZ_APP_INDEX_URL;
     $view->js_url = OPENBIZ_JS_URL;
     $view->css_url = OPENBIZ_THEME_URL . "/" . $theme . "/css";
     $view->resource_url = OPENBIZ_RESOURCE_URL;
     $view->theme_js_url = OPENBIZ_THEME_URL . "/" . $theme . "/js";
     $view->theme_url = OPENBIZ_THEME_URL . "/" . $theme;
     $view->image_url = OPENBIZ_THEME_URL . "/" . $theme . "/images";
     $view->lang = strtolower(I18n::getCurrentLangCode());
     return $view;
 }
Exemplo n.º 18
0
 public function Code2Region($code, $locale = null)
 {
     $code = strtoupper($code);
     //require_once('Zend/Locale.php');
     $locale = new \Zend_Locale(I18n::getCurrentLangCode());
     $code2name = $locale->getTranslationList('territory', $locale);
     $result = $code2name[$code];
     $locale = null;
     $code2name = null;
     return $result;
 }
Exemplo n.º 19
0
 protected function translate()
 {
     $module = $this->getModuleName($this->objectName);
     $this->title = I18n::t($this->title, $this->getTransKey('Title'), $module);
     $this->objectDescription = I18n::t($this->objectDescription, $this->getTransKey('Description'), $module);
 }
Exemplo n.º 20
0
 protected function getChangeLogMessage($messageId)
 {
     $message = isset($this->changeLogMessages[$messageId]) ? $this->changeLogMessages[$messageId] : constant($messageId);
     $message = I18n::t($message, $messageId, "changelog");
     return @vsprintf($message, $params);
 }
Exemplo n.º 21
0
 protected function translate()
 {
     $module = $this->getModuleName($this->formName);
     if (!empty($this->text)) {
         $this->text = I18n::t($this->text, $this->getTransKey('Text'), $module);
     }
     if (!empty($this->label)) {
         $this->label = I18n::t($this->label, $this->getTransKey('Label'), $module);
     }
     if (!empty($this->key)) {
         $this->key = I18n::t($this->key, $this->getTransKey('Label'), $module);
     }
     if (!empty($this->objectDescription)) {
         $this->objectDescription = I18n::t($this->objectDescription, $this->getTransKey('Description'), $module);
     }
     if (!empty($this->defaultValue)) {
         $this->defaultValue = I18n::t($this->defaultValue, $this->getTransKey('DefaultValue'), $module);
     }
     if (!empty($this->elementSet)) {
         $this->elementSet = I18n::t($this->elementSet, $this->getTransKey('ElementSet'), $module);
     }
 }
Exemplo n.º 22
0
 protected function translate()
 {
     $module = $this->getModuleName($this->objectName);
     $trans_string = I18n::t($this->title, $this->getTransKey('Title'), $module, $this->getTransPrefix());
     if ($trans_string) {
         $this->title = $trans_string;
     }
     $trans_string = I18n::t($this->objectDescription, $this->getTransKey('Description'), $module, $this->getTransPrefix());
     if ($trans_string) {
         $this->objectDescription = $trans_string;
     }
 }
Exemplo n.º 23
0
 protected function _remoteCall($uri, $method, $params = null)
 {
     $cache_id = md5($this->objectName . $uri . $method . serialize($params));
     $cacheSvc = Openbiz::getService(CACHE_SERVICE, 1);
     $cacheSvc->init($this->objectName, $this->cacheLifeTime);
     if (substr($uri, strlen($uri) - 1, 1) != '/') {
         $uri .= '/';
     }
     $uri .= "ws.php/repository/RepositoryService";
     if ($cacheSvc->test($cache_id) && (int) $this->cacheLifeTime > 0) {
         $resultSetArray = $cacheSvc->load($cache_id);
     } else {
         try {
             $argsJson = urlencode(json_encode($params));
             $lang = I18n::getCurrentLangCode();
             $query = array("method={$method}", "format=json", "argsJson={$argsJson}", "lang={$lang}");
             $httpClient = new HttpClient('POST');
             foreach ($query as $q) {
                 $httpClient->addQuery($q);
             }
             $headerList = array();
             $out = $httpClient->fetchContents($uri, $headerList);
             $cats = json_decode($out, true);
             $resultSetArray = $cats['data'];
             $cacheSvc->save($resultSetArray, $cache_id);
         } catch (Exception $e) {
             $resultSetArray = array();
         }
     }
     return $resultSetArray;
 }
Exemplo n.º 24
0
 protected function translateList($list, $tag)
 {
     $module = $this->getModuleName($this->selectFrom);
     if (empty($module)) {
         $module = $this->getModuleName($this->formName);
     }
     for ($i = 0; $i < count($list); $i++) {
         $key = 'SELECTION_' . strtoupper($tag) . '_' . $i . '_TEXT';
         $list[$i]['txt'] = I18n::t($list[$i]['txt'], $key, $module, $this->getTransLOVPrefix());
     }
     return $list;
 }
Exemplo n.º 25
0
 protected function convertEncoding($message)
 {
     $lang = strtolower(I18n::getInstance()->getCurrentLanguage());
     switch ($lang) {
         case 'zh_cn':
             $message = iconv("UTF-8", "GB2312//IGNORE", $message);
             break;
         case 'zh_tw':
             $message = iconv("UTF-8", "BIG5//IGNORE", $message);
             break;
     }
     return $message;
 }
Exemplo n.º 26
0
 protected function translate()
 {
     $module = substr($this->_formName, 0, intval(strpos($this->_formName, '.')));
     if (!empty($this->contextMenu)) {
         $this->contextMenu = I18n::t($this->contextMenu, $this->getTransKey('ContextMenu'), $module);
     }
 }
Exemplo n.º 27
0
 /**
  * Get appended styles
  *
  * @return string
  */
 public function getAppendedStyles($comb = 0)
 {
     $extraStyles = implode("", $this->_extraStyles);
     $extraStyle_array = explode("type=\"text/css\">", $extraStyles);
     if (defined("OPENBIZ_RESOURCE_PHP") && $comb) {
         $css_scripts = OPENBIZ_RESOURCE_PHP . "?f=";
         $matches = array();
         foreach ($extraStyle_array as $style) {
             // extract href part from each line
             if (preg_match('/.+href="([^"]+)".+/', $style, $matches) > 0 && !empty($matches[1])) {
                 if (substr($css_scripts, -2) == 'f=') {
                     $css_scripts .= $matches[1];
                 } else {
                     $css_scripts .= ',' . $matches[1];
                 }
             }
         }
         return "<link rel=\"stylesheet\" href=\"" . $css_scripts . "\" type=\"text/css\"/>";
     }
     $cleanStyle_array = array();
     foreach ($extraStyle_array as $style) {
         if (in_array($style . "type=\"text/css\">", $cleanStyle_array) == FALSE and strlen($style) != 0) {
             $cleanStyle_array[] = $style . "type=\"text/css\">";
         }
     }
     $lang = I18n::getCurrentLangCode();
     $localization_css_file = OPENBIZ_APP_PATH . DIRECTORY_SEPARATOR . "languages" . DIRECTORY_SEPARATOR . $lang . DIRECTORY_SEPARATOR . "localization.css";
     if (is_file($localization_css_file)) {
         $cleanStyle_array[] = "<link rel=\"stylesheet\" href=\"" . OPENBIZ_APP_URL . "/languages/{$lang}/localization.css\" type=\"text/css\">";
     }
     return implode("\n", $cleanStyle_array);
 }
Exemplo n.º 28
0
 protected function translateList(&$list, $tag)
 {
     $package = $this->getSelectFrom();
     I18n::addLangData(substr($package, 0, intval(strpos($package, '.'))), "extend");
     parent::translateList($list, $tag);
 }
Exemplo n.º 29
0
 public static function getCurrentLangCode()
 {
     if (I18n::$_langCode != null) {
         return I18n::$_langCode;
     }
     $currentLanguage = Openbiz::$app->getSessionContext()->getVar("LANG");
     // default language
     if ($currentLanguage == "") {
         $currentLanguage = Openbiz::$app->getUserPreference("language");
     }
     if ($currentLanguage == "") {
         $currentLanguage = I18n::DEFAULT_LANGUAGE;
     }
     // language from url
     if (isset($_GET['lang'])) {
         $currentLanguage = $_GET['lang'];
         Openbiz::$app->getSessionContext()->setVar("LANG", $currentLanguage);
     }
     // TODO: user pereference has language setting
     Openbiz::$app->getSessionContext()->setVar("LANG", $currentLanguage);
     I18n::$_langCode = $currentLanguage;
     return $currentLanguage;
 }
Exemplo n.º 30
0
 protected function translate()
 {
     $module = $this->module;
     if (!empty($this->objectName)) {
         $this->objectName = I18n::t($this->objectName, $this->getTransKey('Title'), $module);
     }
     if (!empty($this->objectDescription)) {
         $this->objectDescription = I18n::t($this->objectDescription, $this->getTransKey('Description'), $module);
     }
 }