* -------------------------------------------------------------------- *
* Kurzbeschreibung : Sprachfunktionen *
* -------------------------------------------------------------------- *
- * $Revision:: $ *
- * $Date:: $ *
- * $Tag:: 0.2.1-FINAL $ *
- * $Author:: $ *
- * -------------------------------------------------------------------- *
* Copyright (c) 2003 - 2009 by Roland Haeder *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2009 - 2016 by Mailer Developer Team *
+ * For more information visit: http://mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
} // END - if
// "Getter" for language strings
-// @TODO Rewrite all language constants to this function.
function getMessage ($messageId) {
// Default is not found
$return = '!' . $messageId . '!';
$return = $GLOBALS['messages'][getCurrentLanguage()][$messageId];
} else {
// Missing language constant
- logDebugMessage(__FUNCTION__, __LINE__, sprintf("Missing message string %s detected.", $messageId));
+ logDebugMessage(__FUNCTION__, __LINE__, sprintf('Missing message string %s detected.', $messageId));
}
// Return the string
}
}
-// Checks wether given message id is valid
+// Checks whether given message id is valid
function isMessageIdValid ($messageId) {
return (isset($GLOBALS['messages'][getCurrentLanguage()][$messageId]));
}
$GLOBALS['language'] = (string) $language;
}
+// Checks whether current language is set
+function isCurrentLanguageSet () {
+ return (isset($GLOBALS['language']));
+}
+
// "Getter" for language
function getLanguage () {
- // Do we have cache?
- if (!isset($GLOBALS['language'])) {
+ // Is there cache?
+ if (!isCurrentLanguageSet()) {
// Default is 'de'. DO NOT CHANGE THIS!!!
$ret = 'de';
} // END - if
// Is the variable set
- if (isGetRequestParameterSet('mx_lang')) {
+ if (isGetRequestElementSet('mailer_lang')) {
// Accept only first 2 chars
- $ret = substr(getRequestParameter('mx_lang'), 0, 2);
- } elseif (isset($GLOBALS['language'])) {
+ $ret = substr(getRequestElement('mailer_lang'), 0, 2);
+ } elseif (isCurrentLanguageSet()) {
// Use cached
$ret = getCurrentLanguage();
- } elseif (isSessionVariableSet('mx_lang')) {
+ } elseif (isSessionVariableSet('mailer_lang')) {
// Return stored value from cookie
- $ret = getSession('mx_lang');
+ $ret = getSession('mailer_lang');
- // Fixes a warning before the session has the mx_lang constant
+ // Fixes a warning before the session has the mailer_lang constant
if (empty($ret)) {
$ret = getDefaultLanguage();
} // END - if
$lang = substr(secureString($lang), 0, 2);
// Set cookie
- setSession('mx_lang', $lang);
+ setSession('mailer_lang', $lang);
}
-// Checks wether a language file is there for optional extension
+// Checks whether a language file is there for optional extension
function isLanguageIncludeReadable ($ext_name = 'none') {
- // Do we have array element?
+ // Is there array element?
if (!isset($GLOBALS['lang_inc'][$ext_name])) {
// Generate filename
if ($ext_name == 'none') {
// Generic
- $languageInclude = sprintf("inc/language/%s.php", getLanguage());
+ $languageInclude = sprintf('inc/language/%s.php', getLanguage());
} else {
// Extension's language file
- $languageInclude = sprintf("inc/language/%s_%s.php", $ext_name, getLanguage());
+ $languageInclude = sprintf('inc/language/%s_%s.php', $ext_name, getLanguage());
}
// Look for file if no extension name is provided
setLanguage($currLanguage);
} // END - if
- // Do we have the language file NOT?
+ // Is there the language file NOT?
if (!isLanguageIncludeReadable($ext_name)) {
// Switch to default (DO NOT CHANGE!!!)
setLanguage('de');
loadLanguageInclude($ext_name);
} elseif ((isDebugModeEnabled()) && (isHtmlOutputMode()) && ($ext_name != 'sql_patches') && (substr($ext_name, 0, 10) != 'admintheme')) {
// No language file is not so good...
- logDebugMessage(__FUNCTION__, __LINE__, sprintf("NOTICE: Extension %s has no language file or we cannot read from it. lang=%s, mode=%s",
+ logDebugMessage(__FUNCTION__, __LINE__, sprintf('NOTICE: Extension %s has no language file or we cannot read from it. lang=%s, mode=%s',
$ext_name,
getLanguage(),
getExtensionMode()
}
// Check for installation mode
- if ((isInstallationPhase()) || (!isAdminRegistered())) {
+ if ((isInstaller()) || (!isAdminRegistered())) {
// Load language file
loadLanguageInclude('install');
} // END - if
// Generate filename
if ($ext_name == 'none') {
// Generic
- $languageInclude = sprintf("inc/language/%s.php", getLanguage());
+ $languageInclude = sprintf('inc/language/%s.php', getLanguage());
} else {
// Extension's language file
- $languageInclude = sprintf("inc/language/%s_%s.php", $ext_name, getLanguage());
+ $languageInclude = sprintf('inc/language/%s_%s.php', $ext_name, getLanguage());
}
// Check it before loading
loadIncludeOnce($languageInclude);
} else {
// Not readable!
- logDebugMessage(__FUNCTION__, __LINE__, sprintf("Language file %s not found or readable.", $languageInclude));
+ logDebugMessage(__FUNCTION__, __LINE__, sprintf('Language file %s not found or readable.', $languageInclude));
}
}
// Init differences
$GLOBALS['lang_diff'][$target] = array();
$GLOBALS['lang_diff_count'][$target] = 0;
- if (!isset($GLOBALS['lang_diff_count']['total'])) $GLOBALS['lang_diff_count']['total'] = 0;
+ if (!isset($GLOBALS['lang_diff_count']['total'])) {
+ $GLOBALS['lang_diff_count']['total'] = 0;
+ } // END - if
// *Does* match by default
- $matches = true;
+ $matches = TRUE;
// Is one not readable?
if (!isIncludeReadable($source)) {
// Please report this bug!
- debug_report_bug(__FUNCTION__, __LINE__, 'Source file ' . $source . ' is not readable.');
+ reportBug(__FUNCTION__, __LINE__, 'Source file ' . $source . ' is not readable.');
} elseif (!isIncludeReadable($target)) {
// Please report this bug!
- debug_report_bug(__FUNCTION__, __LINE__, 'Target file ' . $target . ' is not readable.');
+ reportBug(__FUNCTION__, __LINE__, 'Target file ' . $target . ' is not readable.');
} elseif ($targetLanguage == getCurrentLanguage()) {
// Must be different
- debug_report_bug(__FUNCTION__, __LINE__, 'Target language ' . $targetLanguage . ' is same as current.');
+ reportBug(__FUNCTION__, __LINE__, 'Target language ' . $targetLanguage . ' is same as current.');
}
// Backup current messages/language
$GLOBALS['messages'][$backupLang] = array();
// Both are readable so include current language file
- $GLOBALS['count'] = false;
+ $GLOBALS['count'] = FALSE;
loadInclude($source);
$GLOBALS['msgs'][$source] = $GLOBALS['messages'][$backupLang];
unset($GLOBALS['count']);
// Set target language
setCurrentLanguage($targetLanguage);
- // Do we have an array?
+ // Is there an array?
if (!isset($GLOBALS['messages'][$targetLanguage])) {
// Then create it to avoid notice
$GLOBALS['messages'][$targetLanguage] = array();
// Do they mismatch?
if ((count($GLOBALS['msgs'][$source])) != (count($GLOBALS['msgs'][$target]))) {
// Does not match
- $matches = false;
+ $matches = FALSE;
// Check all differences
foreach ($GLOBALS['msgs'][$source] as $key => $value) {
return $GLOBALS['lang_diff_count'][$target];
}
-// Checks wether the given message is masked
-function isMessageMasked ($messageId) {
+// Checks whether the given message is masked
+function isMessageMasked ($messageId, $strict = TRUE) {
// Is the message id valid?
- if (!isMessageIdValid($messageId)) {
+ if (($strict === TRUE) && (!isMessageIdValid($messageId))) {
// No, then abort here
- debug_report_bug(__FUNCTION__, __LINE__, 'Invalid message id ' . $messageId . ' detected.');
+ reportBug(__FUNCTION__, __LINE__, 'Invalid message id ' . $messageId . ' detected.');
} // END - if
// Now simply check it
- $masked = (strpos($GLOBALS['messages'][getCurrentLanguage()][$messageId], '%') !== false);
+ $isMasked = isInString('%', getMessage($messageId));
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'messageId=' . $messageId . ',isMasked=' . intval($isMasked));
// Return result
- return $masked;
+ return $isMasked;
}
// [EOF]