You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by ma...@apache.org on 2014/04/27 20:03:50 UTC
svn commit: r1590434 -
/openoffice/ooo-site/trunk/content/download/test/download_droplist.js
Author: marcus
Date: Sun Apr 27 18:03:50 2014
New Revision: 1590434
URL: http://svn.apache.org/r1590434
Log:
Updated scripting for colored box with dropdown listboxes
Modified:
openoffice/ooo-site/trunk/content/download/test/download_droplist.js
Modified: openoffice/ooo-site/trunk/content/download/test/download_droplist.js
URL: http://svn.apache.org/viewvc/openoffice/ooo-site/trunk/content/download/test/download_droplist.js?rev=1590434&r1=1590433&r2=1590434&view=diff
==============================================================================
--- openoffice/ooo-site/trunk/content/download/test/download_droplist.js (original)
+++ openoffice/ooo-site/trunk/content/download/test/download_droplist.js Sun Apr 27 18:03:50 2014
@@ -1,52 +1,218 @@
/*
* Overview of all functions defined below
* ---------------------------------------
+ * function initVars ()
* function getLanguage ()
+ * function fillSelOS ()
+ * function fillSelLang ()
+ * function getSelOS ()
+ * function getSelLang ()
+ * function resetSel ()
* function hasMirrorLink ( rel_mode )
* function getLink ( rel_mode )
+ * function getLinkAlt ( rel_mode )
* function getPlatform ( rel_mode )
+ * function getFilesize ( rel_mode )
* function openItem ( itemid, uri )
*/
/*
* Define global variables
*/
-var LANG_ISO = ""; // The language as ISO code
-var LANG_ARRAY = ""; // This array contains all language specific data
-var RELEASE_MATRIX_PLATFORM_POS = -1; // The position of the platform in the release matrix array
-var RELEASE_MATRIX_PLATFORM = ""; // The platform in the release matrix array
-var UI_PLATFORM = ""; // The platform as readable string
-var URL_PLATFORM = ""; // The platform as part of the download URL
-var OLD_PLATFORM = false; // The browser platform is old (true) or not (false)
-var FILENAME = ""; // The complete filename of the download URL
-var FILESIZE = 0; // The filesize of the download file
-var EXTENSION = ""; // The file extension of the download URL
-var LINK = ""; // The complete download URL
-var CHECKSUM_KEYS = ""; // The KEYS file as download URL
-var CHECKSUM_ASC = ""; // The ASC file as download URL
-var CHECKSUM_MD5 = ""; // The MD5 file as download URL
-var CHECKSUM_SHA256 = ""; // The SHA256 file as download URL
-var SOURCEFORGE = false; // The download URL points to Soureforge
-var OTHER = false; // The download URL points to 'other.html'
-var ARCHIVE = false; // The download URL points to the ASF archive
-var ERROR = false; // The download URL is correct (false) or not (true)?
+function initVars() {
+ // Define variables without "var" to make them globally available
-function get_os() {
+ LANG_ISO = ""; // The language as ISO code
+ LANG_ARRAY = ""; // This array contains all language specific data
+ RELEASE_MATRIX_PLATFORM_POS_FULL = -1; // The position of the platform in the release matrix array
+ RELEASE_MATRIX_PLATFORM_POS_LP = -1; // The position of the platform in the release matrix array
+ RELEASE_MATRIX_PLATFORM = ""; // The platform in the release matrix array
+ UI_PLATFORM = ""; // The platform as readable string
+ URL_PLATFORM = ""; // The platform as part of the download URL
+ OLD_PLATFORM = false; // The browser platform is old (true) or not (false)
+ FILENAME_FULL = ""; // The complete filename of the download URL (for full installation)
+ FILENAME_LP = ""; // The complete filename of the download URL (for language pack)
+ FILESIZE_FULL = 0; // The filesize of the download file (for full installation)
+ FILESIZE_LP = 0; // The filesize of the download file (for language pack)
+ EXTENSION = ""; // The file extension of the download URL
+// TYPE = ""; // The installation type
+ LINK = ""; // The complete download URL
+ LINK_FULL = ""; // The complete download URL (for full installation)
+ LINK_LP = ""; // The complete download URL (for language pack)
+ CHECKSUM_KEYS = ""; // The KEYS file as download URL
+ CHECKSUM_ASC_FULL = ""; // The ASC file as download URL (for full installation)
+ CHECKSUM_MD5_FULL = ""; // The MD5 file as download URL (for full installation)
+ CHECKSUM_SHA256_FULL = ""; // The SHA256 file as download URL (for full installation)
+ CHECKSUM_ASC_LP = ""; // The ASC file as download URL (for language pack)
+ CHECKSUM_MD5_LP = ""; // The MD5 file as download URL (for language pack)
+ CHECKSUM_SHA256_LP = ""; // The SHA256 file as download URL (for language pack)
+ SOURCEFORGE = false; // The download URL points to Soureforge
+ OTHER = false; // The download URL points to 'other.html'
+ ARCHIVE = false; // The download URL points to the ASF archive
+ ERROR = false; // The download URL is correct (false) or not (true)?
+}
+
+/*
+ * Get array and ISO code for language
+ * Depends on array-list and $NL_LANGUAGE
+ */
+function getLanguage() {
+ var language = "";
+
+ if ( NL_LANGUAGE != "" )
+ language = NL_LANGUAGE;
+ else if ( LANG_ISO != "" )
+ language = LANG_ISO;
+ else if ( navigator.language )
+ language = navigator.language;
+ else if ( navigator.userLanguage )
+ language = navigator.userLanguage;
+ else if ( navigator.browserLanguage )
+ language = navigator.browserLanguage;
+ else if ( navigator.systemLanguage )
+ language = navigator.systemLanguage;
+
+ // Convert "en" to "en-US" as well as setting it as fall-back language
+ if ( !language || language == "" || language == "null" || language == "en" )
+ language = "en-US";
+ if ( language == "pt" )
+ language = "pt-PT";
+
+ // Konqueror uses '_' where other browsers use '-'
+ if ( language.indexOf( "_" ) != -1 )
+ language = language.split( "_" ).join( "-" );
+
+ language = language.toLowerCase();
+ var languageCode = language.split( "-" )[ 0 ];
+ var regionCode = language.split( "-" )[ 1 ];
+ var thisLanguageSet = languages[ languageCode ];
+
+ if ( thisLanguageSet == null ) {
+ // Language code not found inside array
+ language = "en-US";
+ languageCode = "en";
+ regionCode = "us";
+ thisLanguageSet = languages[ languageCode ];
+ }
+
+ if ( regionCode != null ) {
+ // Fix for Portuguese pt-PT downloads named only pt without region code!
+ if ( regionCode == "pt" && languageCode == "pt" )
+ language = languageCode;
+
+ // If an additional region code was found
+ if ( thisLanguageSet[ regionCode ] != null ) {
+ // Then choose langCode-regionCode
+ language = languageCode + "-" + regionCode.toUpperCase();
+ thisLanguage = thisLanguageSet[ regionCode ];
+ } else {
+ // Choose the default langCode
+ thisLanguage = thisLanguageSet[ "-" ];
+ if ( languageCode == "en" ) {
+ // Special case, default is en-US for en-XX
+ language = "en-US";
+ regionCode = "us";
+ thisLanguageSet = languages[ languageCode ];
+ thisLanguage = thisLanguageSet[ regionCode ];
+ } else {
+ language = languageCode;
+ }
+ }
+ } else {
+ // Choose the default for none given region code
+ thisLanguage = thisLanguageSet[ "-" ];
+ }
+
+ LANG_ISO = language;
+ LANG_ARRAY = thisLanguage;
+}
+
+/*
+ * Set values into the <select> element for OS (drop-down-box)
+ * Depends on array-lists
+ */
+function fillSelOS() {
+ var sel_os = document.getElementById( "os" );
+ var i = 0;
+ var option = "";
+
+ for( i = 0; i < SEL_OS.length; i = i + 4 ) { // fill the <select> element until all OS's are used
+ option = document.createElement( "option" );
+ option.value = SEL_OS[ i ]; // assign the OS abbreviation
+ option.text = SEL_OS[ i + 1 ]; // assign the UI name
+ sel_os.appendChild( option );
+ }
+ sel_os.selectedIndex = 0; // set the first option as default
+
+ fillSelLang();
+
+ return;
+}
+
+/*
+ * Set values into the <select> element for language (drop-down-box)
+ * Depends on array-lists
+ */
+function fillSelLang() {
+ var sel_lang = document.getElementById( "lang" );
+ var i = 0;
+ var option = "";
+
+ for( i = 0; i < SEL_LANG.length; i = i + 2 ) { // fill the <select> element until all languages are used
+ opt = document.createElement('option');
+ opt.value = SEL_LANG[i]; // assign the language ISO code
+ opt.text = SEL_LANG[i + 1]; // assign the UI name like "English (Native) (ISO code)"
+ sel_lang.appendChild(opt);
+ }
+ sel_lang.selectedIndex = 0; // set the first option as default
+
+/*
+ alert( languages[0]["ast"] + " " + SEL_LANG.length );
+
+ for( i = 0; i < SEL_LANG.length; i = i + 2 ) { // fill the <select> element until all languages are used
+ opt = document.createElement('option');
+ opt.value = languages[i]; // assign the language ISO code
+ opt.text = languages[i + 1] + " (" + languages[i + 2] + ")"; // assign the UI name like "English (Native)"
+ sel_lang.appendChild(opt);
+ }
+ sel_lang.selectedIndex = 0; // set the first option as default
+*/
+ return;
+}
+
+/*
+ * Get values from the <select> element for OS (drop-down-box)
+ * Depends on chosen OS
+ */
+function getSelOS() {
var os_value = document.download.os.options[document.download.os.selectedIndex].value;
+ var i = 0;
+
+ if ( os_value == "e1" || os_value == "e2" ) {
+ UI_PLATFORM = "";
+ URL_PLATFORM = "";
+ EXTENSION = "";
+ return;
+ }
+
+ for( i = 0; i < SEL_OS.length; i = i + 4 ) {
+ if ( SEL_OS[ i ] == os_value ) {
+ UI_PLATFORM = SEL_OS[ i + 1 ];
+ URL_PLATFORM = SEL_OS[ i + 2 ];
+ EXTENSION = SEL_OS[ i + 3 ];
+ break;
+ }
+ }
+/*
switch ( os_value ) {
case "win32":
UI_PLATFORM = "Windows (EXE)";
URL_PLATFORM = "Win_x86_install";
EXTENSION = ".exe";
break;
- case "lnx32r":
- UI_PLATFORM = "Linux 32-bit (RPM)";
- URL_PLATFORM = "Linux_x86_install-rpm";
- EXTENSION = ".tar.gz";
- break;
- case "lnx32d":
- UI_PLATFORM = "Linux Debian 32-bit (DEB)";
- URL_PLATFORM = "Linux_x86_install-deb";
+ case "lnx64d":
+ UI_PLATFORM = "Linux Debian 64-bit (DEB)";
+ URL_PLATFORM = "Linux_x86-64_install-deb";
EXTENSION = ".tar.gz";
break;
case "lnx64r":
@@ -54,149 +220,829 @@ function get_os() {
URL_PLATFORM = "Linux_x86-64_install-rpm";
EXTENSION = ".tar.gz";
break;
- case "lnx64d":
- UI_PLATFORM = "Linux Debian 64-bit (DEB)";
- URL_PLATFORM = "Linux_x86-64_install-deb";
+ case "lnx32d":
+ UI_PLATFORM = "Linux Debian 32-bit (DEB)";
+ URL_PLATFORM = "Linux_x86_install-deb";
EXTENSION = ".tar.gz";
break;
- case "mac32":
- UI_PLATFORM = "OS X 64-bit Intel (DMG)";
- URL_PLATFORM = "MacOSx86_install";
- EXTENSION = ".dmg";
+ case "lnx32r":
+ UI_PLATFORM = "Linux 32-bit (RPM)";
+ URL_PLATFORM = "Linux_x86_install-rpm";
+ EXTENSION = ".tar.gz";
break;
case "mac64":
UI_PLATFORM = "OS X 64-bit Intel (DMG)";
URL_PLATFORM = "MacOS_x86-64_install";
EXTENSION = ".dmg";
break;
+ case "mac32":
+ UI_PLATFORM = "OS X 32-bit Intel (DMG)";
+ URL_PLATFORM = "MacOS_x86_install";
+ EXTENSION = ".dmg";
+ break;
default:
UI_PLATFORM = "";
URL_PLATFORM = "";
EXTENSION = "";
}
+*/
+/*
+ alert ( ""
+ + "i: " + i + "\n"
+ + "SEL_OS.length: " + SEL_OS.length + "\n"
+ + "os_value: " + os_value + "\n"
+ + "SEL_OS[ i ]: " + SEL_OS[ i ] + "\n"
+ + "UI_PLATFORM: " + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + URL_PLATFORM + "\n"
+ + "EXTENSION: " + EXTENSION + "\n"
+ + "" );
+*/
return;
}
-function get_lang() {
+/*
+ * Get values from the <select> element for language (drop-down-box)
+ * Depends on chosen language
+ */
+function getSelLang() {
var lang_value = document.download.lang.options[document.download.lang.selectedIndex].value;
- switch ( lang_value ) {
- case "en-US":
- LANG_ISO = "en-US";
- break;
- case "de":
- LANG_ISO = "de";
- break;
- case "fr":
- LANG_ISO = "fr";
- break;
- case "it":
- LANG_ISO = "it";
- break;
- case "es":
- LANG_ISO = "es";
- break;
- case "nl":
- LANG_ISO = "nl";
+ var i = 0;
+
+ if ( lang_value == "e1" || lang_value == "e2" ) {
+ LANG_ISO = "";
+ return;
+ }
+ for( i = 0; i < SEL_LANG.length; i = i + 2 ) {
+ if ( SEL_LANG[ i ] == lang_value ) {
+ LANG_ISO = lang_value;
break;
- default:
- LANG_ISO = "";
+ }
}
+/*
+ switch ( lang_value ) {
+ case "ast": LANG_ISO = "ast"; break;
+ case "bg": LANG_ISO = "bg"; break;
+ case "cs": LANG_ISO = "cs"; break;
+ case "da": LANG_ISO = "da"; break;
+ case "de": LANG_ISO = "de"; break;
+ case "el": LANG_ISO = "el"; break;
+ case "en-GB": LANG_ISO = "en-GB"; break;
+ case "en-US": LANG_ISO = "en-US"; break;
+ case "es": LANG_ISO = "es"; break;
+ case "eu": LANG_ISO = "eu"; break;
+ case "fi": LANG_ISO = "fi"; break;
+ case "fr": LANG_ISO = "fr"; break;
+ case "gd": LANG_ISO = "gd"; break;
+ case "hi": LANG_ISO = "hi"; break;
+ case "hu": LANG_ISO = "hu"; break;
+ case "it": LANG_ISO = "it"; break;
+ case "ja": LANG_ISO = "ja"; break;
+ case "km": LANG_ISO = "km"; break;
+ case "ko": LANG_ISO = "ko"; break;
+ case "lt": LANG_ISO = "lt"; break;
+ case "nb": LANG_ISO = "nb"; break;
+ case "nl": LANG_ISO = "nl"; break;
+ case "pl": LANG_ISO = "pl"; break;
+ case "pt-BR": LANG_ISO = "pt-BR"; break;
+ case "pt-PT": LANG_ISO = "pt-PT"; break;
+ case "ru": LANG_ISO = "ru"; break;
+ case "sk": LANG_ISO = "sk"; break;
+ case "sl": LANG_ISO = "sl"; break;
+ case "sr": LANG_ISO = "sr"; break;
+ case "sv": LANG_ISO = "sv"; break;
+ case "ta": LANG_ISO = "ta"; break;
+ case "th": LANG_ISO = "th"; break;
+ case "tr": LANG_ISO = "tr"; break;
+ case "vi": LANG_ISO = "vi"; break;
+ case "zh-CN": LANG_ISO = "zh-CN"; break;
+ case "zh-TW": LANG_ISO = "zh-TW"; break;
+ default: LANG_ISO = "";
+ }
+*/
+/*
+ alert ( ""
+ + "i: " + i + "\n"
+ + "SEL_LANG.length: " + SEL_LANG.length + "\n"
+ + "lang_value: " + lang_value + "\n"
+ + "SEL_LANG[ i ]: " + SEL_LANG[ i ] + "\n"
+ + "LANG_ISO: " + LANG_ISO + "\n"
+ + "" );
+*/
return;
}
-function get_type() {
+/*
+ * Get values from the <select> element for type (drop-down-box)
+ * Depends on chosen type
+ */
+function getSelType() {
var type_value = document.download.type.options[document.download.type.selectedIndex].value;
+
switch ( type_value ) {
case "full":
- TYPE = "install";
// If install type == 'install', then exchange it in the 'URL_PLATFORM' variable
- URL_PLATFORM = URL_PLATFORM.replace(/langpack/g, TYPE);
+ TYPE = "install";
+ URL_PLATFORM = URL_PLATFORM.replace(/langpack/g, TYPE);
break;
case "lp":
- TYPE = "langpack";
// If install type == 'langpack', then exchange it in the 'URL_PLATFORM' variable
- URL_PLATFORM = URL_PLATFORM.replace(/install/g, TYPE);
+ TYPE = "langpack";
+ URL_PLATFORM = URL_PLATFORM.replace(/install/g, TYPE);
break;
default:
TYPE = "";
}
-
- getFilesize( 0 );
- getLink();
-
+/*
alert ( ""
- + "LANG_ISO: " + "\t\t\t\t\t" + LANG_ISO + "\n"
- + "UI_PLATFORM: " + "\t\t\t\t\t" + UI_PLATFORM + "\n"
- + "URL_PLATFORM: " + "\t\t\t\t\t" + URL_PLATFORM + "\n"
- + "EXTENSION: " + "\t\t\t\t\t" + EXTENSION + "\n"
- + "TYPE: " + "\t\t\t\t\t\t" + TYPE + "\n"
- + "RELEASE_MATRIX_PLATFORM_POS: " + "\t" + RELEASE_MATRIX_PLATFORM_POS + "\n"
- + "FILENAME: " + "\t\t\t\t\t\t" + FILENAME + "\n"
- + "BASE_URL: " + "\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
- + "LINK: " + "\t\t\t\t\t\t" + LINK + "\n"
+ + "type_value: " + lang_value + "\n"
+ + "URL_PLATFORM: " + URL_PLATFORM + "\n"
+// + "TYPE: " + TYPE + "\n"
+ "" );
-
+*/
return;
}
/*
+ * Reset all 3 select elements (drop-down-boxes)
+ */
+function resetSel() {
+ var elements = document.getElementsByTagName( "select" );
+
+ for ( var i = 0; i < elements.length; i++ ) {
+ elements[i].selectedIndex = 0;
+ }
+
+ document.getElementById( "dl_full_link" ).href = "#";
+ document.getElementById( "dl_full_link" ).text = "Choose an OS, then the language";
+ document.getElementById( "dl_full_link" ).title = "Choose an OS, then the language";
+ document.getElementById( "dl_lp_link" ).href = "";
+ document.getElementById( "dl_lp_link" ).text = "";
+ document.getElementById( "dl_lp_link" ).title = "";
+ document.getElementById( "dl_help" ).href = "";
+ document.getElementById( "dl_help" ).text = "";
+ document.getElementById( "dl_help" ).title = "";
+ document.getElementById( "dl_full_chk_headline" ).text = "";
+ document.getElementById( "space1" ).text = "";
+ document.getElementById( "space2" ).text = "";
+ document.getElementById( "space3" ).text = "";
+ document.getElementById( "space4" ).text = "";
+ document.getElementById( "space5" ).text = "";
+ document.getElementById( "space6" ).text = "";
+ document.getElementById( "space7" ).text = "";
+ document.getElementById( "dl_full_chk_keys" ).href = "";
+ document.getElementById( "dl_full_chk_keys" ).text = "";
+ document.getElementById( "dl_full_chk_keys" ).title = "";
+ document.getElementById( "dl_full_chk_asc" ).href = "";
+ document.getElementById( "dl_full_chk_asc" ).text = "";
+ document.getElementById( "dl_full_chk_asc" ).title = "";
+ document.getElementById( "dl_full_chk_md5" ).href = "";
+ document.getElementById( "dl_full_chk_md5" ).text = "";
+ document.getElementById( "dl_full_chk_md5" ).title = "";
+ document.getElementById( "dl_full_chk_sha256" ).href = "";
+ document.getElementById( "dl_full_chk_sha256" ).text = "";
+ document.getElementById( "dl_full_chk_sha256" ).title = "";
+ document.getElementById( "dl_lp_chk_headline" ).text = "";
+ document.getElementById( "dl_lp_chk_keys" ).href = "";
+ document.getElementById( "dl_lp_chk_keys" ).text = "";
+ document.getElementById( "dl_lp_chk_keys" ).title = "";
+ document.getElementById( "dl_lp_chk_asc" ).href = "";
+ document.getElementById( "dl_lp_chk_asc" ).text = "";
+ document.getElementById( "dl_lp_chk_asc" ).title = "";
+ document.getElementById( "dl_lp_chk_md5" ).href = "";
+ document.getElementById( "dl_lp_chk_md5" ).text = "";
+ document.getElementById( "dl_lp_chk_md5" ).title = "";
+ document.getElementById( "dl_lp_chk_sha256" ).href = "";
+ document.getElementById( "dl_lp_chk_sha256" ).text = "";
+ document.getElementById( "dl_lp_chk_sha256" ).title = "";
+ document.getElementById( "dl_chk_verify" ).href = "";
+ document.getElementById( "dl_chk_verify" ).text = "";
+ document.getElementById( "dl_chk_verify" ).title = "";
+}
+
+/*
+ * Get flag for mirror link
+ * Depends on array-list
+ */
+function hasMirrorLink( rel_mode ) {
+ if ( rel_mode == 0 ) {
+ // Release mode
+ // First check if the Beta release languages (not available as current stable release !) are set in browser
+ if ( LANG_ISO == "bg" || LANG_ISO == "da" || LANG_ISO == "hi" || LANG_ISO == "nb" || LANG_ISO == "th" ) {
+ SOURCEFORGE = false;
+ OTHER = true;
+ ARCHIVE = false;
+ ERROR = true;
+ return false;
+ }
+ // Check the flag in "languages.js", 'y' -> provide download link, 'n' -> redirect to alternative webpage
+ if ( LANG_ARRAY[ 3 ] == 'y' ) {
+ return true;
+ } else {
+ ERROR = true;
+ return false;
+ }
+ } else {
+ // Beta release mode
+ // Check the flag in "languages.js", 'y' -> provide download link, 'n' -> redirect to alternative webpage
+ if ( LANG_ARRAY[ 3 ] == 'y' ) {
+ return true;
+ } else {
+ ERROR = true;
+ return false;
+ }
+ }
+/*
+ if ( LANG_ARRAY[ 3 ] == 'y' )
+ return true;
+ else
+ ERROR = true;
+ return false;
+*/
+}
+
+/*
* Get link to mirror system for download file and checksum file
* Depends on array-list
*/
-function getLink() {
- var chk_link = "";
+function getLink( rel_mode ) {
+ var chk_link_full = "";
- if ( LANG_ISO != "" && RELEASE_MATRIX_PLATFORM_POS != "" ) {
+ // reset all global variables
+ initVars();
- // If platform was recognized, assemble the filenames for download and checksums
+ // If no release mode was given, assume it's about the stable release
+ if ( rel_mode == undefined )
+ rel_mode = 0;
+
+ getLanguage();
+ getPlatform( rel_mode );
+ if ( hasMirrorLink( rel_mode ) ) {
+ getFilesize( rel_mode );
+ }
+ /*
+ if ( NL_LANGUAGE == "" )
+ NL_LANGUAGE = LANG_ISO;
+ */
+ /*
+ Trim timestamp from version, required for RC
+ if ( version.indexOf( "_" ) > -1 )
+ version = version.split( "_" )[0];
+ */
+
+ // If language is supported, then provide a download link.
+ if ( hasMirrorLink( rel_mode ) ) {
+ // Release mode
+ if ( rel_mode == 0 ) {
+ // If platform is too old, then provide a general download link to the archive.
+ if ( OLD_PLATFORM ) {
+ // If platform is Mac OS X <=10.6, then provide a download link with previous AOO version.
+/*
+ if ( UI_PLATFORM == "Mac OS X (10.6 or older)" ) {
- // FILENAME = "Apache_OpenOffice_" + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO;
- // FILENAME = FILENAME + EXTENSION;
-
- // Assign the file name (column 3) from the release matrix of language and platform
- FILENAME = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ][ 3 ];
-
- // LINK = SOURCEFORGE_BASE_URL + LANG_ISO + "/Apache_OpenOffice_" + VERSION + "_";
- // LINK = LINK + URL_PLATFORM + "_" + LANG_ISO + EXTENSION + "/download";
- LINK = SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME + "/download";
-
- // chk_link = APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
- // chk_link = chk_link + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO + EXTENSION;
- chk_link = APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO + "/" + FILENAME;
-
- CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
- CHECKSUM_ASC = chk_link + ".asc";
- CHECKSUM_MD5 = chk_link + ".md5";
- CHECKSUM_SHA256 = chk_link + ".sha256";
-
- /*
- // Used for debugging
- LINK = PEOPLE_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
- LINK = LINK + "/Apache_OpenOffice_" + "_" + LANG_ISO + EXTENSION;
- chk_link = PEOPLE_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_" + VERSION;
- chk_link = chk_link + "_" + URL_PLATFORM + "_" + LANG_ISO + EXTENSION;
- */
+ FILENAME_FULL = "Apache_OpenOffice_" + PRE_VERSION + "_" + URL_PLATFORM;
+ FILENAME_FULL = FILENAME_FULL + "_" + LANG_ISO + EXTENSION;
+ LINK_FULL = SOURCEFORGE_PREVIOUS_URL + LANG_ISO + "/" + FILENAME_FULL;
+ LINK_FULL = LINK_FULL + "/download";
+
+ chk_link_full = APACHE_DIST_PREVIOUS_URL + "/binaries/" + LANG_ISO + "/";
+ chk_link_full = chk_link_full + FILENAME_FULL;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = chk_link_full + ".asc";
+ CHECKSUM_MD5_FULL = chk_link_full + ".md5";
+ CHECKSUM_SHA256_FULL = chk_link_full + ".sha256";
+
+ SOURCEFORGE = false;
+ OTHER = false;
+ ARCHIVE = true;
+ ERROR = true;
+ return LINK_FULL;
+ }
+*/
+ // If platform is Solaris, FreeBSD or OS/2,
+ // then provide a download link to the porting webpage.
+ if ( UI_PLATFORM == "Solaris x86 (PKG)" ||
+ UI_PLATFORM == "Solaris SPARC (PKG)" ||
+ UI_PLATFORM == "FreeBSD (PKG)" ||
+ UI_PLATFORM == "OS/2" ) {
+
+ LINK_FULL = "http://www.openoffice.org/porting/index.html";
+
+ SOURCEFORGE = false;
+ OTHER = true;
+ ARCHIVE = false;
+ ERROR = true;
+ return LINK_FULL;
+ }
+
+ LINK_FULL = "http://archive.apache.org/dist/openoffice/";
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = "http://archive.apache.org/dist/openoffice/";
+ CHECKSUM_MD5_FULL = "http://archive.apache.org/dist/openoffice/";
+ CHECKSUM_SHA256_FULL = "http://archive.apache.org/dist/openoffice/";
+
+ SOURCEFORGE = false;
+ OTHER = true;
+ ARCHIVE = false;
+ ERROR = true;
+ return LINK_FULL;
+ }
+ // If no platform was recognized, then provide a general download link to the "other.html" webpage.
+ if ( URL_PLATFORM == "" ) {
+ // If no UI string was set, then show it to the user.
+ if ( UI_PLATFORM == "" ) {
+ UI_PLATFORM = "unknown platform/OS";
+ }
+
+ LINK_FULL = "http://www.openoffice.org/download/other.html";
+ SOURCEFORGE = false;
+ OTHER = true;
+ ARCHIVE = false;
+ ERROR = true;
+ return LINK_FULL;
+ }
+
+ // If platform was recognized, assemble the filenames for download and checksums
+
+ // FILENAME_FULL = "Apache_OpenOffice_" + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO;
+ // FILENAME_FULL = FILENAME_FULL + EXTENSION;
+
+ // Assign the file name (column 3) from the release matrix of language and platform
+ FILENAME_FULL = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ][ 3 ];
+
+ // LINK_FULL = SOURCEFORGE_BASE_URL + LANG_ISO + "/Apache_OpenOffice_" + VERSION + "_";
+ // LINK_FULL = LINK_FULL + URL_PLATFORM + "_" + LANG_ISO + EXTENSION + "/download";
+ LINK_FULL = SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME_FULL + "/download";
+
+ // chk_link = APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
+ // chk_link = chk_link + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO + EXTENSION;
+ chk_link_full = APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO + "/" + FILENAME_FULL;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = chk_link_full + ".asc";
+ CHECKSUM_MD5_FULL = chk_link_full + ".md5";
+ CHECKSUM_SHA256_FULL = chk_link_full + ".sha256";
+
+ /*
+ // Used for debugging
+ LINK_FULL = PEOPLE_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
+ LINK_FULL = LINK_FULL + "/Apache_OpenOffice_" + "_" + LANG_ISO + EXTENSION;
+ chk_link = PEOPLE_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
+ chk_link = chk_link + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO + EXTENSION;
+ */
+
+ SOURCEFORGE = true;
+ OTHER = false;
+ ARCHIVE = false;
+ ERROR = false;
+ return LINK_FULL;
+ } else {
+ // Beta release mode
+ // If platform is too old, then provide a general download link to the archive.
+ if ( OLD_PLATFORM ) {
+ // If platform is Mac OS X <=10.6, then provide a download link with previous AOO version.
+ if ( UI_PLATFORM == "Mac OS X (10.6 or older)" ) {
+
+ FILENAME_FULL = "Apache_OpenOffice_" + PRE_VERSION + "_" + URL_PLATFORM;
+ FILENAME_FULL = FILENAME_FULL + "_" + LANG_ISO + EXTENSION;
+ LINK_FULL = SOURCEFORGE_PREVIOUS_URL + LANG_ISO + "/" + FILENAME_FULL;
+ LINK_FULL = LINK_FULL + "/download";
+
+ chk_link_full = APACHE_DIST_PREVIOUS_URL + "/binaries/" + LANG_ISO + "/";
+ chk_link_full = chk_link_full + FILENAME_FULL;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = chk_link_full + ".asc";
+ CHECKSUM_MD5_FULL = chk_link_full + ".md5";
+ CHECKSUM_SHA256_FULL = chk_link_full + ".sha256";
+
+ SOURCEFORGE = false;
+ OTHER = false;
+ ARCHIVE = true;
+ ERROR = true;
+ return LINK_FULL;
+ }
+
+ LINK_FULL = "http://www.openoffice.org/download/all_beta.html";
+ SOURCEFORGE = false;
+ OTHER = true;
+ ARCHIVE = false;
+ ERROR = true;
+ return LINK_FULL;
+ }
+ // Assign the file name (column 3) from the release matrix of language and platform
+ FILENAME_FULL = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ][ 3 ];
+
+ // LINK_FULL = BETA_SOURCEFORGE_BASE_URL + LANG_ISO + "/Apache_OpenOffice_Beta_";
+ // LINK_FULL = LINK_FULL + VERSION + "_" + URL_PLATFORM + "_" + LANG_ISO + EXTENSION;
+ // LINK_FULL = LINK_FULL + "/download";
+ LINK_FULL = BETA_SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME_FULL + "/download";
+
+ // chk_link = BETA_APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO;
+ // chk_link = chk_link + "/Apache_OpenOffice_Beta_" + VERSION + "_" + URL_PLATFORM + "_";
+ // chk_link = chk_link + LANG_ISO + EXTENSION;
+ chk_link_full = BETA_APACHE_DIST_BASE_URL + "/binaries/" + LANG_ISO + "/" + FILENAME_FULL;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = chk_link_full + ".asc";
+ CHECKSUM_MD5_FULL = chk_link_full + ".md5";
+ CHECKSUM_SHA256_FULL = chk_link_full + ".sha256";
+ }
SOURCEFORGE = true;
OTHER = false;
ARCHIVE = false;
ERROR = false;
+ return LINK_FULL;
+ } else {
+ // Release mode
+ if ( rel_mode == 0 ) {
+ // If language is not supported, then provide the link from the Native Language (NL) group.
+ LINK_FULL = LANG_ARRAY[ 4 ];
+ } else {
+ // Beta release mode
+ // If language is not supported, then provide the "all_beta.html" as download link.
+ LINK_FULL = "http://www.openoffice.org/download/all_beta.html";
+ }
+
+ ERROR = true;
+ return LINK_FULL;
+ }
+}
+
+/*
+ * Get link to mirror system for download file and checksum file
+ * Depends on chosen OS, language and type
+ */
+function getLinkAlt( rel_mode ) {
+ var chk_link_full = "";
+ var chk_link_lp = "";
+
+ // Delete any previously set string
+ CHECKSUM_ASC_FULL = "";
+ CHECKSUM_MD5_FULL = "";
+ CHECKSUM_SHA256_FULL = "";
+
+ // reset all global variables
+ initVars();
+/*
+ alert ( ""
+ + "getLinkAlt()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
+ getSelOS();
+/*
+ alert ( ""
+ + "getLinkAlt()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
+ getSelLang();
+/*
+ alert ( ""
+ + "getLinkAlt()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
+ if ( URL_PLATFORM == "" || LANG_ISO == "" ) {
+ // When no OS or language was chosen, let the user choose again.
+
+ resetSel();
+ document.getElementById( "dl_full_link" ).href = "#";
+ document.getElementById( "dl_full_link" ).text = "Please first choose an OS";
+ document.getElementById( "dl_full_link" ).title = "Please first choose an OS";
+
+ return;
}
- return LINK;
+ getLanguage();
+ getFilesize( rel_mode );
+
+// if ( URL_PLATFORM != "" && LANG_ISO != "" && TYPE != "" ) {
+ if ( URL_PLATFORM != "" && LANG_ISO != "" ) {
+
+ if ( LANG_ISO != "" && RELEASE_MATRIX_PLATFORM_POS_FULL != "" ) {
+ // If platform was recognized, assemble the filenames for download and checksums.
+
+ // Assign the file name (column 3) from the release matrix of language and platform.
+ FILENAME_FULL = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ][ 3 ];
+ FILENAME_LP = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_LP ][ 3 ];
+ LINK_FULL = SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME_FULL + "/download";
+ LINK_LP = SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME_LP + "/download";
+
+ /*
+ // Used for debugging
+ LINK_FULL = PEOPLE_BASE_URL + "/binaries/" + LANG_ISO + "/Apache_OpenOffice_";
+ LINK_FULL = LINK_FULL + "/Apache_OpenOffice_" + "_" + LANG_ISO + EXTENSION;
+ */
+
+ chk_link_full = APACHE_DIST_PREVIOUS_URL + "/binaries/" + LANG_ISO + "/";
+ chk_link_full = chk_link_full + FILENAME_FULL;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_FULL = chk_link_full + ".asc";
+ CHECKSUM_MD5_FULL = chk_link_full + ".md5";
+ CHECKSUM_SHA256_FULL = chk_link_full + ".sha256";
+
+ chk_link_lp = APACHE_DIST_PREVIOUS_URL + "/binaries/" + LANG_ISO + "/";
+ chk_link_lp = chk_link_lp + FILENAME_LP;
+
+ CHECKSUM_KEYS = "https://people.apache.org/keys/group/openoffice.asc";
+ CHECKSUM_ASC_LP = chk_link_lp + ".asc";
+ CHECKSUM_MD5_LP = chk_link_lp + ".md5";
+ CHECKSUM_SHA256_LP = chk_link_lp + ".sha256";
+
+ SOURCEFORGE = true;
+ OTHER = false;
+ ARCHIVE = false;
+ ERROR = false;
+ }
+
+ document.getElementById( "dl_full_link" ).href = LINK_FULL;
+ document.getElementById( "dl_full_link" ).text = "Download full install";
+ document.getElementById( "dl_full_link" ).title = LINK_FULL;
+ document.getElementById( "dl_lp_link" ).href = LINK_LP;
+ document.getElementById( "dl_lp_link" ).text = "Download language pack";
+ document.getElementById( "dl_lp_link" ).title = LINK_LP;
+ document.getElementById( "dl_help" ).href = "http://www.openoffice.org/download/other.html#aoo";
+ document.getElementById( "dl_help" ).text = "What is the difference?";
+ document.getElementById( "dl_help" ).title = "What is the difference?";
+ document.getElementById( "dl_full_chk_headline" ).text = "Signatures and hashes for full installation : ";
+ document.getElementById( "space1" ).text = " , ";
+ document.getElementById( "space2" ).text = " , ";
+ document.getElementById( "space3" ).text = " , ";
+ document.getElementById( "space4" ).text = " , ";
+ document.getElementById( "space5" ).text = " , ";
+ document.getElementById( "space6" ).text = " , ";
+ document.getElementById( "space7" ).text = " , ";
+ document.getElementById( "dl_full_chk_keys" ).href = CHECKSUM_KEYS;
+ document.getElementById( "dl_full_chk_keys" ).text = "KEYS";
+ document.getElementById( "dl_full_chk_keys" ).title = "KEYS signature";
+ document.getElementById( "dl_full_chk_asc" ).href = CHECKSUM_ASC_FULL;
+ document.getElementById( "dl_full_chk_asc" ).text = "ASC";
+ document.getElementById( "dl_full_chk_asc" ).title = "ASC signature";
+ document.getElementById( "dl_full_chk_md5" ).href = CHECKSUM_MD5_FULL;
+ document.getElementById( "dl_full_chk_md5" ).text = "MD5";
+ document.getElementById( "dl_full_chk_md5" ).title = "MD5 hash";
+ document.getElementById( "dl_full_chk_sha256" ).href = CHECKSUM_SHA256_FULL;
+ document.getElementById( "dl_full_chk_sha256" ).text = "SHA256";
+ document.getElementById( "dl_full_chk_sha256" ).title = "SHA256 hash";
+ document.getElementById( "dl_lp_chk_headline" ).text = "Signatures and hashes for language pack: ";
+ document.getElementById( "dl_lp_chk_keys" ).href = CHECKSUM_KEYS;
+ document.getElementById( "dl_lp_chk_keys" ).text = "KEYS";
+ document.getElementById( "dl_lp_chk_keys" ).title = "KEYS signature";
+ document.getElementById( "dl_lp_chk_asc" ).href = CHECKSUM_ASC_FULL;
+ document.getElementById( "dl_lp_chk_asc" ).text = "ASC";
+ document.getElementById( "dl_lp_chk_asc" ).title = "ASC signature";
+ document.getElementById( "dl_lp_chk_md5" ).href = CHECKSUM_MD5_FULL;
+ document.getElementById( "dl_lp_chk_md5" ).text = "MD5";
+ document.getElementById( "dl_lp_chk_md5" ).title = "MD5 hash";
+ document.getElementById( "dl_lp_chk_sha256" ).href = CHECKSUM_SHA256_FULL;
+ document.getElementById( "dl_lp_chk_sha256" ).text = "SHA256";
+ document.getElementById( "dl_lp_chk_sha256" ).title = "SHA256 hash";
+ document.getElementById( "dl_chk_verify" ).href = "../checksums.html";
+ document.getElementById( "dl_chk_verify" ).text = "How to verify?";
+ document.getElementById( "dl_chk_verify" ).title = "How to verify the download with checksums?";
+ }
+/*
+ alert ( ""
+ + "getLinkAlt()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "CHECKSUM_KEYS: " + "\t\t\t\t\t\t\t" + CHECKSUM_KEYS + "\n"
+ + "CHECKSUM_ASC_FULL: " + "\t\t\t\t\t\t\t" + CHECKSUM_ASC_FULL + "\n"
+ + "CHECKSUM_ASC_LP: " + "\t\t\t\t\t\t\t" + CHECKSUM_ASC_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
+ return;
}
-function getLinkAlt() {
- // Assign the file name (column 3) from the release matrix of language and platform
+/*
+ * Get platform of browser
+ * Depends on internal browser data
+ */
+function getPlatform( rel_mode ) {
+ // For more help or data see: "http://www.useragentstring.com"
+
+ var os = navigator.platform.toLowerCase(); // Get the platform string in lower cases
+ var ua = navigator.userAgent.toLowerCase(); // Get the User Agent string in lower cases
+ var av = navigator.appVersion.toLowerCase(); // Get the application version in lower cases
+
+ // Delete any previously set string
+ UI_PLATFORM = "";
+ URL_PLATFORM = "";
+ EXTENSION = "";
+
+ // Add ECMA262-5 Array methods if not supported natively
+ // To workaround that MSIE 8 and older do not support this function
+ if ( !( 'indexOf' in Array.prototype ) ) {
+ Array.prototype.indexOf= function( find, i /*opt*/ ) {
+ if ( i === undefined )
+ i = 0;
+ if ( i < 0 )
+ i+= this.length;
+ if ( i < 0 )
+ i = 0;
+ for ( var n = this.length; i < n; i++ ) {
+ if ( i in this && this[ i ] === find )
+ return i;
+ }
+ return -1;
+ };
+ }
+
+ if ( os ) {
+ // Recognized but not supported platforms/OS, set $UI_PLATFORM to show it to the user.
+ if ( os.indexOf( "os/2" ) != -1 ) UI_PLATFORM = "OS/2";
+ if ( os.indexOf( "freebsd" ) != -1 ) UI_PLATFORM = "FreeBSD (PKG)";
+ if ( os.indexOf( "openbsd" ) != -1 ) UI_PLATFORM = "OpenBSD";
+ if ( os.indexOf( "netbsd" ) != -1 ) UI_PLATFORM = "NetBSD";
+ if ( os.indexOf( "pcbsd" ) != -1 ) UI_PLATFORM = "PC-BSD";
+ if ( os.indexOf( "dragonfly" ) != -1 ) UI_PLATFORM = "DragonFly BSD";
+ if ( os.indexOf( "amiga" ) != -1 ) UI_PLATFORM = "AmigaOS";
+ if ( os.indexOf( "darwin" ) != -1 ) UI_PLATFORM = "Darwin";
+ if ( os.indexOf( "aix" ) != -1 ) UI_PLATFORM = "IBM AIX";
+ if ( os.indexOf( "irix" ) != -1 ) UI_PLATFORM = "IRIX";
+ if ( os.indexOf( "vms" ) != -1 ) UI_PLATFORM = "OpenVMS";
+ if ( os.indexOf( "alphaserver" ) != -1 ) UI_PLATFORM = "AlphaServer";
+ if ( os.indexOf( "qnx" ) != -1 ) UI_PLATFORM = "QNX";
+ if ( os.indexOf( "x11" ) != -1 ) UI_PLATFORM = "unknown OS (X11 support)";
+ if ( os.indexOf( "arm" ) != -1 ) UI_PLATFORM = "ARM mobile devices";
+ if ( os.indexOf( "sunos" ) != -1 ) { UI_PLATFORM = "Solaris x86 (PKG)";
+ OLD_PLATFORM = true;
+ }
+ if ( ua.indexOf( "sun4u" ) != -1 ) { UI_PLATFORM = "Solaris SPARC (PKG)";
+ OLD_PLATFORM = true;
+ }
+ if ( ua.indexOf( "ppc" ) != -1 ||
+ ua.indexOf( "power_pc" ) != -1 ) { UI_PLATFORM = "Mac OS PPC (DMG)";
+ OLD_PLATFORM = true;
+ }
+ if ( ua.indexOf( "iphone" ) != -1 ||
+ ua.indexOf( "ipad" ) != -1 ||
+ ua.indexOf( "ipod" ) != -1 ) UI_PLATFORM = "Apple iPhone/iPad/iPod";
+ if ( ua.indexOf( "android" ) != -1 ||
+ av.indexOf( "android" ) != -1 ) UI_PLATFORM = "Android mobile devices";
+ if ( ua.indexOf( "blackberry" ) != -1 ) UI_PLATFORM = "Blackberry smartphones";
+ if ( ua.indexOf( "nokia" ) != -1 ) UI_PLATFORM = "Nokia mobile devices";
+ if ( ua.indexOf( "symbian" ) != -1 ) UI_PLATFORM = "mobile phones (Symbian OS)";
+ if ( ua.indexOf( "symbos" ) != -1 ) UI_PLATFORM = "mobile phones (Symbian OS)";
+ if ( ua.indexOf( "s60" ) != -1 ) UI_PLATFORM = "mobile phones (Series60/S60)";
+ if ( ua.indexOf( "series60" ) != -1 ) UI_PLATFORM = "mobile phones (Series60/S60)";
+ if ( ua.indexOf( "palm" ) != -1 ) UI_PLATFORM = "mobile phones (Palm OS)";
+ if ( ua.indexOf( "webos" ) != -1 ) UI_PLATFORM = "mobile phones (Palm webOS)";
+ if ( ua.indexOf( "pike" ) != -1 ) UI_PLATFORM = "mobile phones (Pike)";
+ if ( ua.indexOf( "ce.net" ) != -1 ) UI_PLATFORM = "mobile phones (Windows CE)";
+ if ( ua.indexOf( "widerweb" ) != -1 ) UI_PLATFORM = "mobile phones (WiderWeb)";
+ if ( ua.indexOf( "brew" ) != -1 ) UI_PLATFORM = "smartphones (BREW)";
+ if ( ua.indexOf( "hiptop" ) != -1 ) UI_PLATFORM = "smartphones (Hiptop)";
+ if ( ua.indexOf( "playstation" ) != -1 ) UI_PLATFORM = "Sony Playstation";
+ if ( ua.indexOf( "psp" ) != -1 ) UI_PLATFORM = "Sony Playstation Portable";
+ if ( ua.indexOf( "nintendo" ) != -1 ) UI_PLATFORM = "Nintendo game console";
+ if ( ua.indexOf( "wii" ) != -1 ) UI_PLATFORM = "Nintendo Wii game console";
+
+ // If the $UI_PLATFORM variable is already filled, then something was recognized and no more work is need.
+ if ( UI_PLATFORM != "" )
+ return;
+
+ // Windows, x86 or mobile?
+ if ( os.indexOf( "windows" ) != -1 ||
+ os.indexOf( "win" ) != -1 ) { UI_PLATFORM = "Windows (EXE)";
+ URL_PLATFORM = "Win_x86_install";
+ EXTENSION = ".exe";
+ if ( ua.indexOf( "phone" ) != -1 ||
+ ua.indexOf( "mobile" ) != -1 ) UI_PLATFORM = "Windows Mobile device";
+ }
+
+ // Linux, x86 or x86-64, DEB or RPM?
+ if ( os.indexOf( "linux" ) != -1 ) {
+ // 32-bit, DEB or RPM?
+ if ( os.indexOf( "x86" ) != -1 ||
+ os.indexOf( "i686" ) != -1 ||
+ os.indexOf( "i586" ) != -1 ||
+ os.indexOf( "i486" ) != -1 ||
+ os.indexOf( "i386" ) != -1 ||
+ av.indexOf( "x86" ) != -1 ||
+ av.indexOf( "i686" ) != -1 ||
+ av.indexOf( "i586" ) != -1 ||
+ av.indexOf( "i486" ) != -1 ||
+ av.indexOf( "i386" ) != -1 ) { UI_PLATFORM = "Linux 32-bit (RPM)";
+ URL_PLATFORM = "Linux_x86_install-rpm";
+ EXTENSION = ".tar.gz";
+ if ( ua.indexOf( "debian" ) != -1 ||
+ ua.indexOf( "ubuntu" ) != -1 ||
+ ua.indexOf( "iceweasel" ) != -1 ) { UI_PLATFORM = "Linux Debian 32-bit (DEB)";
+ URL_PLATFORM = "Linux_x86_install-deb";
+ EXTENSION = ".tar.gz";
+ }
+ }
+ // 64-bit, DEB or RPM?
+ if ( os.indexOf( "_64" ) != -1 ||
+ os.indexOf( "-64" ) != -1 ||
+ os.indexOf( "x64" ) != -1 ||
+ os.indexOf( "amd64" ) != -1 ||
+ av.indexOf( "_64" ) != -1 ||
+ av.indexOf( "-64" ) != -1 ||
+ av.indexOf( "x64" ) != -1 ||
+ av.indexOf( "amd64" ) != -1 ) { UI_PLATFORM = "Linux 64-bit (RPM)";
+ URL_PLATFORM = "Linux_x86-64_install-rpm";
+ EXTENSION = ".tar.gz";
+ if ( ua.indexOf( "debian" ) != -1 ||
+ ua.indexOf( "ubuntu" ) != -1 ||
+ ua.indexOf( "iceweasel" ) != -1 ) { UI_PLATFORM = "Linux Debian 64-bit (DEB)";
+ URL_PLATFORM = "Linux_x86-64_install-deb";
+ EXTENSION = ".tar.gz";
+ }
+ }
+ }
-// alert ( "FILENAME: " + FILENAME + "\n" + "LANG_ISO: " + LANG_ISO + "\n" + "RELEASE_MATRIX_PLATFORM_POS: "
-// + RELEASE_MATRIX_PLATFORM_POS + "\n" + "release_matrix: " + release_matrix );
+ // Mac OS X?
+ if ( os.indexOf( "mac" ) != -1 ) { UI_PLATFORM = "OS X 64-bit Intel (DMG)";
+ URL_PLATFORM = "MacOS_x86_install";
+ EXTENSION = ".dmg";
+ // OS X is 10.6 or older?
+ if ( ua.indexOf( "10.6" ) != -1 ||
+ ua.indexOf( "10_6" ) != -1 ||
+ ua.indexOf( "10.5" ) != -1 ||
+ ua.indexOf( "10_5" ) != -1 ||
+ ua.indexOf( "10.4" ) != -1 ||
+ ua.indexOf( "10_4" ) != -1 ||
+ ua.indexOf( "10.3" ) != -1 ||
+ ua.indexOf( "10_3" ) != -1 ) { UI_PLATFORM = "Mac OS X (10.6 or older)";
+ if ( rel_mode > 0 )
+ OLD_PLATFORM = true;
+ }
+ }
+ }
- if ( LANG_ISO != "" && RELEASE_MATRIX_PLATFORM_POS != "" ) {
- FILENAME = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ][ 3 ];
- LINK = SOURCEFORGE_BASE_URL + LANG_ISO + "/" + FILENAME + "/download";
+ // If nothing was recognized until now, set $UI_PLATFORM to show it to the user
+ if ( UI_PLATFORM == "" ) {
+ UI_PLATFORM = "unknown platform/OS";
+ ERROR = true;
}
- return LINK;
+
+ return;
}
/*
@@ -205,79 +1051,140 @@ function getLinkAlt() {
*/
function getFilesize( rel_mode ) {
// Depending on $URL_PLATFORM assign the platform position of the release matrix
-
-// alert ( "URL_PLATFORM: " + URL_PLATFORM );
-
+/*
+ alert ( ""
+ + "getFilesize()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
switch ( URL_PLATFORM ) {
case "Linux_x86-64_install-deb":
- RELEASE_MATRIX_PLATFORM_POS = 0;
- break;
- case "Linux_x86-64_install-rpm":
- RELEASE_MATRIX_PLATFORM_POS = 1;
- break;
case "Linux_x86-64_langpack-deb":
- RELEASE_MATRIX_PLATFORM_POS = 2;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 0;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 1;
break;
+ case "Linux_x86-64_install-rpm":
case "Linux_x86-64_langpack-rpm":
- RELEASE_MATRIX_PLATFORM_POS = 3;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 2;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 3;
break;
case "Linux_x86_install-deb":
- RELEASE_MATRIX_PLATFORM_POS = 4;
- break;
- case "Linux_x86_install-rpm":
- RELEASE_MATRIX_PLATFORM_POS = 5;
- break;
case "Linux_x86_langpack-deb":
- RELEASE_MATRIX_PLATFORM_POS = 6;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 4;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 5;
break;
+ case "Linux_x86_install-rpm":
case "Linux_x86_langpack-rpm":
- RELEASE_MATRIX_PLATFORM_POS = 7;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 6;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 7;
break;
- case "MacOS_x86_install":
- RELEASE_MATRIX_PLATFORM_POS = 8;
+ case "MacOS_x86-64_install":
+ case "MacOS_x86-64_langpack":
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 8;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 9;
break;
+ case "MacOS_x86_install":
case "MacOS_x86_langpack":
- RELEASE_MATRIX_PLATFORM_POS = 9;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 8;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 9;
break;
case "Win_x86_install":
- RELEASE_MATRIX_PLATFORM_POS = 10;
- break;
case "Win_x86_langpack":
- RELEASE_MATRIX_PLATFORM_POS = 11;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = 10;
+ RELEASE_MATRIX_PLATFORM_POS_LP = 11;
break;
default:
- RELEASE_MATRIX_PLATFORM_POS = -1;
+ RELEASE_MATRIX_PLATFORM_POS_FULL = -1;
+ RELEASE_MATRIX_PLATFORM_POS_LP = -1;
}
-
+/*
+ alert ( ""
+ + "getFilesize()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
// If a platform was found and no error occurred, assign the array data and filesize from the release matrix
- if ( RELEASE_MATRIX_PLATFORM_POS > -1 && !ERROR ) {
+ if ( RELEASE_MATRIX_PLATFORM_POS_FULL > -1 && !ERROR ) {
if ( rel_mode == 0 ) {
// Release mode
// Assign all values from the release matrix of language and platform
- RELEASE_MATRIX_PLATFORM = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ];
+ RELEASE_MATRIX_PLATFORM = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ];
// Assign the file size (column 2) from the release matrix of language and platform
- FILESIZE = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ][ 2 ];
+ FILESIZE_FULL = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ][ 2 ];
+ FILESIZE_LP = release_matrix[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_LP ][ 2 ];
} else {
// Beta release mode
// Assign all values from the release matrix of language and platform
- RELEASE_MATRIX_PLATFORM = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ];
+ RELEASE_MATRIX_PLATFORM = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ];
// Assign the file size (column 2) from the release matrix of language and platform
- FILESIZE = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS ][ 2 ];
+ FILESIZE_FULL = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_FULL ][ 2 ];
+ FILESIZE_LP = release_matrix_beta[ LANG_ISO ][ RELEASE_MATRIX_PLATFORM_POS_LP ][ 2 ];
}
} else {
- ERROR = true;
- FILESIZE = 0;
+ ERROR = true;
+ FILESIZE_FULL = 0;
+ FILESIZE_LP = 0;
}
-
- return FILESIZE;
+/*
+ alert ( ""
+ + "getFilesize()" + "\n"
+ + "LANG_ISO: " + "\t\t\t\t\t\t" + LANG_ISO + "\n"
+ + "UI_PLATFORM: " + "\t\t\t\t\t\t" + UI_PLATFORM + "\n"
+ + "URL_PLATFORM: " + "\t\t\t\t\t\t" + URL_PLATFORM + "\n"
+ + "EXTENSION: " + "\t\t\t\t\t\t" + EXTENSION + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_FULL: " + "\t" + RELEASE_MATRIX_PLATFORM_POS_FULL + "\n"
+ + "RELEASE_MATRIX_PLATFORM_POS_LP: " + "\t\t" + RELEASE_MATRIX_PLATFORM_POS_LP + "\n"
+ + "RELEASE_MATRIX_PLATFORM: " + "\t\t\t" + RELEASE_MATRIX_PLATFORM + "\n"
+ + "FILENAME_FULL: " + "\t\t\t\t\t" + FILENAME_FULL + "\n"
+ + "FILENAME_LP: " + "\t\t\t\t\t\t" + FILENAME_LP + "\n"
+ + "FILESIZE_FULL: " + "\t\t\t\t\t\t" + FILESIZE_FULL + "\n"
+ + "FILESIZE_LP: " + "\t\t\t\t\t\t" + FILESIZE_LP + "\n"
+ + "BASE_URL: " + "\t\t\t\t\t\t" + SOURCEFORGE_BASE_URL + "\n"
+ + "LINK: " + "\t\t\t\t\t\t\t" + LINK + "\n"
+ + "LINK_FULL: " + "\t\t\t\t\t\t" + LINK_FULL + "\n"
+ + "LINK_LP: " + "\t\t\t\t\t\t\t" + LINK_LP + "\n"
+ + "ERROR: " + "\t\t\t\t\t\t\t" + ERROR + "\n"
+ + "" );
+*/
+ return;
}
/*
* Set document.location to start the download
*/
function openItem( itemid, uri ) {
- var thisDocument = document.getElementById( "downloadextendedtext" );
- var thisDocument = document.getElementById( itemid );
- document.location = uri;
+ var thisDocument = document.getElementById( "downloadextendedtext" );
+ var thisDocument = document.getElementById( itemid );
+ document.location = uri;
}