Author: kschenk
Date: Tue Apr 24 23:33:43 2012
New Revision: 1330059

URL: http://svn.apache.org/viewvc?rev=1330059&view=rev
Log:
kls -- yeah, don't ask...this file is a nightmare!

Added:
    
incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js  
 (with props)

Added: 
incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js
URL: 
http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js?rev=1330059&view=auto
==============================================================================
--- 
incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js 
(added)
+++ 
incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js 
Tue Apr 24 23:33:43 2012
@@ -0,0 +1,584 @@
+/*
+ * get link to mirror system
+ * depends on array-list
+ */
+function mirrorbrain_getLink( version ) {
+       return mirrorbrain_getLink( version, "old" );
+}
+
+/*
+ * get link to mirror system in combination with schema for download-set
+ * depends on array-list
+ */
+function mirrorbrain_getLink( version, schema ) {
+       var a = getArray();
+       var platform = getPlatform();
+       var link = null;
+
+       if ( hasMirrorLink() ) {
+               // use mirror link
+               if ( version == VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + "files/";
+                       if ( getLanguageISO().indexOf( "en-US" ) > -1 ) {
+                               link = link + "stable/" + version + "/";
+                       } else {
+                               link = link + "localized/" + getLanguageISO() + 
"/" + version + "/";
+                       }
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == OLD_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + "files/";
+                       if ( getLanguageISO().indexOf( "en-US" ) > -1 ) {
+                               link = link + "stable/" + version + "/";
+                       } else {
+                               link = link + "localized/" + getLanguageISO() + 
"/" + version + "/";
+                       }
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == RC_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + "files/extended/" + 
mirrorbrain_getVersionForDownloadFolder( version ) + "/";
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == BETA_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + "files/extended/" + 
version + "/";
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == DEV1_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + 
"files/extended/developer/" + version + "/";
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == DEV2_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + 
"files/extended/developer/" + version + "/";
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == DEVB_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + 
"files/extended/developer/" + version + "/";
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               } else if ( version == TEST_VERSION ) {
+                       link = MIRROR_MIRRORBRAIN_URL + "files/";
+                       if ( getLanguageISO().indexOf( "en-US" ) > -1 ) {
+                               link = link + "stable/" + version + "/";
+                       } else {
+                               link = link + "localized/" + getLanguageISO() + 
"/" + version + "/";
+                       }
+                       return link + mirrorbrain_getFileName( version, schema 
);
+               }
+               // error
+               return null;
+       } else {
+               // The following lines are no longer valid and commented out as 
the porting is done and Mac an official build
+               // if ( platform.indexOf( "Mac" ) != -1 ) {
+               // send MAC requests to porting.o.o
+               //      return "http://porting.openoffice.org/mac/download/";;
+               // } else {
+                       // use direct link
+                       return a[2];
+               // }
+       }
+}
+
+/*
+ * special tupel for tracking
+ */
+function mirrorbrain_getTupel( href ) {
+       var retVal = "";
+       var file;
+       file = mirrorbrain_getTagFileName( href );
+    if ( file != null ) {
+               var product, os, lang, version;
+               product = mirrorbrain_getTagProduct( file );
+               version = mirrorbrain_getTagVersion( file );
+               os = mirrorbrain_getTagOS( file );
+               lang = mirrorbrain_getTagLang( file );
+               retVal = product + " " + version + "-" + os + "-" + lang + "-" 
+ version;
+    }
+    return retVal;
+}
+
+/*
+ * extract file name from url
+ */
+function mirrorbrain_getTagFileName( href ) {
+       var retVal;
+    if ( href.indexOf( MIRROR_MIRRORBRAIN_URL + "files/" ) > -1 ) {
+               var s = href.split( "/" );
+               retVal = s[s.length-1];
+    }
+    return retVal;
+}
+
+/*
+ * get product name for tracking, external used method
+ */
+function mirrorbrain_getProduct( href ) {
+       var file;
+       file = mirrorbrain_getTagFileName( href );
+       return mirrorbrain_getTagProduct( file ) + " " + 
mirrorbrain_getTagVersion( file );
+}
+
+/*
+ * get version for tracking, external used method
+ */
+function mirrorbrain_getVersion( href ) {
+       var file;
+       file = mirrorbrain_getTagFileName( href );
+       return mirrorbrain_getTagVersion( file );
+}
+
+/*
+ * get os for tracking, external used method
+ */
+function mirrorbrain_getOS( href ) {
+       var file;
+       file = mirrorbrain_getTagFileName( href );
+       return mirrorbrain_getTagOS( file );
+}
+
+/*
+ * get language code for tracking, external used method
+ */
+function mirrorbrain_getLang( href ) {
+       var file;
+       file = mirrorbrain_getTagFileName( href );
+       return mirrorbrain_getTagLang( file );
+}
+
+/*
+ * get language code for tracking, internal method
+ */
+function mirrorbrain_getTagLang( file ) {
+    var retVal;
+    if ( file != null && (
+               file.indexOf( "_install-" ) > -1 || (
+                       file.indexOf( "_install_" ) > -1 && (
+                               file.indexOf( "_Linux_" ) > -1 || file.indexOf( 
"_MacOS_" ) > -1 || file.indexOf( "_Win_" ) > -1 || file.indexOf( "_Solaris_" ) 
> -1
+                       )
+        ) ) ) {
+
+               var s = file.split( "_install" );
+               s = s[1].split( "." );
+               s = s[0].split( "_" );
+               retVal = s[s.length-1];
+
+       } else if ( file != null && file.indexOf( "_install_" ) > -1 ) {
+               var s = file.split( "_install_" );
+               s = s[1].split( "." );
+               s = s[0].split( "_" );
+               if ( s[s.length-1].indexOf( "deb" ) > -1 ) {
+                       retVal = s[s.length-2];
+               } else {
+                       retVal = s[s.length-1];
+               }
+       }
+    return retVal;
+}
+
+/*
+ * get os name for tracking, internal method
+ */
+function mirrorbrain_getTagOS( file ) {
+       var retVal;
+    if ( file != null && (
+               file.indexOf( "_install-" ) > -1 || (
+                       file.indexOf( "_install_" ) > -1 && (
+                               file.indexOf( "_Linux_" ) > -1 || file.indexOf( 
"_MacOS_" ) > -1 || file.indexOf( "_Win_" ) > -1 || file.indexOf( "_Solaris_" ) 
> -1
+                       )
+        ) ) ) {
+
+               var s = file.split( "_install" );
+               s = s[0].split( "_" );
+               retVal = s[ s.length -2 ] + s[ s.length -1 ];
+               retVal = retVal.toLowerCase();
+               if ( retVal.indexOf( "winx86" ) > -1 ) {
+                       retVal = "win";
+               } else if ( retVal == "linuxx86" ) {
+                       retVal = "linuxintel";
+               } else if ( retVal == "macosx86" ) {
+                       retVal = "macosxintel";
+               } else if ( retVal == "macosppc" ) {
+                       retVal = "macosxppc";
+               }
+               if ( file.toLowerCase().indexOf( "wjre" ) > -1 ) {
+                       retVal = retVal + "wjre";
+               } else if ( file.indexOf( "install-deb" ) > -1 ) {
+                       retVal = retVal + "deb";
+               }
+       } else if ( file != null && file.indexOf( "_install_" ) > -1 ) {
+               var s = file.split( "_install_" );
+               s = s[0].split( "_" );
+               retVal = s[ s.length -1 ];
+               retVal = retVal.toLowerCase();
+               if ( retVal.indexOf( "win32intel" ) > -1 ) {
+                       retVal = "win";
+               }
+               if ( file.toLowerCase().indexOf( "wjre" ) > -1 ) {
+                       retVal = retVal + "wjre";
+               } else if ( file.indexOf( "_deb" ) > -1 ) {
+                       retVal = retVal + "deb";
+               } else if ( file.indexOf( "install-deb" ) > -1 ) {
+                       retVal = retVal + "deb";
+               }
+       }
+       return retVal;
+}
+
+/*
+ * get product name for tracking, internal method
+ */
+function mirrorbrain_getTagProduct( file ) {
+       var retVal = null;
+       if ( file != null ) {
+               var s = file.split( "_" );
+               retVal = s[0];
+    }
+       return retVal;
+}
+
+/*
+ * get version for tracking, internal method
+ */
+function mirrorbrain_getTagVersion( file ) {
+       var retVal = null;
+       if ( file != null ) {
+               var s = file.split( "_" );
+               retVal = s[1];
+               if ( s[0] == "OOo-Dev" ) {
+                       if ( file.indexOf( "_install-" ) > -1 || (
+                               file.indexOf( "_install_" ) > -1 && (
+                                       file.indexOf( "_Linux_" ) > -1 || 
file.indexOf( "_MacOS_" ) > -1 || file.indexOf( "_Win_" ) > -1 || file.indexOf( 
"_Solaris_" ) > -1
+                               )
+               ) ) {
+                               // new schema
+                               if ( s[1].indexOf( "_m" ) > -1 ) {
+                                       retVal = s[1];
+                               } else if ( s[1].indexOf( "m" ) > -1 ) {
+                                       var s2 = s[1].split( "m" );
+                                       retVal = s2[0] + "_m" + s2[1];
+                               } else {
+                                       retVal = s[1];
+                               }
+                       } else {
+                               // old schema
+                               retVal = s[1] + "_" + s[2];
+                       }
+               }
+    }
+       return retVal;
+}
+
+/*
+ * method trim timestamp from version, required for RC, requested by MLA
+ */
+function mirrorbrain_getVersionForDownloadFolder( version ) {
+       var s = null;
+       if ( version.indexOf( "_" ) > -1 ) {
+               s = version.split( "_" )[0];
+       } else {
+               s = version;
+       }
+
+       if ( version == VERSION ) {
+               return version;
+       } else if ( version == OLD_VERSION ) {
+               return version;
+       } else if ( version == RC_VERSION ) {
+               return s;
+       } else if ( version == BETA_VERSION ) {
+               return version;
+       } else if ( version == DEV1_VERSION ) {
+               return version;
+       } else if ( version == DEV2_VERSION ) {
+               return version;
+       } else if ( version == TEST_VERSION ) {
+               return version;
+       }
+       // error
+       return null;
+}
+
+function mirrorbrain_getFileName( version, schema ) {
+       var a = getArray();
+       var platform = getPlatform();
+       var fileName = null;
+
+       if ( hasMirrorLink() ) {
+               // use mirror link
+               if ( schema == "old" ) {
+                       if ( version == VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == OLD_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == RC_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == BETA_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEV1_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEV2_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEVB_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == TEST_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else {
+                               fileName = null;
+                       }
+               } else if ( schema == "new" ) {
+                       if ( version == VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == OLD_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == RC_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == BETA_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEV1_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEV2_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == DEVB_VERSION ) {
+                               fileName = "OOo-Dev_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else if ( version == TEST_VERSION ) {
+                               fileName = "OOo_" + version + "_" + 
mirrorbrain_getPlatformForMirror( schema ) + "_" + getLanguageISO() + 
mirrorbrain_getExtension( schema );
+                       } else {
+                               fileName = null;
+                       }
+               } else if (schema == "aoo_incubating") {
+                       if ( version == VERSION ) {
+                               fileName = "Apache_OpenOffice_incubating_" + 
version + "_" + mirrorbrain_getPlatformForMirror( schema ) + "_" + 
getLanguageISO() + mirrorbrain_getExtension( schema );
+                       }
+               }
+               return fileName;
+       }
+       // error
+       return null;
+}
+
+/*
+ * get platform for mirror-link
+ */
+function mirrorbrain_getPlatformForMirror( schema ) {
+       var a = getArray();
+       if ( navigator.platform != null ) {
+               if ( schema == "old" ) {
+                       if ( navigator.platform.indexOf( "Win32" ) != -1 ) {
+                               return ( a[3] == 'y' ) ? 
"Win32Intel_install_wJRE" : "Win32Intel_install";
+                       } else if ( navigator.platform.indexOf( "Win64" ) != -1 
) {
+                               return ( a[3] == 'y' ) ? 
"Win32Intel_install_wJRE" : "Win32Intel_install";
+                       } else if ( navigator.platform.indexOf( "Win" ) != -1 ) 
{
+                               return ( a[3] == 'y' ) ? 
"Win32Intel_install_wJRE" : "Win32Intel_install";
+                       } else if ( navigator.platform.indexOf( "Linux" ) != -1 
) {
+                               if ( navigator.platform.indexOf( "64" ) != -1 ) 
{
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return 
"LinuxX86-64_install";
+                                               } else {
+                                                       return ( a[3] == 'y' ) 
? "LinuxX86-64_install_wJRE" : "LinuxX86-64_install";
+                                               }
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"LinuxX86-64_install_wJRE" : "LinuxX86-64_install";
+                                       }
+                               } else {
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return ( a[3] == 'y' ) 
? "LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                                               } else {
+                                                       return ( a[3] == 'y' ) 
? "LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                                               }
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                                       }
+                               }
+
+                               if ( navigator.userAgent != null ) {
+                                       if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                               return ( a[3] == 'y' ) ? 
"LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                                       }
+                               } else {
+                                       return ( a[3] == 'y' ) ? 
"LinuxIntel_install_wJRE" : "LinuxIntel_install";
+                               }
+                       } else if ( navigator.platform.indexOf( "SunOS i86pc" ) 
!= -1 ) {
+                               return ( a[3] == 'y' ) ? 
"Solarisx86_install_wJRE" : "Solarisx86_install";
+                       } else if ( navigator.platform.indexOf( "SunOS sun4u" ) 
!= -1 ) {
+                               return ( a[3] == 'y' ) ? 
"SolarisSparc_install_wJRE" : "SolarisSparc_install";
+                       } else if ( navigator.platform.indexOf( "SunOS" ) != -1 
) {
+                               return ( a[3] == 'y' ) ? 
"SolarisSparc_install_wJRE" : "SolarisSparc_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "Intel" ) != -1 ) {
+                               return "MacOSXIntel_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "PPC" ) != -1 ) {
+                               return "MacOSXPPC_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 ) 
{
+                               return "MacOSXIntel_install";
+                       // testing if this code will help to redirect the iPad, 
iPhone, iPod entries
+                       } else if ( navigator.platform.indexOf( "iPad" ) != -1 
|| navigator.platform.indexOf( "iPhone" ) != -1 || navigator.platform.indexOf( 
"iPod" ) != -1 ) {
+                               return "MacOSXIntel_install" ;
+                       } else {
+                               // return plain platform
+                               return navigator.platform;
+                       }
+               } else if ( schema == "new" ) {
+                       if ( navigator.platform.indexOf( "Win32" ) != -1 ) {
+                               return ( a[3] == 'y' ) ? "Win_x86_install-wJRE" 
: "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Win64" ) != -1 
) {
+                               return ( a[3] == 'y' ) ? "Win_x86_install-wJRE" 
: "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Win" ) != -1 ) 
{
+                               return ( a[3] == 'y' ) ? "Win_x86_install-wJRE" 
: "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Linux" ) != -1 
) {
+                               if ( navigator.platform.indexOf( "64" ) != -1 ) 
{
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return 
"Linux_x86-64_install-deb";
+                                               } else {
+                                                       return ( a[3] == 'y' ) 
? "Linux_x86-64_install-rpm-wJRE" : "Linux_x86-64_install-rpm";
+                                               }
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"Linux_x86-64_install-rpm-wJRE" : "Linux_x86-64_install-rpm";
+                                       }
+                               } else {
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return 
"Linux_x86_install-deb";
+                                               } else {
+                                                       return ( a[3] == 'y' ) 
? "Linux_x86_install-rpm-wJRE" : "Linux_x86_install-rpm";
+                                               }
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"Linux_x86_install-rpm-wJRE" : "Linux_x86_install-rpm";
+                                       }
+                               }
+
+                               if ( navigator.userAgent != null ) {
+                                       if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                               return "Linux_x86_install-deb";
+                                       } else {
+                                               return ( a[3] == 'y' ) ? 
"Linux_x86_install-rpm-wJRE" : "Linux_x86_install-rpm";
+                                       }
+                               } else {
+                                       return ( a[3] == 'y' ) ? 
"Linux_x86_install-rpm-wJRE" : "Linux_x86_install-rpm";
+                               }
+                       } else if ( navigator.platform.indexOf( "SunOS i86pc" ) 
!= -1 ) {
+                               return ( a[3] == 'y' ) ? 
"Solaris_x86_install-wJRE" : "Solaris_x86_install";
+                       } else if ( navigator.platform.indexOf( "SunOS sun4u" ) 
!= -1 ) {
+                               return ( a[3] == 'y' ) ? 
"Solaris_Sparc_install-wJRE" : "Solaris_Sparc_install";
+                       } else if ( navigator.platform.indexOf( "SunOS" ) != -1 
) {
+                               return ( a[3] == 'y' ) ? 
"Solaris_Sparc_install-wJRE" : "Solaris_Sparc_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "Intel" ) != -1 ) {
+                               return "MacOS_x86_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "PPC" ) != -1 ) {
+                               return "MacOS_PPC_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 ) 
{
+                               return "MacOS_x86_install";
+                       // testing if this code will help to redirect the iPad, 
iPhone, iPod entries
+                       } else if ( navigator.platform.indexOf( "iPad" ) != -1 
|| navigator.platform.indexOf( "iPhone" ) != -1 || navigator.platform.indexOf( 
"iPod" ) != -1 ) {
+                               return "MacOS_x86_install" ;
+                       } else {
+                               // return plain platform
+                               return navigator.platform;
+                       }
+               } else if (schema == "aoo_incubating") {
+                       if ( navigator.platform.indexOf( "Win32" ) != -1 ) {
+                               return   "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Win64" ) != -1 
) {
+                               return  "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Win" ) != -1 ) 
{
+                               return  "Win_x86_install";
+                       } else if ( navigator.platform.indexOf( "Linux" ) != -1 
) {
+                               if ( navigator.platform.indexOf( "64" ) != -1 ) 
{
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return 
"Linux_x86-64_install-deb";
+                                               } else {
+                                                       return  
"Linux_x86-64_install-rpm";
+                                               }
+                                       } else {
+                                               return  
"Linux_x86-64_install-rpm";
+                                       }
+                               } else {
+                                       if ( navigator.userAgent != null ) {
+                                               if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                                       return 
"Linux_x86_install-deb";
+                                               } else {
+                                                       return  
"Linux_x86_install-rpm";
+                                               }
+                                       } else {
+                                               return  "Linux_x86_install-rpm";
+                                       }
+                               }
+
+                               if ( navigator.userAgent != null ) {
+                                       if ( 
navigator.userAgent.toLowerCase().indexOf( "debian" ) != -1 || 
navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 ) {
+                                               return "Linux_x86_install-deb";
+                                       } else {
+                                               return  "Linux_x86_install-rpm";
+                                       }
+                               } else {
+                                       return  "Linux_x86_install-rpm";
+                               }
+                       } else if ( navigator.platform.indexOf( "SunOS i86pc" ) 
!= -1 ) {
+                               return  "Solaris_x86_install";
+                       } else if ( navigator.platform.indexOf( "SunOS sun4u" ) 
!= -1 ) {
+                               return  "Solaris_Sparc_install";
+                       } else if ( navigator.platform.indexOf( "SunOS" ) != -1 
) {
+                               return  "Solaris_Sparc_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "Intel" ) != -1 ) {
+                               return "MacOS_x86_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 
&& navigator.platform.indexOf( "PPC" ) != -1 ) {
+                               return "MacOS_PPC_install";
+                       } else if ( navigator.platform.indexOf( "Mac" ) != -1 ) 
{
+                               return "MacOS_x86_install";
+                       // testing if this code will help to redirect the iPad, 
iPhone, iPod entries
+                       } else if ( navigator.platform.indexOf( "iPad" ) != -1 
|| navigator.platform.indexOf( "iPhone" ) != -1 || navigator.platform.indexOf( 
"iPod" ) != -1 ) {
+                               return "MacOS_x86_install" ;
+                       } else {
+                               // return plain platform
+                               return navigator.platform;
+                       }
+               }
+       }
+       return ( a[3] == 'y' ) ? "Win_x86_install-wJRE" : "Win_x86_install";
+}
+
+/*
+ * get extension for mirror-link
+ */
+function mirrorbrain_getExtension( schema ) {
+       var a = getArray();
+       if ( navigator.platform != null ) {
+               if ( navigator.platform.indexOf( "Win32" ) != -1 ) {
+                       return ".exe";
+               } else if ( navigator.platform.indexOf( "Win64" ) != -1 ) {
+                       return ".exe";
+               } else if ( navigator.platform.indexOf( "Win" ) != -1 ) {
+                       return ".exe";
+               } else if ( navigator.platform.indexOf( "Linux" ) != -1 ) {
+                       if ( navigator.userAgent != null ) {
+                               if ( navigator.userAgent.toLowerCase().indexOf( 
"debian" ) != -1 || navigator.userAgent.toLowerCase().indexOf( "ubuntu" ) != -1 
) {
+                                       if ( schema == "old" ) {
+                                               return "_deb.tar.gz";
+                                       } else if ( schema == "new" ) {
+                                               return ".tar.gz";
+                                       } else {
+                                               return ".tar.gz";
+                                       }
+                               } else {
+                                       return ".tar.gz";
+                               }
+                       } else {
+                               return ".tar.gz";
+                       }
+               } else if ( navigator.platform.indexOf( "SunOS i86pc" ) != -1 ) 
{
+                       return ".tar.gz";
+               } else if ( navigator.platform.indexOf( "SunOS sun4u" ) != -1 ) 
{
+                       return ".tar.gz";
+               } else if ( navigator.platform.indexOf( "SunOS" ) != -1 ) {
+                       return ".tar.gz";
+               } else if ( navigator.platform.indexOf( "Mac" ) != -1 && 
navigator.platform.indexOf( "Intel" ) != -1 ) {
+                       return ".dmg";
+               } else if ( navigator.platform.indexOf( "Mac" ) != -1 && 
navigator.platform.indexOf( "PPC" ) != -1 ) {
+                       return ".dmg";
+               } else if ( navigator.platform.indexOf( "Mac" ) != -1 ) {
+                       return ".dmg";
+               // this code provides working entries for iPad, iPhone, iPod
+               } else if ( navigator.platform.indexOf( "iPad" ) != -1 || 
navigator.platform.indexOf( "iPhone" ) != -1 || navigator.platform.indexOf( 
"iPod" ) != -1 ) {
+                       return ".dmg" ;
+               } else {
+                       return navigator.platform;
+               }
+       }
+       return null;
+}

Propchange: 
incubator/ooo/ooo-site/trunk/content/download/test/download_new_mirrorbrain.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain


Reply via email to