(function() {
function disableViewPortMeta(scale) {
try {
var viewport = document.querySelectorAll("meta[name=viewport]");
if (viewport && viewport.length) {
viewport = viewport[viewport.length - 1];
var content = viewport.getAttribute('content');
//if (content && content.indexOf('reset-if-scroll') != -1) {
viewport.setAttribute('content', 'initial-scale=' + scale);
//}
}
} catch (e) {
}
}
function media() {
/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */
/*! NOTE: If you're already including a window.matchMedia polyfill via Modernizr or otherwise, you don't need this part */
window.matchMedia=window.matchMedia||function(c){var g,f=c.documentElement,e=f.firstElementChild||f.firstChild,h=c.createElement("body"),n=c.createElement("div");n.id="mq-test-1";n.style.cssText="position:absolute;top:-100em";h.style.background="none";h.appendChild(n);return function(c){n.innerHTML='';f.insertBefore(h,e);g=42===n.offsetWidth;f.removeChild(h);return{matches:g,media:c}}}(document);
/*! Respond.js v1.1.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */
(function(c){function g(){v(!0)}var f={};c.respond=f;f.update=function(){};f.mediaQueriesSupported=c.matchMedia&&c.matchMedia("only all").matches;if(!f.mediaQueriesSupported){var e=c.document,h=e.documentElement,n=[],s=[],p=[],r={},t=e.getElementsByTagName("head")[0]||h,F=e.getElementsByTagName("base")[0],u=t.getElementsByTagName("link"),q=[],B=function(){for(var d=0;dk-w)c.clearTimeout(D),D=c.setTimeout(v,30);else{w=k;for(var j in n)if(n.hasOwnProperty(j)){d=n[j];var k=d.minw,g=d.maxw,r=null===k,l=null===g;k&&(k=parseFloat(k)*(-1=k)&&(l||a<=g))b[d.media]||(b[d.media]=[]),b[d.media].push(s[d.rules])}for(var m in p)p.hasOwnProperty(m)&&
p[m]&&p[m].parentNode===t&&t.removeChild(p[m]);for(var q in b)b.hasOwnProperty(q)&&(j=e.createElement("style"),m=b[q].join("\n"),j.type="text/css",j.media=q,t.insertBefore(j,f.nextSibling),j.styleSheet?j.styleSheet.cssText=m:j.appendChild(e.createTextNode(m)),p.push(j))}},C,y=!1;try{y=new c.XMLHttpRequest}catch(G){y=new c.ActiveXObject("Microsoft.XMLHTTP")}C=function(){return y};B();f.update=B;c.addEventListener?c.addEventListener("resize",g,!1):c.attachEvent&&c.attachEvent("onresize",g)}})(this);
};
var html5Elements = [
"article", "aside", "audio", "canvas", "command", "datalist", "details", "embed", "figcaption", "figure", "footer", "header", "hgroup", "keygen", "mark", "meter", "nav", "output", "progress", "rp", "rt", "ruby", "section", "source", "summary", "time", "video"
]
function getBrowser() {
// jquery code//
var ua = navigator.userAgent.toLowerCase();
var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
/(webkit)[ \/]([\w.]+)/.exec( ua ) ||
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
/(msie) ([\w.]+)/.exec( ua ) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
[];
var ver = match[ 2 ] || "0";
var fi = ver.indexOf('.');
var fi2 = ver.indexOf('.', fi);
if (fi2 != -1) {
ver = parseFloat(ver.substring(0, fi2));
}
return {
name: match[ 1 ] || "",
version: ver
};
}
function getScriptFolder() {
var scripts = document.getElementsByTagName('SCRIPT');
for (var i = 0; i < scripts.length; i++) {
var src = scripts[i].getAttribute('src');
if (src && src.indexOf('browser-compatibility.js') != -1) {
if (src.lastIndexOf('/') != -1) {
return src.substring(0, src.lastIndexOf('/') + 1);
} else {
return '';
}
}
}
}
function getSSFolder() {
var links = document.getElementsByTagName('LINK');
for (var i = 0; i < links.length; i++) {
var src = links[i].getAttribute('href');
if (src && src.indexOf('reset.css') != -1) {
if (src.lastIndexOf('/') != -1) {
return src.substring(0, src.lastIndexOf('/') + 1);
} else {
return 'stylesheets';
}
}
}
}
var browser = getBrowser();
var scriptFolder = getScriptFolder();
var ssFolder = getSSFolder();
function enableIEHTML5() {
if (browser.name == "msie" && browser.version <= 9) {
//create elements//
for (var i = 0; i < html5Elements.length; i++) {
document.createElement(html5Elements[i]);
}
}
}
function addEventListener(element, type, listener) {
if (element.addEventListener) {
element.addEventListener(type, listener, false);
} else if (element.attachEvent) {
element.attachEvent('on' + type, listener);
}
}
var addPropertyFails = {};
function addBehavior() {
function addPropertyInRules(ss, url) {
if (!addPropertyFails[url]) addPropertyFails[url] = 0;
if (!ss.rules.length) {
addPropertyFails[url]++;
if (ss.owningElement.readyState != "complete" && addPropertyFails[url] < 500) {
setTimeout( (function(ss, url) {
return function() {
addPropertyInRules(ss, url);
};
})(ss, url) , 10);
}
} else {
for (var j = ss.rules.length - 1; j >= 0; j--) {
var rule = ss.rules[j];
//if (PIE && PIE.version && parseInt(PIE.version) >= 2) {
/*var pieGradient = rule.style['-pie-background'];
if (pieGradient && pieGradient.indexOf('linear-gradient') != -1) {
pieGradient = pieGradient.replace(/linear-gradient\s*\(\s*top\s*,/gi, 'linear-gradient(to bottom,');
pieGradient = pieGradient.replace(/linear-gradient\s*\(\s*bottom\s*,/gi, 'linear-gradient(to top,');
pieGradient = pieGradient.replace(/linear-gradient\s*\(\s*left\s*,/gi, 'linear-gradient(to right,');
pieGradient = pieGradient.replace(/linear-gradient\s*\(\s*right\s*,/gi, 'linear-gradient(to left,');
rule.style['-pie-background'] = pieGradient;
}*/
//}
rule.style.behavior = "url(" + url + ")";
}
}
}
var links = document.getElementsByTagName('LINK');
for (var i = 0; i < links.length; i++) {
var href = links[i].getAttribute('href');
if (href) {
if (href.indexOf('-ie.css') != -1 && href.toLowerCase().indexOf(ssFolder.toLowerCase()) != -1) {
var url = href.substring(0, href.lastIndexOf('/')).replace('stylesheets', 'scripts') + "/PIE.htc";
addPropertyInRules(links[i].styleSheet, url);
}
}
}
var styles = document.getElementsByTagName('STYLE');
for (var i = 0; i < styles.length; i++) {
var style = styles[i];
if (style.title == "ie-style-css" || (style.innerHTML && style.innerHTML.indexOf('/* lte IE 9 style*/') != -1)) {
addPropertyInRules(style.styleSheet, scriptFolder + "PIE.htc")
}
}
}
function addIE7Fixes(el) {
var cStyle = el.currentStyle;
function hasFloatedSiblings() {
var next = el.nextSibling;
if (next && next.currentStyle && next.currentStyle.styleFloat == "left" && next.currentStyle.clear == "none") {
return true;
}
return false;
}
// fixes clear bug//
if (cStyle && (cStyle.clear == "both" || cStyle.clear == "left") && hasFloatedSiblings()) {
var newEl = document.createElement('div');
newEl.style.visibility = "hidden";
newEl.style.width = "0px";
newEl.style.height = "0px";
el.parentNode.insertBefore(newEl, el);
}
if (cStyle && cStyle.display == "inline-block") {
el.style.display = "inline";
el.style.zoom = 1;
}
if (cStyle && (cStyle.position == "relative" && cStyle.hasLayout) && cStyle.marginTop != "0px") {
el.style.top = cStyle.marginTop;
}
// a with auto inside inline-block will make the menu vertical//
if (cStyle && cStyle.styleFloat == "none" && cStyle.display == "block" && el.parentNode.currentStyle) {
var pDisplay = el.parentNode.currentStyle.display;
if ((pDisplay == "inline-block" || pDisplay == "inline") && el.parentNode.tagName != "HTML") {
el.style.display = "inline";
el.style.zoom = 1;
}
}
var children = el.childNodes;
for (var i = children.length -1 ; i >=0 ; i--) {
addIE7Fixes(children[i]);
}
}
function addIE6Fixes(el) {
var cStyle = el.currentStyle;
if (el.style) {
el.style.zoom = 1;
if (cStyle && (cStyle.height == "auto" || cStyle.minHeight != "auto")) {
el.style.height = cStyle.minHeight;
}
if (cStyle && (cStyle.styleFloat == "left" || cStyle.styleFloat == "right" || cStyle.display == "inline-block")) {
el.style.zoom = 1;
el.style.display = "inline";
}
// a with auto inside inline-block will make the menu vertical//
if (cStyle.styleFloat == "none" && cStyle.display == "block" && el.parentNode.currentStyle) {
var pDisplay = el.parentNode.currentStyle.display;
if ((pDisplay == "inline-block" || pDisplay == "inline") && el.parentNode.tagName != "HTML") {
el.style.display = "inline";
el.style.zoom = 1;
}
}
if (cStyle && (cStyle.styleFloat == "left" && cStyle.display == "block")) {
var newMargin = parseFloat(cStyle.marginRight);
if (isNaN(newMargin)) newMargin = 0;
el.style.marginRight = (newMargin - 3) + "px";
}
}
var children = el.childNodes;
for (var i = children.length -1 ; i >=0 ; i--) {
addIE6Fixes(children[i]);
}
}
enableIEHTML5();
/*
// comment it for beta//
//
if (browser.name == "msie" && browser.version < 7) {
var script = document.createElement('SCRIPT');
var scripts = document.getElementsByTagName('SCRIPT');
for (var i = 0; i < scripts.length; i++) {
var src = scripts[i].getAttribute('src');
if (src.indexOf('browser-compatibility.js') != -1) {
script.src = src.replace('browser-compatibility.js', 'ielte9.js');
scripts[i].parentNode.appendChild(script);
break;
}
}
}*/
var parsedLinks = [];
function linkWasParsed(link) {
for (var i = 0; i < parsedLinks.length; i++) {
if (parsedLinks[i] == link) {
return true;
}
}
return false;
}
function existsInHead(link) {
var links = document.getElementsByTagName('LINK');
for (var i = 0; i < links.length; i++) {
var href = links[i].getAttribute('href');
if (href == link) {
return true;
}
}
return false;
}
function addIE9Links(){
if (browser.name == "msie" && browser.version <= 9) {
var links = document.getElementsByTagName('LINK');
var length = links.length;
for (var i = 0; i < length; i++) {
var href = links[i].getAttribute('href');
if (!linkWasParsed(href)) {
parsedLinks.push(href);
//alert('ssFolder.toLowerCase()##' + ssFolder.toLowerCase());
if (href.indexOf('reset.css') == -1 && href.indexOf('-ie.css') == -1 && ssFolder && href.toLowerCase().indexOf(ssFolder.toLowerCase()) != -1) {
if (!existsInHead(href.replace('.css', '-ie.css'))){
document.createStyleSheet(href.replace('.css', '-ie.css'));
parsedLinks.push(href.replace('.css', '-ie.css'));
}
}
}
}
}
}
function scaleFactor() {
if (document.body) {
return document.documentElement.clientWidth/document.body.scrollWidth;
}
return 1;
}
function updateFMMobileDropdown() {
var selects = document.getElementsByTagName('select');
var selectNode, parentNode, menuName;
for(var i=0; i" + label + "";
}
}
selectNode.innerHTML = optionsHtml;
}
}
}
}
}
}
function moveLiquidColumns(el) {
var attr = (el.getAttribute && el.getAttribute("class")) || "";
if (!el.layoutsLiquid && attr.match(/(^|(\s+))liquid((\s+)|$)/i)) {
el.layoutsLiquid = true;
var prev = el.previousSibling;
while (prev) {
if (prev.nodeType == 1) {
break;
}
prev = prev.previousSibling;
}
// check if we are on mobile//
if (prev) {
var style = prev.currentStyle || window.getComputedStyle(prev);
if (style && (style['float'] == "none")) {
var match = attr.match(/(^|\s+)lindex-(\d+)($|\s+)/i);
if (match) {
var index = parseInt(match[2]);
while (index > 0 && prev) {
if (prev.nodeType == 1) {
index--;
if (index <= 0) {
break;
}
}
prev = prev.previousSibling;
}
el.parentNode.insertBefore(el, prev);
}
}
}
}
var children = el.childNodes;
for (var i = children.length -1 ; i >=0 ; i--) {
moveLiquidColumns(children[i]);
}
}
addIE9Links();
addEventListener(window, "load", function() {
if (location.protocol && location.protocol.indexOf("file") != -1 && browser.name == "msie" && browser.version < 9) {
alert("On IE7/IE8 local pages with media queries won't display correctly.");
}
// this is for link tags added after our script//
addIE9Links();
try {
media();
} catch (e) {
}
moveLiquidColumns(document.documentElement);
var scale = scaleFactor();
if (scale < 1) {
disableViewPortMeta(scale);
}
updateFMMobileDropdown();
if (browser.name == "msie" && browser.version == 6) {
addIE6Fixes(document.documentElement);
}
if (browser.name == "msie" && browser.version == 7) {
window.setTimeout(function() {
addIE7Fixes(document.documentElement);
addBehavior();
}, 1000);
}
if (browser.name == "msie" && browser.version <= 9 && browser.version != 7) {
addBehavior();
}
});
})();