diff options
| author | lsces <lester@lsces.co.uk> | 2025-08-27 15:06:43 +0100 |
|---|---|---|
| committer | lsces <lester@lsces.co.uk> | 2025-08-27 15:06:43 +0100 |
| commit | 1851dc9b5de69e4833bbc12c7ac552d8fbd20e19 (patch) | |
| tree | d40741cab7d5e23941558f4dc7ca7c91b74d3c89 | |
| parent | 265810599036c3803397969d89b30cefb583f366 (diff) | |
| download | languages-1851dc9b5de69e4833bbc12c7ac552d8fbd20e19.tar.gz languages-1851dc9b5de69e4833bbc12c7ac552d8fbd20e19.tar.bz2 languages-1851dc9b5de69e4833bbc12c7ac552d8fbd20e19.zip | |
General changes to cover uninitialized variables and style changes for PHP8.4
| -rw-r--r-- | admin/admin_languages_inc.php | 8 | ||||
| -rw-r--r-- | admin/schema_inc.php | 67 | ||||
| -rwxr-xr-x[-rw-r--r--] | includes/bit_setup_inc.php | 47 | ||||
| -rwxr-xr-x[-rw-r--r--] | liberty_plugins/data.tr.php | 21 | ||||
| -rwxr-xr-x[-rw-r--r--] | liberty_plugins/data.translated.php | 28 |
5 files changed, 90 insertions, 81 deletions
diff --git a/admin/admin_languages_inc.php b/admin/admin_languages_inc.php index e65aae6..356b177 100644 --- a/admin/admin_languages_inc.php +++ b/admin/admin_languages_inc.php @@ -11,7 +11,7 @@ $formLanguageToggles = array( ), 'i18n_interactive_translation' => array( 'label' => 'Interactive Translations', - 'note' => 'This will help you translate your site very effitiently by giving you direct access to the correct translation page.<br />Once you are done translating, make sure you turn this feature off and clear the language cache.<br />This feature only works when you set <em>$smarty_force_compile</em> to TRUE in your <em>config/kernel/config_inc.php</em> file', + 'note' => 'This will help you translate your site very effitiently by giving you direct access to the correct translation page.<br />Once you are done translating, make sure you turn this feature off and clear the language cache.<br />This feature only works when you set <em>$smarty_force_compile</em> to true in your <em>config/kernel/config_inc.php</em> file', 'page' => 'TranslationTutorial', 'link' => array( 'title' => 'Language cache', @@ -49,7 +49,7 @@ if( isset( $_REQUEST["prefs"] )) { "bitlanguage", ); foreach( $pref_byref_values as $britem ) { - byref_set_value( $britem, NULL, LANGUAGES_PKG_NAME ); + byref_set_value( $britem, null, LANGUAGES_PKG_NAME ); } global $gBitLanguage; $gBitLanguage->setLanguage( $gBitSystem->getConfig( 'bitlanguage' )); @@ -61,7 +61,7 @@ if( isset( $_REQUEST["prefs"] )) { } // Get list of available languages -$languages = array(); +$languages = []; $languages = $gBitLanguage->listLanguages(); -$gBitSmarty->assignByRef( "languages", $languages ); +$gBitSmarty->assign( "languages", $languages ); ?> diff --git a/admin/schema_inc.php b/admin/schema_inc.php index 2946e63..d577c43 100644 --- a/admin/schema_inc.php +++ b/admin/schema_inc.php @@ -1,6 +1,6 @@ <?php -$tables = array( +$tables = [ 'i18n_languages' => " lang_code C(32) PRIMARY, @@ -35,51 +35,51 @@ $tables = array( CONSTRAINT ', CONSTRAINT `liberty_translation_ref` FOREIGN KEY (`content_id`) REFERENCES `".BIT_DB_PREFIX."liberty_content`( `content_id` )' ", -); +]; global $gBitInstaller; foreach( array_keys( $tables ) AS $tableName ) { - $gBitInstaller->registerSchemaTable( LANGUAGES_PKG_NAME, $tableName, $tables[$tableName], TRUE ); + $gBitInstaller->registerSchemaTable( LANGUAGES_PKG_NAME, $tableName, $tables[$tableName], true ); } -$indices = array ( - 'i18n_masters_pkg_idx' => array( 'table' => 'i18n_masters', 'cols' => 'package', 'opts' => NULL ), - 'i18n_masters_created_idx' => array( 'table' => 'i18n_masters', 'cols' => 'created', 'opts' => NULL ), - 'i18n_strings_lang_idx' => array( 'table' => 'i18n_strings', 'cols' => 'lang_code', 'opts' => NULL ), - 'i18n_strings_lang_idx' => array( 'table' => 'i18n_strings', 'cols' => 'source_hash', 'opts' => NULL ), - 'i18n_strings_modif_idx' => array( 'table' => 'i18n_strings', 'cols' => 'last_modified', 'opts' => NULL ), - 'i18n_version_src_idx' => array( 'table' => 'i18n_version_map', 'cols' => 'source_hash', 'opts' => NULL ), - 'i18n_version_ver_idx' => array( 'table' => 'i18n_version_map', 'cols' => 'version', 'opts' => NULL ), -); +$indices = [ + 'i18n_masters_pkg_idx' => [ 'table' => 'i18n_masters', 'cols' => 'package', 'opts' => null ], + 'i18n_masters_created_idx' => [ 'table' => 'i18n_masters', 'cols' => 'created', 'opts' => null ], + 'i18n_strings_lang_idx' => [ 'table' => 'i18n_strings', 'cols' => 'lang_code', 'opts' => null ], + 'i18n_strings_source_idx' => [ 'table' => 'i18n_strings', 'cols' => 'source_hash', 'opts' => null ], + 'i18n_strings_modif_idx' => [ 'table' => 'i18n_strings', 'cols' => 'last_modified', 'opts' => null ], + 'i18n_version_src_idx' => [ 'table' => 'i18n_version_map', 'cols' => 'source_hash', 'opts' => null ], + 'i18n_version_ver_idx' => [ 'table' => 'i18n_version_map', 'cols' => 'version', 'opts' => null ], +]; $gBitInstaller->registerSchemaIndexes( LANGUAGES_PKG_NAME, $indices ); // ### Sequences //$sequences = array ( -// 'i18n_content_trans_id_seq' => array( 'start' => 1 ), +// 'i18n_content_trans_id_seq' => [ 'start' => 1 ], //); //$gBitInstaller->registerSchemaSequences( LIBERTY_PKG_NAME, $sequences ); -$gBitInstaller->registerPackageInfo( LANGUAGES_PKG_NAME, array( +$gBitInstaller->registerPackageInfo( LANGUAGES_PKG_NAME, [ 'description' => "This package allows you to translate your site into a different language.", 'license' => '<a href="http://www.gnu.org/licenses/licenses.html#LGPL">LGPL</a>', -) ); +] ); // ### Default Preferences -$gBitInstaller->registerPreferences( LANGUAGES_PKG_NAME, array( - array( LANGUAGES_PKG_NAME, 'i18n_record_untranslated','y' ), -) ); +$gBitInstaller->registerPreferences( LANGUAGES_PKG_NAME, [ + [ LANGUAGES_PKG_NAME, 'i18n_record_untranslated','y' ], +] ); // ### Default UserPermissions -$gBitInstaller->registerUserPermissions( LANGUAGES_PKG_NAME, array( - array('p_languages_create', 'Can create new languages', 'admin', LANGUAGES_PKG_NAME), - array('p_languages_edit', 'Can edit translations', 'editors', LANGUAGES_PKG_NAME), - array('p_languages_delete', 'Can delete languages', 'admin', LANGUAGES_PKG_NAME), - array('p_languages_edit_master', 'Can edit master translation strings', 'admin', LANGUAGES_PKG_NAME), - array('p_languages_import', 'Can import and export language files', 'editors', LANGUAGES_PKG_NAME), -) ); +$gBitInstaller->registerUserPermissions( LANGUAGES_PKG_NAME, [ + [ 'p_languages_create', 'Can create new languages', 'admin', LANGUAGES_PKG_NAME], + [ 'p_languages_edit', 'Can edit translations', 'editors', LANGUAGES_PKG_NAME], + [ 'p_languages_delete', 'Can delete languages', 'admin', LANGUAGES_PKG_NAME], + [ 'p_languages_edit_master', 'Can edit master translation strings', 'admin', LANGUAGES_PKG_NAME], + [ 'p_languages_import', 'Can import and export language files', 'editors', LANGUAGES_PKG_NAME], +] ); -$gBitInstaller->registerSchemaDefault( LANGUAGES_PKG_NAME, array( +$gBitInstaller->registerSchemaDefault( LANGUAGES_PKG_NAME, [ "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`,`right_to_left`) VALUES ('ar', 'ﺎﻠﻋﺮﺒﻳﺓ', 'Arabic','y' )", "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`) VALUES ('ca', 'Català', 'Catalan')", "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`) VALUES ('cs', 'Český', 'Czech')", @@ -119,13 +119,12 @@ $gBitInstaller->registerSchemaDefault( LANGUAGES_PKG_NAME, array( "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`) VALUES ('uk', 'Українська', 'Ukrainian')", "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`,`right_to_left`) VALUES ('ur', 'اردو', 'Urdu', 'y')", "INSERT INTO `".BIT_DB_PREFIX."i18n_languages` (`lang_code`,`native_name`,`english_name`) VALUES ('zh-cn', '简体中文', 'Chinese')", -) ); +] ); // Package requirements -$gBitInstaller->registerRequirements( LANGUAGES_PKG_NAME, array( - 'liberty' => array( 'min' => '2.1.4' ), - 'users' => array( 'min' => '2.1.0' ), - 'kernel' => array( 'min' => '2.0.0' ), - 'themes' => array( 'min' => '2.0.0' ), -)); -?> +$gBitInstaller->registerRequirements( LANGUAGES_PKG_NAME, [ + 'liberty' => [ 'min' => '5.0.0' ], + 'users' => [ 'min' => '5.0.0' ], + 'kernel' => [ 'min' => '5.0.0' ], + 'themes' => [ 'min' => '5.0.0' ], +] ); diff --git a/includes/bit_setup_inc.php b/includes/bit_setup_inc.php index 6e3e534..7738a6e 100644..100755 --- a/includes/bit_setup_inc.php +++ b/includes/bit_setup_inc.php @@ -1,28 +1,35 @@ <?php -$registerHash = array( +/** + * required setup + */ +namespace Bitweaver; + +$pRegisterHash = [ 'package_name' => 'languages', 'package_path' => dirname( dirname( __FILE__ ) ).'/', 'service' => LIBERTY_SERVICE_TRANSLATION, - 'required_package'=> TRUE, -); -$gBitSystem->registerPackage( $registerHash ); + 'required_package'=> true, +]; +define( 'LANGUAGES_PKG_NAME', $pRegisterHash['package_name'] ); +define( 'LANGUAGES_PKG_URL', BIT_ROOT_URL . basename( $pRegisterHash['package_path'] ) . '/' ); +$gBitSystem->registerPackage( $pRegisterHash ); // ********** BABELFISH ************ if ($gBitSystem->isFeatureActive('babelfish') ) { - require_once(LANGUAGES_PKG_CLASS_PATH.'Babelfish.php'); - $gBitSmarty->assignByRef('babelfish_links', Babelfish::links( $gBitSystem->getConfig('language', 'en') )); + require_once LANGUAGES_PKG_CLASS_PATH.'Babelfish.php'; + $gBitSmarty->assign('babelfish_links', \Babelfish::links( $gBitSystem->getConfig('language', 'en') )); } if ($gBitSystem->isFeatureActive('babelfish_logo') ) { - require_once(LANGUAGES_PKG_CLASS_PATH.'Babelfish.php'); - $gBitSmarty->assign('babelfish_logo', Babelfish::logo($gBitLanguage->mLanguage)); + require_once LANGUAGES_PKG_CLASS_PATH.'Babelfish.php'; + $gBitSmarty->assign('babelfish_logo', \Babelfish::logo($gBitLanguage->mLanguage)); } if( $gBitSystem->isPackageActive( 'languages' ) && $gBitUser->hasPermission( 'p_languages_edit' ) ) { - $menuHash = array( + $menuHash = [ 'package_name' => LANGUAGES_PKG_NAME, 'index_url' => LANGUAGES_PKG_URL.'edit_languages.php', 'menu_template' => 'bitpackage:languages/menu_languages.tpl', - ); + ]; $gBitSystem->registerAppMenu( $menuHash ); } @@ -40,12 +47,12 @@ if( !empty( $_REQUEST['oe'] ) && !empty( $gBitLanguage->mLanguageList[$_REQUEST[ $gBitLanguage->setLanguage( $_REQUEST['oe'] ); } -$gBitSmarty->assignByRef('gBitLanguage', $gBitLanguage); +$gBitSmarty->assign('gBitLanguage', $gBitLanguage); $gBitSmarty->assign('bitlanguage', $gBitLanguage->mLanguage); if( !empty( $gLibertySystem ) && $gBitSystem->isFeatureActive( 'i18n_content_translation' ) ) { - require_once( LANGUAGES_PKG_CLASS_PATH.'LibertyTranslations.php' ); - $gLibertySystem->registerService( LIBERTY_SERVICE_TRANSLATION, LANGUAGES_PKG_NAME, array( + require_once LANGUAGES_PKG_CLASS_PATH.'LibertyTranslations.php'; + $gLibertySystem->registerService( LIBERTY_SERVICE_TRANSLATION, LANGUAGES_PKG_NAME, [ 'content_display_function' => 'translation_content_display', //'content_preview_function' => 'translation_content_edit', 'content_edit_function' => 'translation_content_edit', @@ -55,15 +62,14 @@ if( !empty( $gLibertySystem ) && $gBitSystem->isFeatureActive( 'i18n_content_tra //'content_load_sql_function' => 'translation_content_load', 'content_edit_mini_tpl' => 'bitpackage:languages/select_translations.tpl', 'content_icon_tpl' => 'bitpackage:languages/i18n_service_icons.tpl', - ) ); + ] ); if( !empty( $_POST['i18n']['translate'] ) ) { - if( @BitBase::verifyId( $_POST['i18n']['to_id'] ) ) { - $get = '&content_id='.$_POST['i18n']['to_id']; - } else { - $get = 'i18n[lang_code]='.$_POST['i18n']['to_id']; - } - if( @BitBase::verifyId( $_POST['i18n']['translation_id'] ) ) { + $get = BitBase::verifyId( $_POST['i18n']['to_id'] ) + ? '&content_id='.$_POST['i18n']['to_id'] + : 'i18n[lang_code]='.$_POST['i18n']['to_id']; + + if( BitBase::verifyId( $_POST['i18n']['translation_id'] ) ) { $get .= '&i18n[translation_id]='.$_POST['i18n']['translation_id']; } if( !empty( $_POST['i18n']['google'] ) ) { @@ -74,4 +80,3 @@ if( !empty( $gLibertySystem ) && $gBitSystem->isFeatureActive( 'i18n_content_tra die; } } -?> diff --git a/liberty_plugins/data.tr.php b/liberty_plugins/data.tr.php index 788390c..37bd810 100644..100755 --- a/liberty_plugins/data.tr.php +++ b/liberty_plugins/data.tr.php @@ -9,38 +9,41 @@ * @copyright Copyright (c) 2008, bitweaver.org */ +namespace Bitweaver\Liberty; +use Bitweaver\KernelTools; +use Bitweaver\Liberty\LibertyContent; + /** * Setup Code */ define( 'PLUGIN_GUID_DATATR', 'datatr' ); global $gLibertySystem; -$pluginParams = array ( +$pluginParams = [ 'tag' => 'tr', - 'auto_activate' => FALSE, - 'requires_pair' => TRUE, + 'auto_activate' => false, + 'requires_pair' => true, 'load_function' => 'data_tr', 'title' => 'Translate', 'help_page' => 'DataPluginTR', - 'description' => tra( "Use this plugin to mark strings for translation. You should only use this for common short strings, and not entire pages." ), + 'description' => KernelTools::tra( "Use this plugin to mark strings for translation. You should only use this for common short strings, and not entire pages." ), 'help_function' => 'data_tr_help', - 'syntax' => "{tr}", + 'syntax' => "", 'plugin_type' => DATA_PLUGIN -); +]; $gLibertySystem->registerPlugin( PLUGIN_GUID_DATATR, $pluginParams ); $gLibertySystem->registerDataTag( $pluginParams['tag'], PLUGIN_GUID_DATATR ); function data_tr_help() { - $help = tra( "Example: " ) . "{tr}string of text to be translated{/tr}"; + $help = KernelTools::tra( "Example: " ) . "string of text to be translated"; return $help; } function data_tr( $pData, $pParams, $pCommonObject ) { $transString = tra( $pData ); $parseHash = $pCommonObject->mInfo; - $parseHash['no_cache'] = TRUE; + $parseHash['no_cache'] = true; $parseHash['data'] = $transString; $parsedData = LibertyContent::parseDataHash( $parseHash ); $parsedData = preg_replace( '|<br\s*/?>$|', '', $parsedData ); return $parsedData; } -?> diff --git a/liberty_plugins/data.translated.php b/liberty_plugins/data.translated.php index 67de226..acbc351 100644..100755 --- a/liberty_plugins/data.translated.php +++ b/liberty_plugins/data.translated.php @@ -4,6 +4,9 @@ * @package liberty * @subpackage plugins_data */ +namespace Bitweaver\Liberty; +use Bitweaver\KernelTools; + // +----------------------------------------------------------------------+ // | Copyright (c) 2004, bitweaver.org // +----------------------------------------------------------------------+ @@ -25,32 +28,32 @@ */ define( 'PLUGIN_GUID_DATATRANSLATED', 'datatranslated' ); global $gLibertySystem; -$pluginParams = array ( +$pluginParams = [ 'tag' => 'TRANSLATED', - 'auto_activate' => FALSE, - 'requires_pair' => FALSE, + 'auto_activate' => false, + 'requires_pair' => false, 'load_function' => 'data_translated', 'title' => 'Translated - (not yet functional)', // Remove this line when the plugin becomes operational // 'title' => 'Translated', // and Remove the comment from the start of this line, and the comments Help Function below 'help_page' => 'DataPluginTranslated', - 'description' => tra("This plugin is used to create a link to a page that contains a translation. The link can be shown as an Icon for the country or as an abreviation for the language."), + 'description' => KernelTools::tra("This plugin is used to create a link to a page that contains a translation. The link can be shown as an Icon for the country or as an abreviation for the language."), 'help_function' => 'data_translated_help', 'syntax' => "{TRANSLATED page= lang= flag= }", 'plugin_type' => DATA_PLUGIN -); +]; $gLibertySystem->registerPlugin( PLUGIN_GUID_DATATRANSLATED, $pluginParams ); $gLibertySystem->registerDataTag( $pluginParams['tag'], PLUGIN_GUID_DATATRANSLATED ); // Help Function function data_translated_help() { - $back = tra("^__Parameter Syntax:__ ") . "~np~{TRANSLATED" . tra("(key=>value)}~/np~\n"); - $back.= tra("||__::key::__ | __::value::__ | __::Comments::__\n"); - $back.= "::page::" . tra(" | ::page name:: | __Manditory__ Is a valid url for the page which contains the translation. The page name can be in the formats [url] or ((wikiname)) or ((inter:interwiki))\n^"); - $back.= "::lang::" . tra(" | ::abreviation:: | __Manditory__ Is a 2 letter code that specifies the language to use. See the Abreviations given below.\n"); - $back.= "::flag::" . tra(" | ::flag name:: | __Optional__ Is an image file that can be used as the link. See the Flag Names given below\n"); + $back = KernelTools::tra("^__Parameter Syntax:__ ") . "~np~{TRANSLATED" . KernelTools::tra("(key=>value)}~/np~\n"); + $back.= KernelTools::tra("||__::key::__ | __::value::__ | __::Comments::__\n"); + $back.= "::page::" . KernelTools::tra(" | ::page name:: | __Manditory__ Is a valid url for the page which contains the translation. The page name can be in the formats [url] or ((wikiname)) or ((inter:interwiki))\n^"); + $back.= "::lang::" . KernelTools::tra(" | ::abreviation:: | __Manditory__ Is a 2 letter code that specifies the language to use. See the Abreviations given below.\n"); + $back.= "::flag::" . KernelTools::tra(" | ::flag name:: | __Optional__ Is an image file that can be used as the link. See the Flag Names given below\n"); // $back.= "^__Flag Names:__ ~pp~American_Samoa / Angola / Antigua / Argentina / Armenia / Australia / Austria / Bahamas / Bahrain / Bangladesh / Barbados / Belgium / Bermuda / Bolivia / Brazil / Brunei / Canada / Cayman_Islands / Chile / China / Colombia / Cook_Islands / Costa_Rica / Croatia / Cuba / Cyprus / Czech_Republic / Denmark / Dominican_Republic / Ecuador / Egypt / El_Salvador / Estonia / Federated_States_of_Micronesia / Fiji / Finland / France / French_Polynesia / Germany / Greece / Guam / Guatemala / Haiti / Honduras / Hungary / Iceland / India / Indonesia / Iran / Iraq / Ireland / Israel / Italy / Jamaica / Japan / Jordan / Kazakstan / Kenya / Kiribati / Kuwait / Latvia / Lebanon / Lithuania / Malawi / Malaysia / Malta / Marshall_Islands / Mauritius / Mexico / Morocco / Mozambique / Nauru / Nepal / Netherlands / New_Caledonia / New_Zealand / Nicaragua / Nigeria / Niue / Norway / Pakistan / Panama / Papua_New_Guinea / Paraguay / Peru / Phillippines / Poland / Portugal / Puerto_Rico / Quatar / Romania / Russia / Samoa / Saudi_Arabia / Singapore / Slovakia / Slovenia / Solomon_Islands / Somalia / South_Africa / South_Korea / Spain / Sri_Lanka / St_Vincent_Grenadines / Surinam / Sweden / Switzerland / Taiwan / Thailand / Tonga / Trinidad_Tobago / Turkey / Tuvalu / Ukraine / United_Arab_Emirates / United_Kingdom / United_States / Uruguay / Vanuatu / Venezuela / Wales / Yugoslavia / Zambia / Zimbabwe~/pp~\n^"; // $back.= tra("^ __Language Abreviations:__ Chinese (Simplified)=") . "__cn__" . tra(" / Chinese Traditional=") . "__tw__" . tra(" / Czech=") . "__cs__" . tra(" / Danish=") . "__da__" . tra(" / English=") . "__en__" . tra(" / French=") . "__fr__" . tra(" / German=") . "__de__" . tra(" / Hebrew=") . "__he__" . tra(" / Italian=") . "__it__" . tra(" / Japanese=") . "__ja__" . tra(" / Norwegian=") . "__no__" . tra(" / Polish=") . "__po__" . tra(" / Russian=") . "__ru__" . tra(" / Serbian=") . "__sr__" . tra(" / Slovak=") . "__sk__" . tra(" Spanish=") . "__es__" . tra(" Swedish=") . "__sv__.||^"; - $back.= tra("^__Example:__ ") . "~np~{TRANSLATED(page=>Home Page,lang=>fr,flag=>France)}~/np~^"; + $back.= KernelTools::tra("^__Example:__ ") . "~np~{TRANSLATED(page=>Home Page,lang=>fr,flag=>France)}~/np~^"; return $back; } @@ -112,5 +115,4 @@ function wikiplugin_translated($data, $params) { } return $back; } -*/ -?> +*/
\ No newline at end of file |
