function update()

in src/content/images_www/v6/download/8.2/final/js/download.js [474:668]


function update() {
    var langselect = document.getElementById("language_select");
    if(langselect.options[langselect.selectedIndex].value == MORE_LANG_ID) {
        langselect.selectedIndex = last_selected_lang;
        window.location = get_build_info(true).ADDITIONAL_BUILD_LOCATION;
    }
    last_selected_lang = langselect.selectedIndex;

    lang_id = langselect.options[langselect.selectedIndex].value;

    var select = document.getElementById("platform_select");
    var platform = select.options[select.selectedIndex].value;
    var platform_display_name = select.options[select.selectedIndex].text;


    /*For NetBeans we have native mac installer*/

    if(platform=="macosx") {
        platform = "macosx-x86";
    }

    // update the "checks" and generate error messages, if any
    var product_messages = new Array();
    for (var i = 0; i < product_uids.length; i++) {
        if (is_product_hidden(product_uids[i])) {
            continue;
        }

        // enter the default value
        product_messages[i] = null;

        if (!is_compatible(i, platform)) {
	     product_messages[i] = product_display_names[i];
        }

        for(var k=0;k<BUNDLE_IDS.length;k++) {
                var id = BUNDLE_IDS[k];

                if(is_product_in_bundle(product_uids[i], BUNDLE_IDS[k])) {
                    if (product_messages[i] == null) {
                        document.getElementById("product_" + i + "_" + id).innerHTML = IMAGE_CHECKED_WHITE;
                    } else {
                        document.getElementById("product_" + i + "_" + id).innerHTML = IMAGE_WARNING_WHITE;
                    }
                } else {
                    document.getElementById("product_" + i + "_" + id).innerHTML = '';
                }
	}


	if (product_messages[i] == null) {
		document.getElementById("product_" + i + "_display_name").innerHTML = '<a class="product_display_name">' + product_display_names[i] + "</a>";
	} else {
		document.getElementById("product_" + i + "_display_name").innerHTML = '<a class="product_display_name_no">' + product_display_names[i] + "</a>";
	}
    }

    // update the error message
    var error_message = "";
    var messages_number = 0;

    for (var i = 0; i < product_uids.length; i++) {
        if (product_messages[i] != null) {
        messages_number += 1;
        }
    }
    if (messages_number != 0 ) {

	var messages_counter = 0;

	error_message += NOTE_PREFIX;

    	for (var j = 0; j < product_uids.length; j++) {
        	if (product_messages[j] != null) {

			if ( messages_counter == 0) {
            			error_message += product_messages[j];
			} else if (messages_counter == (messages_number-1) ){
				error_message = NOTE_AND_SEP.replace('{0}', error_message).replace('{1}', product_messages[j]);
			} else {
				error_message = NOTE_COMMA_SEP.replace('{0}', error_message).replace('{1}', product_messages[j]);
			}

			messages_counter += 1;
        	}
    	}
	var na = '';
	if (messages_number == 1 ) {
		if ( platform == "zip" ) {
			na = SINGLE_NOT_AVAILABLE_ZIP;
		} else {
			na = SINGLE_NOT_AVAILABLE_BUNDLE;
		}
        } else {
		if ( platform == "zip" ) {
			na = MULTIPLE_NOT_AVAILABLE_ZIP;
		} else {
			na = MULTIPLE_NOT_AVAILABLE_BUNDLE;
		}
	}
	error_message = na.replace('{0}', error_message).replace('{1}', platform_display_name);;
    } else {
	error_message = '<br>';
    }

    // use positive wording instead of negative

    if ( platform == "zip" ) {
        error_message = NOTE_ZIP;
    }

    if (error_message != "" ) {
       error_message = NOTE_ALL;
    }


    document.getElementById("error_message").innerHTML = error_message;

    // update the sizes
    var sizes = new Array(BUNDLE_IDS.length);
    for(var i=0;i<BUNDLE_IDS.length;i++) {
      sizes[i] = 0;
    }

    for (var i = 0; i < product_uids.length; i++) {
        var plat=platform.replace('macosx-x86','macosx');
        if (!is_compatible(i, platform)) {
            continue;
        }

        for(var k=0;k<BUNDLE_IDS.length;k++) {
            if (is_product_in_bundle(product_uids[i], BUNDLE_IDS[k])) {
                var sizes=[];
                var size=0;
                if(is_file_available(plat,BUNDLE_IDS[k],lang_id,'')) {
                    sizes.push(get_file_size_mb(get_file_name(plat, BUNDLE_IDS[k], lang_id), lang_id, 0));
                }
                if(is_file_available(plat,BUNDLE_IDS[k],lang_id,'x86')) {
                    sizes.push(get_file_size_mb(get_file_name(plat, BUNDLE_IDS[k], lang_id,'x86'), lang_id, 0));
                }
                if(is_file_available(plat,BUNDLE_IDS[k],lang_id,'x64')) {
                    sizes.push(get_file_size_mb(get_file_name(plat, BUNDLE_IDS[k], lang_id,'x64'), lang_id, 0));
                }
                size=sizes.sort().join(' - ');
                document.getElementById(BUNDLE_IDS[k] + "_size").innerHTML   = FREE_SIZE_MESSAGE.replace('{0}', size);
            }

        }
    }

    for(var k=0;k<BUNDLE_IDS.length;k++) {
        var plat=platform.replace('macosx-x86','macosx');
        var exists = false;
        var id = BUNDLE_IDS[k];

        for(var j=0;j<BUNDLES.length;j++) {
            if(id == BUNDLES[j].uid) {
               exists = true;
            }
        }

        var button;

        var winButtons=[];
        if(is_file_available(plat,id,lang_id,'')) {
            winButtons.push(get_download_button(id, exists));
        }
        if(is_file_available(plat,id,lang_id,'x86')) {
            winButtons.push(get_download_button(id, exists,'x86'));
        }
        if(is_file_available(plat,id,lang_id,'x64')) {
            winButtons.push(get_download_button(id, exists,'x64'));
        }
        button=winButtons.join('<br/>');

        document.getElementById(id + "_link").innerHTML   = button;
    }

    document.getElementById("jdk_note").innerHTML = JDK_NOTE_ALL.replace('{0}',JAVA_COM_LINK).replace('{1}',JDK_DOWNLOAD_LINK).replace('{2}',NBJDK_DOWNLOAD_LINK);

    var mainLanguage = isMainLanguage(lang_id);
    var comunityBuild = (isCommunityBuild() && mainLanguage) || (!isCommunityBuild() && !mainLanguage);

    if (comunityBuild == 1) {
	document.getElementById("community_number").innerHTML  = "<a class=\"special_message_number\">" + NETBEANS_DOWNLOAD_BUNDLES_COMMUNITY_MSG_NUMBER + "</a>";
	document.getElementById("community_message").innerHTML = "<a class=\"special_message_text\">" + COMMUNITY_MESSAGE + "</a>";
	document.getElementById("download_page_header").innerHTML = getHeader(true);
    }
    else {
	document.getElementById("community_message").innerHTML = "";
	document.getElementById("community_number").innerHTML  = "";
	document.getElementById("download_page_header").innerHTML = getHeader(false);
    }
    document.getElementById("zip_link").setAttribute("href", getZipUrl());
}