jQuery(document).ready(function() {
if (jQuery('table#specDetailTable').length) { // static spec pages
var isAccessories = (jQuery('#specDetailTable.accessories').length) ? true : false;
var isMotherboard = (jQuery('#specDetailTable.motherboard').length) ? true : false;
var isNetworking = (jQuery('#specDetailTable.accessories.networking').length) ? true : false;
var isMobileRack = (jQuery('#specDetailTable.accessories.mobile-rack,#specDetailTable.accessories.drivekit').length) ? true : false;
jQuery('.body > table').addClass('spec-product-image spec-table');
jQuery('.spec-product-image table').addClass('spec-product-board-image spec-table');
jQuery('.spec-product-image > tbody > tr > td:nth-child(2) ').addClass('col-right');
jQuery('.body').nextAll('td').eq(1).wrap("<table class='spec-key-features spec-table'></table>");
if (isMotherboard) {
jQuery('#specDetailTable > tbody > tr:nth-child(2) > td > table:nth-child(1)').addClass('spec-desc-section');
jQuery('#specDetailTable > tbody > tr:nth-child(2) > td > table:nth-child(2)').addClass('spec-specifications-section');
jQuery('#specDetailTable > tbody > tr:nth-child(3)').addClass('spec-parts-list-section');
} else if (isMobileRack) {
jQuery('#specDetailTable > tbody > tr:nth-child(2)').addClass('spec-desc-section');
jQuery('#specDetailTable > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(2)').addClass('spec-specifications-section');
jQuery('#specDetailTable > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(3), #specDetailTable > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(5)').addClass('spec-parts-list-section');
} else {
jQuery('#specDetailTable > tbody > tr:nth-child(2)').addClass('spec-desc-section');
jQuery('#specDetailTable > tbody > tr:nth-child(3)').addClass('spec-specifications-section');
if (isNetworking) {
jQuery('.spec-specifications-section > td > table > tbody > tr:nth-child(3) > td > table > tbody > tr:nth-child(4)').addClass('spec-parts-list-section');
} else {
jQuery('#specDetailTable > tbody > tr:nth-child(4)').addClass('spec-parts-list-section');
jQuery('.spec-parts-list-section .copyright:eq(0)').closest('table').remove();
}
}
//jQuery('table:not(.product-image-board):not(:has(table))').addClass('product-table');
//jQuery('.product-spec-section table:not(:has(table))').addClass('product-spec product-table');
if (isAccessories) {
jQuery('.spec-specifications-section td[background^="/a_images/gradient/gradient_lightblue"]').each(function(index) {
jQuery(this).wrap('<table class="spec-table-' + (index + 1) + '"></table>');
});
} else {
jQuery('.spec-specifications-section td[background="/a_images/gradient/gradient_lightblue_long.jpg"]:nth-child(1)').wrap('<table class="spec-table-1"></table>');
jQuery('.spec-specifications-section td[background="/a_images/gradient/gradient_lightblue_long.jpg"]:nth-child(3)').wrap('<table class="spec-table-2"></table>');
}
jQuery('.spec-key-features td').removeAttr('rowspan');
if (isMobileRack) {
jQuery('.spec-key-features img[src*="/a_images/products/Chassis/"], .spec-key-features img[src*="/a_images/icons/prod_manual"]').each(function() {
jQuery(this).closest('td').css('width', '70%');
});
}
var specGrid = '<div class="container spec-container">' +
'<div class="spec-main ">';
if ((!isAccessories) || (isMobileRack)) {
var paddedTableHTML = "";
jQuery('.spec-desc-section table:not(:has(table))').each(function(index) {
if (!jQuery(this).closest('.spec-table').length) {
jQuery(this).addClass('padded-table');
paddedTableHTML += jQuery(this)[0].outerHTML;
}
});
specGrid +=
' <div class="row " >' +
' <div class="col col-xs-12 col-sm-7 col-md-8">' +
jQuery('.spec-product-image')[0].outerHTML +
paddedTableHTML +
' <div style="color: #ccc; font-size: 10px; padding-top: 25px;">Note: Image above may show a varied configuration of optional parts. Please refer to parts list for standard parts included.</div>' +
' </div>' +
' <div class="col col-xs-12 col-sm-5 col-md-4">' + (jQuery('.spec-key-features').length ? jQuery('.spec-key-features')[0].outerHTML : '') + '</div>' +
' </div>';
}
specGrid +=
//' <img src="/a_images/tabs/tab_spec_system.gif">' +
' <div class="more less"><span>Specifications</span> <i class="fa fa-angle-up"></i></div>' +
' <div class="row ">' +
' <div class="col col-xs-12 col-sm-6 col-md-6">' + (jQuery('.spec-table-1').length ? jQuery('.spec-table-1')[0].outerHTML : '') + '</div>' +
' <div class="col col-xs-12 col-sm-6 col-md-6">' + (jQuery('.spec-table-2').length ? jQuery('.spec-table-2')[0].outerHTML : '') + '</div>' +
' </div>';
if (jQuery('.spec-parts-list-section').length) {
var partListTableHTML = "";
jQuery('.spec-parts-list-section table:not(:has(table))').each(function(index) {
partListTableHTML += jQuery(this)[0].outerHTML;
});
specGrid += ' <div class="more"><span>Parts List</span> <i class="fa fa-angle-down"></i></div>' +
' <div class="row part-list" style="display: none"> ' + partListTableHTML + ' </div>';
}
specGrid += '<div class="sku"></div></div></div>';
//console.log(specGrid);
jQuery(specGrid).insertAfter('#specDetailTable');
jQuery('.spec-main .sku').text(jQuery('#specModel').text());
jQuery("a").filter(function() {
return (jQuery(this).text() === "See Parts List" || jQuery(this).text() === "Hide Parts List");
}).hide();
if (isMobileRack) {
jQuery('.spec-table-1 .specHeader,.spec-table-2 .specHeader').each(function() {
jQuery(this).parent().prev('tr').hide();
});
jQuery('.spec-table-1 td.spec:first-child,.spec-table-2 td.spec:first-child').each(function() {
jQuery(this).addClass('feature border_b');
jQuery(this).next().remove();
jQuery(this).next().addClass('description border_b');
});
jQuery('.spec-main').addClass('mobile-rack');
}
}
//if (window.location.href.indexOf('?showprint') > 0) {
jQuery('<div class="print-btn" onclick="window.print()"><i class="fa fa-print"></i><span style="font-size: 18px; padding-left: 5px">Print</span></div>').prependTo(jQuery('.spec-main'));
//}
jQuery('td').each(function(i) {
//jQuery(this).css('height', 0);
//jQuery(this).css('width', 'auto');
jQuery(this).attr('background', '');
});
jQuery('table').each(function(i) {
jQuery(this).css('background-color', jQuery(this).attr('bgcolor'));
//jQuery(this).css('width', 'auto');
});
// ----------------------------------------------
// breadcrumb
// ----------------------------------------------
var jQueryspecBreadcrumb = jQuery("#specDetailTable > tbody > tr:first-child .crumbs, #specDetailTable #spec-breadcrumbs");
var path = window.location.pathname;
var langCode = "en";
var langParam = "0";
if (path.indexOf('/zh_tw/') == 0) {
langCode = "zh_tw";
langParam = "1";
} else if (path.indexOf('/zh_cn/') == 0) {
langCode = "zh_cn";
langParam = "2";
} else if (path.indexOf('/ja/') == 0) {
langCode = "ja";
langParam = "3";
}
jQueryspecBreadcrumb.find("a").each(function() {
var entUrl = getEntUrl(jQuery(this).attr('href'), langCode, langParam);
//console.log("entUrl=" + entUrl);
jQuery(".breadcrumb ol").append('<li><a href="' + entUrl + '">' + jQuery(this).text() + '</a> <span class="">»</span> </li>');
});
var $breadcrumbSku = jQueryspecBreadcrumb.find('strong');
jQuery(".breadcrumb ol").append('<li>' + $breadcrumbSku.eq($breadcrumbSku.length - 1).text() + '</li>');
jQuery('.part-list table, table.spec-table-1, table.spec-table-2').wrap("<div class='scrollable-table'></div>");
jQuery('.more').click(function() {
if (jQuery(this).hasClass('less')) {
jQuery(this).next().slideUp();
jQuery(this).html("<span>" + jQuery(this).find('span').text() + "</span> <i class='fa fa-angle-down'></i>").removeClass('less');
} else {
jQuery(this).next().slideDown();
jQuery(this).html("<span>" + jQuery(this).find('span').text() + "</span> <i class='fa fa-angle-up'></i>").addClass('less');
}
});
jQuery('#specDetailTable').remove();
//Support Matrix URL rewrite
function productLnkRewrite() {
var domainName = '';
if (window.location.hostname.indexOf('dev.supermicro.com') == 0) {
domainName = 'http://10.3.0.210';
}
if (window.location.hostname.indexOf('staging.supermicro.com') == 0) {
domainName = 'https://staging.supermicro.com';
}
function setTestedMemory() {
var memoryForm = jQuery('form[name=memoryForm]');
if (memoryForm.length <= 0) {
return;
}
var memoryFormUrl = memoryForm.attr('action');
if (memoryFormUrl.indexOf('.cfm') > 0) {
memoryForm.attr('action', domainName + '/' + langCode + '/support/resources/mem');
}
}
function setSupportResourcesForms() {
var mappingUrl = [{
fromUrl: '/support/resources/tested_AOC.cfm',
toUrl: '/support/resources/aoc/tested'
}, {
fromUrl: '/support/resources/HDD.cfm',
toUrl: '/support/resources/hdd'
}, {
fromUrl: '/support/resources/HDD_25.cfm',
toUrl: '/support/resources/hdd25'
}, {
fromUrl: '/support/resources/HDD_25_35.cfm',
toUrl: '/support/resources/hdd2535'
}, {
fromUrl: '/support/resources/HDD_35.cfm',
toUrl: '/support/resources/hdd35'
}, {
fromUrl: '/support/resources/NVMe.cfm',
toUrl: '/support/resources/nvme'
}, {
fromUrl: '/support/resources/resource_drivers.cfm',
toUrl: '/support/resources/drivers'
}];
rewriteLnks(mappingUrl, 'action');
}
function setSupportResourcesLnks() {
var mappingUrl = [{
fromUrl: '/support/resources/M2SSD/display.cfm',
toUrl: '/support/resources/m2ssd'
}, {
fromUrl: '/support/resources/AOC/AOC_Compatibility_SIOM.cfm',
toUrl: '/support/resources/aoc/siom'
}, {
fromUrl: '/support/resources/AOC/Standard_AOC_Compatibility.cfm',
toUrl: '/support/resources/aoc/standard'
}, {
fromUrl: '/support/faqs/os.cfm',
toUrl: '/support/faqs/os'
}, {
fromUrl: '/support/resources/HDD/display.cfm',
toUrl: '/support/resources/hdd/display'
}, {
fromUrl: '/support/resources/HDD/systemHDD.cfm',
toUrl: '/support/resources/hdd/systemhdd'
}, {
fromUrl: '/support/resources/gpu/',
toUrl: '/support/resources/gpu'
}];
rewriteLnks(mappingUrl, 'href');
}
function rewriteLnks(mappingUrl, attribute) {
var selector = [];
for (var i = 0; i < mappingUrl.length; i++) {
if (attribute == 'action') {
selector.push('form[' + attribute + '^="' + mappingUrl[i].fromUrl + '"]');
} else {
selector.push('a[' + attribute + '^="' + mappingUrl[i].fromUrl + '"]');
}
}
selector = selector.join(',');
jQuery(selector).each(function() {
var url = jQuery(this).attr(attribute);
for (var i = 0; i < mappingUrl.length; i++) {
url = url.replace(mappingUrl[i].fromUrl, '/' + langCode + mappingUrl[i].toUrl);
}
jQuery(this).attr(attribute, domainName + url);
});
}
setTestedMemory();
setSupportResourcesLnks();
setSupportResourcesForms();
}
productLnkRewrite();
var layoutAdjustForDevice = function() {
jQuery('.spec-main').css('margin-top', jQuery('.spec-main .sku').outerHeight() + 50);
if (window.matchMedia('(min-width: 992px)').matches) {
jQuery('.print-btn').css('margin-top', 0);
} else {
jQuery('.print-btn').css('margin-top', jQuery('.spec-main .sku').outerHeight() * -1);
}
}
jQuery(window).resize(function() {
layoutAdjustForDevice();
});
layoutAdjustForDevice();
});
function getEntUrl(legacyUrl, langCode, langParam) {
if (typeof(urls) != 'undefined' && urls != null) {
for (var entUrl in urls) {
if (legacyUrl == urls[entUrl]) {
return "/" + langCode + entUrl;
}
}
}
langParam = "?mlg=" + langParam;
if (legacyUrl.indexOf("?") >= 0) {
langParam = "&mlg=" + langParam;
}
return legacyUrl + langParam;
}