/* CDN URL: http://static.datacenterdynamics.com/assets/js_file/0010/712/misc.js */

function urlDecode(str) {
   str = str.replace(new RegExp('\\+', 'g'), ' ');
   return unescape(str);
}

function urlEncode(str) {
   str = escape(str);
   str = str.replace(new RegExp('\\+', 'g'), '%2B');
   return str.replace(new RegExp('%20', 'g'), '+');
}

var END_OF_INPUT = -1;

var base64Chars = new Array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/');

var reverseBase64Chars = new Array();
for (var i = 0; i < base64Chars.length; i++) {
   reverseBase64Chars[base64Chars[i]] = i;
}

var base64Str;
var base64Count;

function setBase64Str(str) {
   base64Str = str;
   base64Count = 0;
}

function readBase64() {
   if (!base64Str) return END_OF_INPUT;
   if (base64Count >= base64Str.length) return END_OF_INPUT;
   var c = base64Str.charCodeAt(base64Count) & 0xff;
   base64Count++;
   return c;
}

function encodeBase64(str) {
   setBase64Str(str);
   var result = '';
   var inBuffer = new Array(3);
   var lineCount = 0;
   var done = false;
   while (!done && (inBuffer[0] = readBase64()) != END_OF_INPUT) {
      inBuffer[1] = readBase64();
      inBuffer[2] = readBase64();
      result += (base64Chars[inBuffer[0] >> 2]);
      if (inBuffer[1] != END_OF_INPUT) {
         result += (base64Chars[((inBuffer[0] << 4) & 0x30) | (inBuffer[1] >> 4)]);
         if (inBuffer[2] != END_OF_INPUT) {
            result += (base64Chars[((inBuffer[1] << 2) & 0x3c) | (inBuffer[2] >> 6)]);
            result += (base64Chars[inBuffer[2] & 0x3F]);
         } else {
            result += (base64Chars[((inBuffer[1] << 2) & 0x3c)]);
            result += ('=');
            done = true;
         }
      } else {
         result += (base64Chars[((inBuffer[0] << 4) & 0x30)]);
         result += ('=');
         result += ('=');
         done = true;
      }
      lineCount += 4;
      if (lineCount >= 76) {
         result += ('\n');
         lineCount = 0;
      }
   }
   return result;
}

function readReverseBase64() {
   if (!base64Str) return END_OF_INPUT;
   while (true) {
      if (base64Count >= base64Str.length) return END_OF_INPUT;
      var nextCharacter = base64Str.charAt(base64Count);
      base64Count++;
      if (reverseBase64Chars[nextCharacter]) {
         return reverseBase64Chars[nextCharacter];
      }
      if (nextCharacter == 'A') return 0;
   }
   return END_OF_INPUT;
}

function ntos(n) {
   n = n.toString(16);
   if (n.length == 1) n = "0" + n;
   n = "%" + n;
   return unescape(n);
}

function decodeBase64(str) {
   setBase64Str(str);
   var result = "";
   var inBuffer = new Array(4);
   var done = false;
   while (!done && (inBuffer[0] = readReverseBase64()) != END_OF_INPUT && (inBuffer[1] = readReverseBase64()) != END_OF_INPUT) {
      inBuffer[2] = readReverseBase64();
      inBuffer[3] = readReverseBase64();
      result += ntos((((inBuffer[0] << 2) & 0xff) | inBuffer[1] >> 4));
      if (inBuffer[2] != END_OF_INPUT) {
         result += ntos((((inBuffer[1] << 4) & 0xff) | inBuffer[2] >> 2));
         if (inBuffer[3] != END_OF_INPUT) {
            result += ntos((((inBuffer[2] << 6) & 0xff) | inBuffer[3]));
         } else {
            done = true;
         }
      } else {
         done = true;
      }
   }
   return result;
}

var digitArray = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');

function toHex(n) {
   var result = ''
   var start = true;
   for (var i = 32; i > 0;) {
      i -= 4;
      var digit = (n >> i) & 0xf;
      if (!start || digit != 0) {
         start = false;
         result += digitArray[digit];
      }
   }
   return (result == '' ? '0' : result);
}

function pad(str, len, pad) {
   var result = str;
   for (var i = str.length; i < len; i++) {
      result = pad + result;
   }
   return result;
}

function encodeHex(str) {
   var result = "";
   for (var i = 0; i < str.length; i++) {
      result += pad(toHex(str.charCodeAt(i) & 0xff), 2, '0');
   }
   return result;
}

var hexv = {
   "00": 0,
   "01": 1,
   "02": 2,
   "03": 3,
   "04": 4,
   "05": 5,
   "06": 6,
   "07": 7,
   "08": 8,
   "09": 9,
   "0A": 10,
   "0B": 11,
   "0C": 12,
   "0D": 13,
   "0E": 14,
   "0F": 15,
   "10": 16,
   "11": 17,
   "12": 18,
   "13": 19,
   "14": 20,
   "15": 21,
   "16": 22,
   "17": 23,
   "18": 24,
   "19": 25,
   "1A": 26,
   "1B": 27,
   "1C": 28,
   "1D": 29,
   "1E": 30,
   "1F": 31,
   "20": 32,
   "21": 33,
   "22": 34,
   "23": 35,
   "24": 36,
   "25": 37,
   "26": 38,
   "27": 39,
   "28": 40,
   "29": 41,
   "2A": 42,
   "2B": 43,
   "2C": 44,
   "2D": 45,
   "2E": 46,
   "2F": 47,
   "30": 48,
   "31": 49,
   "32": 50,
   "33": 51,
   "34": 52,
   "35": 53,
   "36": 54,
   "37": 55,
   "38": 56,
   "39": 57,
   "3A": 58,
   "3B": 59,
   "3C": 60,
   "3D": 61,
   "3E": 62,
   "3F": 63,
   "40": 64,
   "41": 65,
   "42": 66,
   "43": 67,
   "44": 68,
   "45": 69,
   "46": 70,
   "47": 71,
   "48": 72,
   "49": 73,
   "4A": 74,
   "4B": 75,
   "4C": 76,
   "4D": 77,
   "4E": 78,
   "4F": 79,
   "50": 80,
   "51": 81,
   "52": 82,
   "53": 83,
   "54": 84,
   "55": 85,
   "56": 86,
   "57": 87,
   "58": 88,
   "59": 89,
   "5A": 90,
   "5B": 91,
   "5C": 92,
   "5D": 93,
   "5E": 94,
   "5F": 95,
   "60": 96,
   "61": 97,
   "62": 98,
   "63": 99,
   "64": 100,
   "65": 101,
   "66": 102,
   "67": 103,
   "68": 104,
   "69": 105,
   "6A": 106,
   "6B": 107,
   "6C": 108,
   "6D": 109,
   "6E": 110,
   "6F": 111,
   "70": 112,
   "71": 113,
   "72": 114,
   "73": 115,
   "74": 116,
   "75": 117,
   "76": 118,
   "77": 119,
   "78": 120,
   "79": 121,
   "7A": 122,
   "7B": 123,
   "7C": 124,
   "7D": 125,
   "7E": 126,
   "7F": 127,
   "80": 128,
   "81": 129,
   "82": 130,
   "83": 131,
   "84": 132,
   "85": 133,
   "86": 134,
   "87": 135,
   "88": 136,
   "89": 137,
   "8A": 138,
   "8B": 139,
   "8C": 140,
   "8D": 141,
   "8E": 142,
   "8F": 143,
   "90": 144,
   "91": 145,
   "92": 146,
   "93": 147,
   "94": 148,
   "95": 149,
   "96": 150,
   "97": 151,
   "98": 152,
   "99": 153,
   "9A": 154,
   "9B": 155,
   "9C": 156,
   "9D": 157,
   "9E": 158,
   "9F": 159,
   "A0": 160,
   "A1": 161,
   "A2": 162,
   "A3": 163,
   "A4": 164,
   "A5": 165,
   "A6": 166,
   "A7": 167,
   "A8": 168,
   "A9": 169,
   "AA": 170,
   "AB": 171,
   "AC": 172,
   "AD": 173,
   "AE": 174,
   "AF": 175,
   "B0": 176,
   "B1": 177,
   "B2": 178,
   "B3": 179,
   "B4": 180,
   "B5": 181,
   "B6": 182,
   "B7": 183,
   "B8": 184,
   "B9": 185,
   "BA": 186,
   "BB": 187,
   "BC": 188,
   "BD": 189,
   "BE": 190,
   "BF": 191,
   "C0": 192,
   "C1": 193,
   "C2": 194,
   "C3": 195,
   "C4": 196,
   "C5": 197,
   "C6": 198,
   "C7": 199,
   "C8": 200,
   "C9": 201,
   "CA": 202,
   "CB": 203,
   "CC": 204,
   "CD": 205,
   "CE": 206,
   "CF": 207,
   "D0": 208,
   "D1": 209,
   "D2": 210,
   "D3": 211,
   "D4": 212,
   "D5": 213,
   "D6": 214,
   "D7": 215,
   "D8": 216,
   "D9": 217,
   "DA": 218,
   "DB": 219,
   "DC": 220,
   "DD": 221,
   "DE": 222,
   "DF": 223,
   "E0": 224,
   "E1": 225,
   "E2": 226,
   "E3": 227,
   "E4": 228,
   "E5": 229,
   "E6": 230,
   "E7": 231,
   "E8": 232,
   "E9": 233,
   "EA": 234,
   "EB": 235,
   "EC": 236,
   "ED": 237,
   "EE": 238,
   "EF": 239,
   "F0": 240,
   "F1": 241,
   "F2": 242,
   "F3": 243,
   "F4": 244,
   "F5": 245,
   "F6": 246,
   "F7": 247,
   "F8": 248,
   "F9": 249,
   "FA": 250,
   "FB": 251,
   "FC": 252,
   "FD": 253,
   "FE": 254,
   "FF": 255
};

function decodeHex(str) {
   str = str.toUpperCase().replace(new RegExp("s/[^0-9A-Z]//g"));
   var result = "";
   var nextchar = "";
   for (var i = 0; i < str.length; i++) {
      nextchar += str.charAt(i);
      if (nextchar.length == 2) {
         result += ntos(hexv[nextchar]);
         nextchar = "";
      }
   }
   return result;

}
//-----------------------------------------------------------------------

/* ---- GLOBAL VARIABLES ---- */

var fetured_news;
var fetured_news_count;
var current_sponsor = 0;
var current_partner = 0;


function ucwords(str) { /* Credit to phpjs */
   return (str + '').replace(/^([a-z])|\s+([a-z])/g, function ($1) {
      return $1.toUpperCase();
   });
}


/* ---- DOCUMENT READY BEGIN ---- */
jQuery(document).ready(function () {

	load_videos_ajax();
	load_videos_conferences();


   /* Start Global Nav Home Hover */
   jQuery("#global_nav li.navHome").hover(function () {
      jQuery(this).addClass('hover');
   }, function () {
      jQuery(this).removeClass('hover');
   }); /* End Global Nav Home Hover */


   /* --- LATAM TRANSLATION --- */
   //var $thisUrlAddress = window.location.href;
   //var $thisUrlAddress = $thisUrlAddress.search(/lang=es/);

   var windowMonthLoc = window.location.href;
   var $esMonthAddress = windowMonthLoc.search(/lang=es/);

   if ($esMonthAddress != -1) { /* Replacing month names to spanish while on Latam */

      var $selText = $('.infobar_left p').eq(0).text();
      var $prinText = $selText.replace('January', 'enero').replace('February','febrero').replace('March','marzo').replace('April','abril')      .replace('May', 'mayo').replace('June', 'junio').replace('July', 'julio').replace('August', 'agosto').replace('September', 'septiembre').replace('October', 'octubre').replace('November', 'noviembre').replace('December', 'diciembre');
      $('.infobar_left p').text($prinText);


      /* Replacing month names to spanish while on Latam - END */
   } /* --- LATAM TRANSLATION END--- */

   /* -- Removes Whitespaces and changes to Lowercase all chars in LoginBox -- */
   jQuery('#SQ_LOGIN_USERNAME').keyup(function () {
      var str = $(this).val();
      str = str.replace(/ /g, '');
      $(this).val(str.toLowerCase());
   });

   /* Fixes Context switching issue from en to default */
   var href_address = window.location.href;
   var $isEnglish = href_address.search(/\?lang=en/);
   if ($isEnglish != -1) {
      var $pureHref = href_address.split('?');
      jQuery('.linkleftcol_content a.lang_switch').attr('href', $pureHref[0]);
      jQuery('#inner_col1 ul.inner_menu_dark li a').each(function () {
         var $that_url = jQuery(this).attr('href');
         $that_url += '?lang=en';
         jQuery(this).attr('href', $that_url);
      });
   }



   /* Useless */
/*
    if(!Array.indexOf){
             Array.prototype.indexOf = function(obj){
                 for(var i=0; i<this.length; i++){
                     if(this[i]==obj){
                         return i;
                     }
                 }
                 return -1;
             }
         }
    */

   /*Flash embed mod*/
   $("embed").attr("wmode", "opaque");

   /*Flash embed mod IE*/
   $(document).ready(function () {
      var embedTag;
      $("embed").each(function (i) {
         embedTag = $(this).attr("outerHTML");
         if ((embedTag != null) && (embedTag.length > 0)) {
            embedTag = embedTag.replace(/embed /gi, "embed wmode=\"opaque\" ");
            $(this).attr("outerHTML", embedTag);
         }
      });
   });



   /* MyDCD Global Navigation active element */
   if (jQuery('input#is_mydcd').length > 0) {
      jQuery('#global_nav ul li:last').addClass('ccCurrent');
   }

   /* All links with class external should be open in new window */
   jQuery('a.external').each(function () {
      jQuery(this).attr('target', '_blank');
   });

   /* Tweaks Reset Password styles a little bit */
   /* jQuery('div#passwordReset input:eq(0)').after('<br /><br /><div class="clear"></div><p>Re-type Password:</p>');*/

   /* open External Feeds links from Funnelback search in new window */
   jQuery('li.external_link a').attr('target', '_blank');

   /* Start Print Links */
   jQuery("a.printer").each(function () {
      var href_char = '&';
      if (window.location.href.indexOf('?') == -1) {
         href_char = '?';
      }
      jQuery(this).attr('href', window.location.href + href_char + "SQ_DESIGN_NAME=print");
   }); /* End Print Links */

   /* begin Country Dropdown */
   	var country_container = jQuery("#countries_content");
	var country_loader = country_container.find(".loader_container");
   jQuery('#country1').toggle(function(event){
      event.preventDefault();
      jQuery(this).parent('#top_country').addClass("selected");
      jQuery('#top_lang_dropdown').removeClass("selected");
		if(!country_container.find("#country_missing").length){
	        jQuery.ajax({
	          url: "/?a=182929&SQ_DESIGN_NAME=blank",
	          context: document.body,
	          success: function(data){
	            country_loader.hide();
	            country_container.html(data);
	          },
	          beforeSend:function(){
	            country_loader.show();
	          }
	        });
	    }
   },function(event){
      event.preventDefault();
      jQuery(this).parent('#top_country').removeClass("selected");
   });

   jQuery('#countries').mouseleave(function () {
      jQuery('#top_country').removeClass("selected");
   }); /* end Country Dropdown */


   /* begin Language Dropdown */
   jQuery('#top_lang_dropdown1').toggle(function (event) {
      event.preventDefault();
      jQuery(this).parent('#top_lang_dropdown').addClass("selected");
      jQuery('#top_country').removeClass("selected");

   }, function (event) {
      event.preventDefault();
      jQuery(this).parent('#top_lang_dropdown').removeClass("selected");
   });

   jQuery('#languages').mouseleave(function () {
      jQuery('#top_lang_dropdown').removeClass("selected");
   }); /* end Language Dropdown */



   /* Dynamically Control top infobar */
   if (jQuery('#inner_content').length) {
      if (jQuery('#inner_content').height() < 500) {
         jQuery('div.icons').hide();
      }
   }


   /* COMMENT MODULE */
   /* Moves comments amount number before asset builder in Comments module */
   jQuery('#comments').children('h4.comments_count').insertBefore('#comments form');


   /* Bookmarks link - NOT Add to Bookmarks */
   jQuery('a.icon_bookmark[title*="Bookmark"]', jQuery('.infobar_content2')).click(function (clickEvent) {
      clickEvent.preventDefault();
      AddToBookmarks();
   });

   /*BEGIN Add to MyDCD links checking */

   function gpInc(user_url) {
      //console.log(user_url);
      jQuery.ajax({
         type: "GET",
         url: user_url,
         success: function (html) {
            $.fancybox.close();
            jQuery('.infobar_left').prepend('<span id="add_disc_cont"><span id="add_disc_cont"><a class="link" href="?SQ_PAINT_LAYOUT_NAME=premium">Add a Discussion</a></span>');
            $.pnotify({
               pnotify_title: 'DatacenterDynamics',
               pnotify_text: 'You were successfully added to this group.'
            });
            jQuery('#discussions_activity a, #discussions_activity span').each(function () {
               if (jQuery(this).html().indexOf("Members") != -1) {
                  var text = jQuery(this).text();
                  text = text.split('(');
                  text[1] = text[1].replace(")", "");
                  text[1] = parseInt(text[1]);
                  text[1]++;
                  jQuery(this).html(text[0] + "(" + text[1] + ")");
               }
            });
         }
      });
   }

   function gpAdd(add_url, user_url) {
      jQuery.ajax({
         type: "GET",
         url: add_url,
         success: function (html) {
            gpInc(user_url);
         }
      });
   }


   if (jQuery('a.icon_mydcd').length) {
      if (jQuery('a.icon_mydcd').attr('href').indexOf("login") == -1) {
         var al_added = 0;
         var link_list = new Array();
         var $ajaxDone = false;
         var basic = false;
         if (jQuery('input#links_list').length && jQuery('input#links_list').val() != "") {
            link_list = jQuery('input#links_list').val().split(',');
            for (var i = 0 in link_list) {
               if (link_list[i] == jQuery('input#current_id').val()) al_added = 1;
            }
         }
         if (jQuery('a.icon_mydcd').attr('href') == "#") {
            // al_added=1;
            basic = true;
         }

         jQuery('a.icon_mydcd').live("click", function (event) {
            event.preventDefault();
            var add_url = jQuery('a.icon_mydcd').attr('href');
            if (al_added == 1) {
               if (window.location.href.indexOf("discussions") == -1) $.pnotify({
                  pnotify_title: 'DatacenterDynamics',
                  pnotify_text: 'This link is already present in your DCD Bookmarks.'
               });
               else
               $.pnotify({
                  pnotify_title: 'DatacenterDynamics',
                  pnotify_text: 'You already are in this group.'
               });
            } else if (basic) $.pnotify({
               pnotify_title: 'DatacenterDynamics',
               pnotify_text: 'Silver Members of MYDCD can join a maximum of 5 groups, if you would like to increase this number you will need to upgrade your membership to do this please click on "up grade my status" link on your MYDCD home page.'
            });

            if (al_added != 1 && !basic) {
               var conf_text = "";
               if (!jQuery('#is_discussion').length) {
                  conf_text = "Add to MyDCD?";
                  if (confirm(conf_text)) {
                     $.fancybox({
                        'autoDimensions': false,
                        'width': 350,
                        'height': 'auto',
                        'hideOnOverlayClick': false,
                        'showCloseButton': false,
                        'href': '#popup-loader'
                     });
                     al_added = 1;
                     jQuery.ajax({
                        type: "GET",
                        url: add_url,
                        success: function (html) {
                           $.fancybox.close();
                           $.pnotify({
                              pnotify_title: 'DatacenterDynamics',
                              pnotify_text: 'Link was successfully added to your DCD Bookmarks.'
                           });
                        }
                     });
                  }
               } else {
                  var user_url = jQuery('input#user_url').val();
                  var userInfo;
                  conf_text = "Join this group?";
                  if (confirm(conf_text)) {
                     if (user_url != '') {
                        $.fancybox({
                           'autoDimensions': false,
                           'width': 350,
                           'height': 'auto',
                           'hideOnOverlayClick': false,
                           'showCloseButton': false,
                           'href': '#popup-loader'
                        });
                        user_url += "/_nocache?SQ_DESIGN_NAME=blank&SQ_PAINT_LAYOUT_NAME=groups";
                        jQuery.ajax({
                           type: "GET",
                           url: user_url,
                           success: function (html) {
                              userInfo = html;
                              userInfo = userInfo.split(";");
                              userInfo[0] = parseInt(userInfo[0]);
                              if (userInfo[0] >= 5 && userInfo[1].indexOf("silver") != -1) {
                                 basic = true;
                                 $.fancybox.close();
                                 $.pnotify({
                                    pnotify_title: 'DatacenterDynamics',
                                    pnotify_text: 'Silver Members of MYDCD can join a maximum of 5 groups, if you would like to increase this number you will need to upgrade your membership to do this please click on "up grade my status" link on your MYDCD home page.'
                                 });
                              } else {
                                 al_added = 1;
                                 userInfo[0] += 2;
                                 user_url += "&groupspcs=" + userInfo[0];
                                 add_url += '&SQ_DESIGN_NAME=blank';
                                 jQuery('.discussion_join').addClass('hide');
                                 gpAdd(add_url, user_url);
                              }
                           }
                        });

                     };
                  };
               } //end else
            }
         });
      }
   }
   jQuery('a.basic_group_inc').click(function (event) {
      event.preventDefault();
      $.pnotify({
         pnotify_title: 'DatacenterDynamics',
         pnotify_text: 'Silver Members of MYDCD can join a maximum of 5 groups, if you would like to increase this number you will need to upgrade your membership to do this please click on "up grade my status" link on your MYDCD home page.'
      });
   }); /*END Add to MyDCD links checking */

   /*Begin removing user from group*/

   function gpDec(user_url) {
      jQuery.ajax({
         type: "GET",
         url: user_url,
         success: function (html) {
            jQuery('#popup-loader').addClass("hide");
            var text = jQuery('#linkManager').find('ul li:eq(1)').text();
            $.pnotify({
               pnotify_title: 'DatacenterDynamics',
               pnotify_text: 'You were successfully removed from selected group/ groups'
            });
         }
      });
   }

   if (window.location.href.indexOf("group-manager") != -1 && jQuery('#linkManager').find('ul li:eq(1)').text().indexOf("Successfully") != -1) {
      jQuery('#popup-loader').removeClass("hide");
      var user_url = jQuery('#userUrl').val();
      var userInfo;
      user_url += "/_nocache?SQ_DESIGN_NAME=blank&SQ_PAINT_LAYOUT_NAME=groups";
      jQuery.ajax({
         type: "GET",
         url: user_url,
         success: function (html) {
            userInfo = html;
            userInfo = userInfo.split(";");
            userInfo[0] = parseInt(userInfo[0]);
            userInfo[0]++;
            user_url += "&groupspcs=" + userInfo[0];
            gpDec(user_url);
         }
      });
   } /*End removing user from group*/

   /* --- FOCUS - ARCHIVE --- */
   /* Archive Node Selector */
   jQuery('select#archive_node_selector').change(function () {
      window.location = jQuery(this).val();
   }); /* Sets proper element active in Archive Node Selector */
   jQuery('select#archive_node_selector option[label="' + jQuery('input#this_archive_place', jQuery('div#inner_content')).val() + '"]', jQuery('div#inner_content')).attr('selected', 'selected');


   /* FOCUS - IMAGES SLIDES */
   jQuery('div.news_images .thumbs ul li a').hover(function (event) {
      event.preventDefault();
      var $thumb = jQuery(this).attr('class').substring(3, jQuery(this).attr('class').length);

      jQuery('div.news_images div.images div[id*="image"]').addClass('hide');
      jQuery('div.news_images div.images div#image' + $thumb + '').removeClass('hide').show();
   });


   /* FOCUS - NEWS IMAGES - DESCRIPTION */
/*
var news_images_description_top = jQuery('div.news_images div.image:first').children('div').position();
if (news_images_description_top != null) {
  news_images_description_top = news_images_description_top.top;
  var news_images_description_top_visible = news_images_description_top - 94;
}

jQuery('div.news_images div.image').hover(function() {
     jQuery(this).children('div').stop();
     var current_top = jQuery(this).children('div').position().top;
     var top_differece =  current_top - news_images_description_top_visible;
     if (top_differece==0) top_differece=94;
     news_images_timer = setTimeout( function() {
       jQuery("div.news_images div.image:visible").children('div').animate({"top": "-="+ top_differece +"px"}, "slow");
     }, 300);
},function() {
     clearTimeout(news_images_timer);
     jQuery(this).children('div').stop();
     var current_top = jQuery(this).children('div').position().top;
     var top_differece = news_images_description_top - current_top;
     if (top_differece==0) top_differece=94;
     jQuery(this).children('div').animate({"top": "+="+ top_differece + "px"}, "slow");
});
*/
   /* END FOCUS - NEWS IMAGES - DESCRIPTION */



   /* RHS Multi Card box SWITCHER */
	var news_tabs_urls = {
		0 : "",
		1 : "/?a=134122&SQ_DESIGN_NAME=blank",
		2 : "/?a=134124&SQ_DESIGN_NAME=blank"
	};
	var related_items_urls = {
		0: "",
		1: "/_nocache?a=61994&SQ_DESIGN_NAME=blank",
		2 : "/_nocache?a=60628&SQ_DESIGN_NAME=blank"
	}
         jQuery('div.col3_news ul.col3_tabs li a').click(function(event){
		event.preventDefault();
		var $this_box = jQuery(this).parents('div.col3_news');
		jQuery(this).parent('li').addClass('current').siblings('li').removeClass('current');
		var $card_no = jQuery(this).parent('li').attr('id');
		$card_no = $card_no.substring($card_no.length-1,$card_no.length);
		$card_no--;
		jQuery($this_box).find('ol').addClass('hide');
		var $cur_container = jQuery($this_box).find('ol:eq('+$card_no+')"');
		$cur_container.removeClass("hide");
		var $url_ajax;

		if(jQuery("div.col3_news").hasClass("related_items")){
			var suffix;
			if($card_no !== 0){
				suffix = $("#related_items_query_"+($card_no + 1)).val();
			}
			$url_ajax = related_items_urls[$card_no]+"&query="+suffix;
		}else{
			$url_ajax = news_tabs_urls[$card_no];
		}

		var $loader_div = $this_box.find(".loader-lhs");
		if(typeof $url_ajax === "string" && !$cur_container.find("li").length){
			jQuery.ajax({
	          url: $url_ajax,
	          context: document.body,
	          success: function(data){
	            $loader_div.hide();
	            $cur_container.html(data);

	          },
	          beforeSend:function(){
	            $loader_div.show();
	          }
	        });
		}
	});


   /* LHS Multi Card box SWITCHER */
   jQuery('div.home-tab-container ul.home_tabs li a').click(function (event) {
      event.preventDefault();
      var $this_box = jQuery(this).parents('div.home-tab-container');
      jQuery(this).parent('li').addClass('current').siblings('li').removeClass('current');
      var $card_no = jQuery(this).parent('li').attr('id');
      $card_no = $card_no.substring($card_no.length - 1, $card_no.length);
      $card_no--;
      //console.log($this_box);
      jQuery($this_box).find('ol').addClass('hide');
      jQuery($this_box).find('ol:eq(' + $card_no + ')"').removeClass('hide');
   });



   /* Simple Edit Multi Card box SWITCHER */
   jQuery('div.se_tabs ul.col3_tabs li.se_tabs_li a').click(function (event) {
      event.preventDefault();
      var $this_box = jQuery(this).parents('div.se_tabs_container');
      jQuery(this).parent('li').addClass('current').siblings('li').removeClass('current');
      var $card_no = jQuery(this).parent('li').attr('id');
      $card_no = $card_no.substring($card_no.length - 1, $card_no.length);
      $card_no--;
      jQuery($this_box).find('.se_tab').removeClass('block');
      jQuery($this_box).find('.se_tab:eq(' + $card_no + ')"').addClass('block');
   });

   /* Focus - Related Stories show-hide functionality */
   jQuery('.theme_container a.theme').click(function (event) {
      event.preventDefault();
      jQuery(this).next('div.theme_related').removeClass('hide');
      jQuery(this).parent(".theme_container").parent("li").next('li').find('.theme_container').css('position', 'static');

   });
   jQuery('.theme_container a.theme_opened').click(function (event) {
      event.preventDefault();
      jQuery(this).parent('div.theme_related').addClass('hide');
      jQuery(this).parents(".theme_container").parent("li").next('li').find('.theme_container').css('position', 'relative');
   });


   /*BEGIN Move See releated Videos */

   var html_incon = jQuery('div#see_related').html();
   if (html_incon) {
      if (jQuery('div#inner_content p').length > 2) {
         jQuery('div#see_related').remove();
         jQuery('div#inner_content p:eq(' + (Math.round(jQuery('div#inner_content p').length / 2) - 1) + ')').after('<div class="box_incontent">' + html_incon + '</div>');
      }
   } /*END Move See releated Videos*/


   /*BEGIN Upcoming traning IE6 hover */
   if (jQuery.browser.msie && jQuery.browser.version.substr(0, 1) < 7) {
      jQuery('ul.upcoming li').hover(

      function () {
         jQuery(this).addClass('hover');
         jQuery(this).children('a').css('display', 'block');
      }, function () {
         jQuery(this).removeClass('hover');
         jQuery(this).children('a').removeAttr('style');
      });
   }; /*END Upcoming traning IE6 hover */


   jQuery('ul.upcoming li').click(function () {
      window.location = jQuery(this).find('a:first').attr('href');
   });


   $(".replace_speaker_name").each(function () {
      $(this).html(unescape(decodeURI($(this).html())));
   });


   if (/*1 == 1*/ jQuery('table.schedule').length > 0 ) {
      //if($(".language_hidden").html()=="RU"||$(".language_hidden").html()=="CN"||$(".language_hidden").html()=="PT"||1==1||$(".language_hidden").html()=="FR") || ($(".language_hidden").html()=="TR")){
      jQuery('table.schedule').hide();

      $(".schedule .hidden_span").each(function () {

         if (unescape(decodeURI($(this).html())) != "null") {

/*
$(this).find(".stitle").each(function() {/
	var content = $(this).html();
	content = decodeBase64(content);
	content = content.replace(/\+/ig," ");
//	content = decodeURI(content);
//	content = unescape(content);

	$(this).html(content);

});
*/
            $(this).parent('p').parent('td.desc').children('p:first').html(unescape(decodeURI($(this).html())));
            $(this).parent('p').parent('td.desc').children('div.info_popup').children('p.info_popup_title').html(unescape(decodeURI($(this).html())));
         }
         $(this).parent('p').parent('td.desc').children('div.info_popup').each(function () {
            var text_to_add = "";
            if ($(this).children(".info_popup_title").html() != "") text_to_add = $(this).children(".info_popup_title").html();
            else if ($(this).parents("td").find("a p").html() != null) text_to_add = $(this).parents("td").find("a p").html();
            else text_to_add = $(this).parents("td").find("a div").html();
            text_to_add += "<p class='info_popup_text'>";
            if (unescape(decodeURI(($(this).find(".text_hidden").html()))) != "null") text_to_add += unescape(decodeURI(($(this).find(".text_hidden").html())));
            text_to_add += "</p><p class='info_popup_speaker'>";
            if ($(this).find(".info_popup_speaker").html() != null) text_to_add += $(this).find(".info_popup_speaker").html();
            text_to_add += "</p><div class='icons_container'>" + $(this).find(".icons_container").html() + "</div>";
            $(this).html(text_to_add);
         });
      });
      var toChange = new Array();
      toChange[0] = "stitle";
      toChange[1] = "firstname";
      toChange[2] = "secondname";
      toChange[3] = "position";
      toChange[4] = "company";
      toChange[5] = "cleartitle";
      toChange[6] = "innerpopup";
      toChange[7] = "sessionContent";

      for (i = 0; i <= toChange.length; i++) {

         $('.' + toChange[i]).each(function () {
            var content = $(this).html();

            content = decodeBase64(content);
            content = content.replace(/\+/ig, " ");
            //console.log(content);
            content = decodeURI(content);
            content = unescape(content);
            content = content.replace(/\\\"/ig, '"');
            content = content.replace(/\\\'/ig, "'");

            $(this).html(content);
         });

      }



      jQuery('table.schedule').show();
   } else {
      $(".schedule .title_hidden").remove();
      $(".schedule .hidden_span").remove()
   }

   /* End Russian language schedule */


/*
if($('span[class^=insert_special_character]').length){
   jQuery('table.schedule').hide();
   $(".insert_special_character1").html("°");
   $(".insert_special_character2").html("²");
   jQuery('table.schedule').show();
}*/

   jQuery('table.schedule').removeClass("hide");

   /* begin schedule_popup */
   jQuery('.schedule td p a:not(".speaker")').live("mouseenter", function () {

      var $PropFormatTitle = jQuery(this).parents("td").children("p").children("a.stitle").html();
      jQuery(this).parents("td").children(".info_popup").children("p.info_popup_title").html($PropFormatTitle);

      jQuery(this).parents("td").children(".info_popup").children("p.info_popup_title").next("p:not('.info_popup_speaker')").remove();
      jQuery(this).parents("td").children(".info_popup").children('span.title_hidden').remove();

      var info_popup = jQuery(this).parents("td").children(".info_popup").html();
      if (info_popup != null) {
         jQuery("#schedule_popup").html(info_popup);

         jQuery('#schedule_popup p.info_popup_speaker a').click(function (event) {
            event.preventDefault();
            var query_sign = "&";
            if (window.location.href.indexOf('?') == -1) query_sign = "?";
            window.location = window.location.href + query_sign + "SQ_DESIGN_NAME=speaker&url2=" + jQuery(this).attr('href');
         });

         var link_position = jQuery(this).position();
         var link_height = jQuery(this).height();
         var link_left = link_position.left;
         var box_width = 322;
         var document_width = 0;

         //IE
         if (!window.innerWidth) {
            //strict mode
            if (!(document.documentElement.clientWidth == 0)) {
               document_width = document.documentElement.clientWidth;
            }
            //quirks mode
            else {
               document_width = document.body.clientWidth;
            }
         }
         //w3c
         else {
            document_width = window.innerWidth;
         }

         var box_position_top = link_position.top + link_height + 10;
         var box_left_offset = 50;

         var box_position_left = link_left + box_left_offset;

         jQuery("#schedule_popup").css("top", box_position_top + "px");

         if (box_position_left + box_width + 200 >= document_width) {
            box_position_left = document_width - box_width - 200;
         }
         jQuery("#schedule_popup").css("left", box_position_left + "px");

         jQuery("#schedule_popup").addClass("block");
      }
   });

   jQuery('#schedule_popup').live("mouseleave", function () {
      jQuery(this).removeClass("block");
   });

   /* end schedule_popup */

   /*BEGIN Add to Calendar*/
   if (jQuery('a.add_to_cal').length) {
      if (jQuery('a.add_to_cal').attr('href').search('login') == -1 && jQuery('input#links_list').length) {
         var al_added = 0;
         var link_list = new Array();
         if (jQuery('input#links_list').length != 0) {
            link_list = jQuery('input#links_list').val().split(',');
            for (var i = 0 in link_list) {
               if (link_list[i] == jQuery('input#conf_asset_id').val()) al_added = 1;
            }
            if (al_added) {
               jQuery('a.add_to_cal').click(function (event) {
                  event.preventDefault();
                  $.pnotify({
                     pnotify_title: 'DatacenterDynamics',
                     pnotify_text: 'This event is already present in your Calendar.'
                  });
               });
            } else {
               jQuery('a.add_to_cal').click(function (event) {
                  event.preventDefault();
                  if (confirm("Add to Calendar?")) {
                     var l_url = jQuery('input#conf_asset_url').val();
                     if (l_url != '') {
                        l_url += "?addlink=callendar";
                        jQuery.ajax({
                           type: "GET",
                           url: l_url,
                           success: function (html) {
                              window.location.reload();
                              $.pnotify({
                                 pnotify_title: 'DatacenterDynamics',
                                 pnotify_text: 'Event was successfully added to your Calendar.'
                              });
                           }
                        });
                     };
                  };
               });
            }
         }
      } else {
         jQuery('a.add_to_cal').click(function (event) {
            event.preventDefault();
            $.pnotify({
               pnotify_title: 'DatacenterDynamics',
               pnotify_text: 'You must be logged in.'
            });
         });
      }

   } /*END Add to Calendar*/


   /*BEGIN Sponsors changning*/
   if (jQuery('div.sponsor2 a.plsponsor').length > 1) {
      var sponsor_interval = self.setInterval("changePSponsor(jQuery('div.sponsor2 a.plsponsor').length);", 1500);
   } /*END Sponsors changning*/

   /* Start Awards - Photo Album */
   var photo_max_height = 0;
   jQuery("ul.photo_album li img").each(function () {
      if (jQuery(this).height() > photo_max_height) photo_max_height = jQuery(this).height();
   });
   jQuery("ul.photo_album li").css("height", photo_max_height + 10 + "px"); /* End Awards - Photo Album */


   /*BEGIN Advanced Search*/
   if (jQuery('button#fas_btn').length) {
      var d = new Date();
      jQuery('input#BeforeDay').val(d.getDate());
      jQuery('input#AfterDay').val(d.getDate());
      jQuery('input#BeforeYear').val(d.getFullYear());
      jQuery('input#AfterYear').val(d.getFullYear());
      jQuery('select#BeforeMonth option').eq(d.getMonth()).attr("selected", "selected");
      jQuery('select#AfterMonth option').eq(d.getMonth()).attr("selected", "selected");
   }

   jQuery('button#fas_btn').click(function (event) {
      event.preventDefault();
      var query = "";
      var url = "?funnelback_search_page_60188_search_sort="
      url += jQuery('select#funnelback_search_page_60188_search_sort').val();
      url += "&funnelback_search_page_60188_search_query=";
      query += '%2B' + jQuery('input#search_query').val();
      jQuery('ul.themes li input').each(function () {
         if (jQuery(this).attr('checked')) {
            var theme = new Array();
            var theme_urlen = "";
            theme = jQuery(this).val().split(" ");
            for (var i = 0; i < theme.length; i++) {
               if (theme[i] == "&") theme[i] = "%26";
               if (i == 0) theme_urlen += theme[i];
               else theme_urlen += "+" + theme[i];
            }
            query += "+%2BF%3A%22" + theme_urlen + "%22";
         }
      });
      query += '+%2B' + jQuery('input#BeforeDay').val() + jQuery('select#BeforeMonth').val() + jQuery('input#BeforeYear').val() + '%3Cd%3C';
      query += jQuery('input#AfterDay').val() + jQuery('select#AfterMonth').val() + jQuery('input#AfterYear').val();
      if (jQuery('input#country').val() != "") {
         query += "+%2BJ%3A%22" + jQuery('input#country').val() + "%22";
      }
      if (jQuery('select#media').val() != "all") {
         query += "+%2BB%3A%22" + jQuery('select#media').val() + "%22";
      }
      url += query;
      url += "&funnelback_search_page_60188_submit_button=Submit";
      //alert(url);
      window.location = url;
   }); /*END Advanced Search*/


   /*BEGIN Registration sticky form*/

   jQuery('button#reg_button').click(function (event) {
      event.preventDefault();
      postCheckboxSelected();
      postSelectSelected();
      jQuery(this).parents('form').submit();
   });

   if (jQuery('input.postCheckboxValues').length) {
      var checkboxesSel = jQuery(".postCheckboxValues").val();
      jQuery("input[type='checkbox']").each(function (index) {
         if (checkboxesSel[index] == "1") {
            jQuery(this).attr("checked", "checked");
         }
      });
   }

   if (jQuery('input.postSelectValues').length) {
      var selectSel = jQuery(".postSelectValues").val();
      jQuery('select').each(function (index) {
         jQuery(this).find('option').eq(selectSel[index]).attr('selected', 'selected');
      });
   } /*END Registration sticky form*/


   /* -------------------------------------------------------------- MAPS SECTION SCRIPT START ----- */
   /* -------- Google Maps - showMarker Function ---------- */

   function showMarker(latitude, longitude, asset_url, markerManager, item_description, icon_n) {
      var point = new GLatLng(latitude, longitude);
      var newIcon = new GIcon(G_DEFAULT_ICON);
      newIcon.image = icons[icon_n];
      var marker = new GMarker(point, {
         icon: newIcon
      });
      markerManager.addMarker(marker, minZoom, maxZoom);
      GEvent.addListener(marker, "click", function () {
         marker.openInfoWindowHtml(item_description);
      });
   };

   function iconColor(cluster_class) {
      var icon_numb = 0;
      if (cluster_class.indexOf("Outages") != -1) icon_numb = 0;
      if (cluster_class.indexOf("Free") != -1) icon_numb = 1;
      if (cluster_class.indexOf("New Builds") != -1) icon_numb = 2;
      if (cluster_class.indexOf("Outsourcing") != -1) icon_numb = 3;
      return icon_numb;
   };

   function showOnMap($selector) {
      var $newValue;
      var $newArray;
      var $elements = $selector;
      $elements.each(function () {
         $newValue = jQuery(this).val();
         $newArray = $newValue.split(',');
         $item_description = '<h4><a href="' + $newArray[1] + '" target="_blank">' + $newArray[0] + '</a></h4><p>' + $newArray[4] + '<br />' + '<a href="' + $newArray[1] + '" target="_blank">Click here to see more details</a></p>';
         showMarker($newArray[2], $newArray[3], $newArray[1], markerManager, $item_description, iconColor($newArray[$newArray.length - 1]));
      });
      markerManager.refresh();
   }

   /* ----- Showing on map ----- */

   if (jQuery('div#maps_map').length) {
      var map = new GMap2(document.getElementById("maps_map"));
      var markerManager = new GMarkerManager(map);
      var minZoom = 1;
      var maxZoom = 17;
      var $type1;
      var $type2;
      var $item_description = '';
      map.setCenter(new GLatLng(31, 0), 2);
      map.addControl(new GLargeMapControl());
      map.addControl(new GScaleControl());
      map.addControl(new GMapTypeControl());

      showOnMap(jQuery("#items_on_map input"));

      jQuery('select.map_select"').change(function () {
         $type1 = jQuery(this).val();
         $type2 = jQuery(this).siblings('select').val();
         map.clearOverlays();
         markerManager = new GMarkerManager(map);
         if ($type1 == "all" && $type2 == "all") showOnMap(jQuery("#items_on_map").find("input"));
         if ($type1 == "all" && $type2 != "all") showOnMap(jQuery("#items_on_map input." + $type2));
         if ($type1 != "all" && $type2 == "all") showOnMap(jQuery("#items_on_map input." + $type1));
         if ($type1 != "all" && $type2 != "all") showOnMap(jQuery("#items_on_map input." + $type1).filter("." + $type2));
      });
   }

   /* ----- MAPS SECTION SCRIPT END ----- */


   /*WP owner email*/
   if (jQuery('input#ownermail').length) {
      jQuery('input#q84740_q10').val(jQuery('input#ownermail').val());
   }

   /*BEGIN inputs hiding in simple edit */
   if (location.href.search("_edit") != -1) {
      jQuery('div.se_tabs_container input').each(function () {
         jQuery(this).removeAttr("disabled");
         if (jQuery(this).attr("name").search("_change_status_all_children") != -1) {
            jQuery(this).next('label').addClass("hide");
            jQuery(this).removeAttr("checked");
            jQuery(this).addClass("hide");
         } else if (jQuery(this).attr("name").search("_default") != -1 && jQuery(this).attr("type") != "text") {
            jQuery(this).next('label').addClass("hide");
            jQuery(this).removeAttr("checked");
            jQuery(this).addClass("hide");
         }
      });
      jQuery('div.se_tabs_container textarea').each(function () {
         jQuery(this).removeAttr("disabled");
      });

      jQuery('div.se_tabs_container select').each(function () {
         jQuery(this).removeAttr("disabled");
      });

      jQuery('form b').each(function () {
         if (jQuery(this).html() == "-OR-") jQuery(this).remove();
      });
   } /*END inputs hiding in simple edit */

   //SEI context switch link
   if (jQuery("#edit_programme_record").length == 0 && jQuery("a.cont_sw").length) {
      var new_url = jQuery("a.cont_sw").attr('href');
      new_url = new_url.replace("&SQ_DESGIN_NAME=blank", "");
      jQuery("a.cont_sw").attr('href', new_url);
   }

   /*Begin Region and Country links*/
   if (window.location.href.indexOf("region") != -1 || window.location.href.indexOf("country") != -1) {
      var url = window.location.href;
      if (url.indexOf("region") != -1) {
         url = url.substr(url.indexOf("region"));
      } else url = url.substr(url.indexOf("country"));
      jQuery('a').not('div[id=top_container] a').each(function () {
         var new_url;
         if (jQuery(this).attr('href').indexOf("?") == -1) {
            new_url = jQuery(this).attr('href') + "?" + url;
         } else {
            new_url = jQuery(this).attr('href') + "&" + url;
         }
         jQuery(this).attr('href', new_url);
      });
   }

/*if(window.location.href.indexOf("lang=en") != -1 && window.location.href.indexOf("conferences") != -1){
	jQuery('div.linkleftcol_content a.lang_switch').attr('href', window.location.href.slice(0,window.location.href.indexOf("?lang=en")));
	jQuery('div.linkleftcol_content a.lang_switch').html("Back to local version");
}
*/


   /*End Region and Country links*/


   /* Start Conference Top Banner Date */
   if (jQuery(".conference_date_following").text() == "1/Jan/2011") {
      jQuery('#conference_banner .conference_banner_date .current_year').each(function () {
         if (jQuery(this).parents('.conference_banner_sp').length > 0) {
            jQuery('#conference_banner').css('paddingLeft', '20px');
            return;
         }

         var day = new Array();
         day = jQuery(this).html().split("/", 2);
         jQuery(this).html(day[0]);
         jQuery(this).removeClass("hide");
      });

      jQuery('#conference_banner p.conference_month').each(function () {
         var month = new Array();
         month = jQuery(this).html().split("/", 3);
         jQuery(this).html(month[1]);
         jQuery(this).removeClass("hide");


      });

   } else {
      jQuery('#conference_banner .conference_banner_date .following_year').each(function () {
         if (jQuery(this).parents('.conference_banner_sp').length > 0) {
            jQuery('#conference_banner').css('paddingLeft', '20px');
            return;
         }

         var day = new Array();
         day = jQuery(this).html().split("/", 2);
         jQuery(this).html(day[0]);
         jQuery(this).removeClass("hide");
      });

      jQuery('#conference_banner p.following_conference_month').each(function () {
         var month = new Array();
         month = jQuery(this).html().split("/", 3);
         jQuery(this).html(month[1]);
         jQuery(this).removeClass("hide");


      });

   }





   /* End Conference Top Banner Date */







/* ADD DISCUSSION - lookup tweaks to remove use defalut etc- no wyswig
if ((jQuery('input#addDiscussion_form')) && (jQuery('input#addDiscussion_form').val() == 'true')){
   jQuery('label[for$="default"]').hide().prev('input[type="checkbox"]').removeAttr('checked').hide();
   handleMetadataWYSIWYGDefaultClickFormetadata_field_wysiwyg_109430();
   switchEditingMode('metadata_field_wysiwyg_109430_contents_div','metadata_field_wysiwyg_109430_wysiwyg_div', editor_metadata_field_wysiwyg_109430);
}
*/

   /*Begin User Follow*/
   if (jQuery('a#follow').length) {
      var al_added = false;
      var link_list = new Array();
      var $ajaxDone = false;
      if (jQuery('input#follow_links').length && jQuery('input#follow_links').val() != "") {
         link_list = jQuery('input#follow_links').val().split(',');
         for (var i = 0 in link_list) {
            if (link_list[i] == jQuery('input#current_user').val()) al_added = true;
         }
      }
      jQuery('a#follow').click(function (event) {
         event.preventDefault();
         var add_url = jQuery(this).attr('href');
         if (!al_added) {
            if (confirm("Follow this user?")) {
               if (add_url != '') {
                  jQuery.ajax({
                     type: "GET",
                     url: add_url,
                     success: function (html) {
                        $.pnotify({
                           pnotify_title: 'DatacenterDynamics',
                           pnotify_text: 'Link was successfully added to your MyDCD section.'
                        });
                        al_added = true;
                     }
                  });
               };
            }
         } else {
            $.pnotify({
               pnotify_title: 'DatacenterDynamics',
               pnotify_text: 'You already follow this user.'
            });
         }
      });
   } /*End User Follow*/




   /* -- ADD COMMENT MODULE RELATED -- */
   /* Add comment form tweak to solve cache issue */
   if (jQuery('#comments').length != 0) {
      jQuery('#comments form').attr('action', jQuery('input#form_action').val());
      var comments_listing = jQuery('#new_comments_listing').val();

      jQuery.ajax({
         type: "GET",
         url: '' + comments_listing + '',
         success: function (html) {
            jQuery('div#allcomments_listing').html(html);
            jQuery('h4.comments_count').insertBefore('#comments form');
         }
      });

   }

   /* -- ADD COMMENT MODULE RELATED END -- */


   /* -- START DISCUSSION COMMENTS -- */
   /* Add comment form tweak to solve cache issue */
   if (jQuery('#discussion_comments').length != 0) {
      jQuery('#discussion_comments form').attr('action', jQuery('input#form_action').val());
      var comments_listing = jQuery('#new_comments_listing').val();

      jQuery.ajax({
         type: "GET",
         url: '' + comments_listing + '',
         success: function (html) {
            jQuery('div#discussion_allcomments_listing').html(html);
            jQuery('#discussion_first_item span.discussionCommentsAmount').html(jQuery('#discussionCommentsAmount').val());
            var currentURLanchor = window.location.href.match("#.+$");
            if (currentURLanchor != null) {
               jQuery(document).scrollTop(jQuery("" + currentURLanchor).position().top);
            }
         }
      });

   }

   /* -- END DISCUSSION COMMENTS -- */


   /* --- WHITEPAPERS AUTOMATIC PDF DOWNLOAD --- */
   /* Automatically Downloads PDF file on White papers*/
/*
if(jQuery('a#automatic_pdfdownload').length != 0){
   jQuery("a#automatic_pdfdownload").click(function(){location.href = this.href;});
   jQuery('a#automatic_pdfdownload').trigger('click');
}
*/

   /*Begin comment focus*/
   if (jQuery('#comment_field').length) {
      var c_url = window.location.href;
      if (c_url.indexOf("val=comment") != -1) {
         jQuery('#comment_field').focus();
      }
   } /*End comment focus*/

   /*Begin Add PDF to video*/
   jQuery('#uploadPDFToVideo_link').click(function (event) {
      event.preventDefault();

      var window_addfile = window.open(jQuery(this).attr('href'), "Upload PDF File", "location=0,status=0,scrollbars=0,width=500,height=500");
   }); /*End Add PDF to video*/

   /*Begin Back to local Conference Version*/
   var verUrl = window.location.href;
   if (verUrl.indexOf("-en") != -1) {
      var verLink = jQuery('.linkleftcol_content a');
      var newUrl = "";
      verLink.each(function () {
         if (jQuery(this).html() == "Switch to English version" && verUrl.indexOf("-en") != -1) {
            newUrl = verUrl;
            newUrl = newUrl.replace("-en", "");
            jQuery(this).attr('href', newUrl);
            jQuery(this).html("Switch to local version");
         }
      });
   } /*End Back to local Conference Version*/

   /*Begin Subscribe link*/
   jQuery('a#onlineVersion').click(function (e) {
      e.preventDefault();
      $.pnotify({
         pnotify_title: 'DatacenterDynamics',
         pnotify_text: 'You are not subscribed please subscribe first.'
      });
   }); /*End Subscribe link*/

   /* CONFERENCE PARTNERS Rotator, based on Sponsors rotator
   Hiding as it may be used elsewhere QHX-28854-965
   if (jQuery('div.partners div.partners_content a').length > 1) {
      var partners_interval = self.setInterval("changePartners(jQuery('div.partners div.partners_content a').length)", 1500);
   }
  */

   /* Start Event List Date/Duration */
/*
   if (jQuery(".conf_list").length) {
      var month = new Array(12);
      month[0] = "Jan";
      month[1] = "Feb";
      month[2] = "Mar";
      month[3] = "Apr";
      month[4] = "May";
      month[5] = "Jun";
      month[6] = "Jul";
      month[7] = "Aug";
      month[8] = "Sep";
      month[9] = "Oct";
      month[10] = "Nov";
      month[11] = "Dec";

      var month2 = new Array(12);
      month2["Jan"] = 0;
      month2["Feb"] = 1;
      month2["Mar"] = 2;
      month2["Apr"] = 3;
      month2["May"] = 4;
      month2["Jun"] = 5;
      month2["Jul"] = 6;
      month2["Aug"] = 7;
      month2["Sep"] = 8;
      month2["Oct"] = 9;
      month2["Nov"] = 10;
      month2["Dec"] = 11;

      jQuery(".conf_list li").each(function () {

         var event_date_duration = jQuery(this).find('input.event_start_date').val().split(';');

         var event_duration = event_date_duration[1];
         if (event_duration != undefined && event_duration != "" && event_duration != "1") {

            var date_array = event_date_duration[0].split('/');

            var event_date_obj = new Date(date_array[2], month2[date_array[1]], date_array[0]);
            var event_date_obj2 = new Date(event_date_obj.getTime());


            event_date_obj2.setDate(event_date_obj.getDate() + parseInt(event_duration, 10) - 1);

            if (event_date_obj.getMonth() != event_date_obj2.getMonth()) {
               jQuery(this).find('span.conf_date').html(event_date_obj.getDate() + " " + month[event_date_obj.getMonth()] + " - " + event_date_obj2.getDate() + " " + month[event_date_obj2.getMonth()]);
            } else {
               jQuery(this).find('span.conf_date').html(event_date_obj.getDate() + "-" + event_date_obj2.getDate() + " " + month[event_date_obj.getMonth()]);
            }

         } // end if event_duration
      });
   }
*/
 /* End Event List Date/Duration */



   /*Groups listing odd/even class*/
   jQuery("ul#groups_listing li:nth-child(even)").addClass("even");
   jQuery("ul#groups_listing li:nth-child(odd)").addClass("odd");


   /* DISCUSSIONS Prints number of discussions in proper place */
   jQuery('span.discussion_count').html('Discussions <em>(</em>' + jQuery("input#discussion_count").val() + '<em>)</em>'); /* MEMBERS - DISCUSSION GROUP Prints number of members in proper place */
   jQuery('span.members_count').html('Members <em>(</em>' + jQuery("input#members_count").val() + '<em>)</em>');



   /*CONFERECNES - setting proper speakers boxes height */
   var $speaker_maxheight = 0;
   jQuery('li.single_speaker').each(function () {
      if (jQuery(this).height() > $speaker_maxheight) {
         $speaker_maxheight = jQuery(this).height();
      }
   });
   jQuery('li.single_speaker').height($speaker_maxheight);

   /*Begin Discussions group icons*/
   if (jQuery('#discussions_header_icons').length) {
      var classes = jQuery('#classes').val().split(';');
      var clas = new Array;
      var iconCount = 0;
      for (var i in classes) {
         if (classes[i] != '') {
            if (classes == 'Energy & Utilities') {
               clas[0] = 'energy_and_utilities';
            } else {
               clas = classes[i].split(' ');
               if (clas[0] == '') clas[0] = clas[1];
               if (clas[0].indexOf('/') > 0) clas[0] = clas[0].substr(0, clas[0].indexOf('/'));

               /** Tidy Up the Icons and their Titles **/
               switch (clas[0].toLowerCase()) {
               case 't':
                  title = 'Technology / Services Company';
                  icon = 'vendor';
                  break;

               case 'c':
                  title = 'Consultant';
                  icon = 'consultant';
                  break;

               case 'o':
                  title = 'Operator / End-User';
                  icon = 'operator';
                  break;

               case 'it':
                  title = 'Information Technology';
                  icon = 'it';
                  break;

               case 'property':
                  title = 'Property & Real Estate';
                  icon = 'property';
                  break;

               case 'finance':
                  title = 'Finance & Administration';
                  icon = 'finance';
                  break;

               case 'sales':
                  title = 'Sales & Marketing';
                  icon = 'sales';
                  break;

               case 'facilities':
                  title = 'Facilities Management';
                  icon = 'facilities';
                  break;

               default:
                  title = ucwords(clas[0]).trim();
                  icon = clas[0];
               }
            }
            jQuery('#discussions_header_icons').prepend('<div class="icon_24 icon_24_' + icon + '" title="' + title + '"></div>');
         }
      }
   } /*End Discussions group icons*/

   /*Begin Research Icons */
   var res = jQuery('input.res_classes');
   res.each(function () {
      var classes = jQuery(this).val().split(';');
      if (classes[0] == 'Energy & Utilities') classes[0] = 'energy_and_utilities';
      jQuery(this).next('div.research_item_image').addClass("icon_65 icon_65_" + classes[0].toLowerCase());
   }); /*End Research Icons */

   /*Begin Schedule icons*/
   if (jQuery('.icons_container').length) {
      var icons_meta = jQuery('.icons_meta');
      var classes;
      var clas = new Array;
      icons_meta.each(function () {
         classes = jQuery(this).val().split(';');
         for (var i in classes) {
            if (classes[i] != '') {
               if (classes == 'Energy & Utilities') {
                  clas[0] = 'energy_and_utilities';
               } else {
                  clas = classes[i].split(' ');
                  if (clas[0] == '') clas[0] = clas[1];
               }
               jQuery(this).parent('div').prepend('<div class="icon_24 icon_24_' + clas[0] + '"></div>');
            }
         }

      });
   } /*End Schedule icons*/

   /*Begin Conference lisitng*/
   if (jQuery("#regional_conf").length) {
      jQuery("ul#regional_conf li").each(function () {
         jQuery(this).find("div:first").attr('class', jQuery(this).find("div:first").attr('class').toLowerCase());
      });
   } /*End Conference lisitng*/


   /* Start Research listing */
   jQuery("ul#research_listing li").each(function () {
      jQuery(this).find(".research_item_image").attr('class', jQuery(this).find(".research_item_image").attr('class').toLowerCase());
   }); /* End Research listing */

   /* BEGIN Trainings Date */
   jQuery('div.upcoming_left ').each(function () {
      if (jQuery(this).find('span.event_day').html() != "1/Jan/2010") {
         var day = new Array();
         day = jQuery(this).find('span.event_day').html().split("/", 2);
         jQuery(this).find('span.event_day').html(day[0]);

      } else {
         jQuery(this).find('span').html("&nbsp;")
      };
      jQuery(this).find('span').removeClass("hide");

      if (jQuery(this).find('p.event_month').html() != "1/JAN/2010") {
         var month = new Array();
         month = jQuery(this).find('p.event_month').html().split("/", 3);
         jQuery(this).find('p.event_month').html(month[1]);
      } else {
         jQuery(this).find('p.event_month').html("tbc")
      };
      jQuery(this).find('p.event_month').removeClass("hide");
   }); /* END Trainings Date */

   /* BEGIN Trainings Box changer*/
   jQuery('div.box_training_tabs a').click(function (event) {
      event.preventDefault();
      var item_index = jQuery(this).parent('div').index();
      jQuery('div.box_training_tabs a').removeClass('current');
      jQuery(this).addClass('current');
      jQuery('.box_training_slides').addClass('hide');
      jQuery('.box_training_slides').eq(item_index).removeClass('hide');
   }); /* END Trainings Box changer*/

   if (jQuery('.about').length) {
      jQuery.fn.ready(function () {
         jQuery('.hiddenDescription').hide();
         jQuery('.showAboutDesc').show();
         jQuery('.amMap').hide();
      });
      jQuery('.showAboutDesc').click(function () {
         jQuery(this).html('Toggle Information');
         jQuery('.hiddenDescription', jQuery(this).closest('.headerDotsBottom')).slideToggle('fast');
      });
   }

   /*Begin Ajax Poll */
   if (jQuery('#poll_details').length) {
      var poll = jQuery('#poll_details').val().split('++');
      jQuery.ajax({
         type: "GET",
         url: poll[1] + '/_nocache?SQ_DESGIN_NAME=blank',
         success: function (html) {
            jQuery('div.poll').html(html);
         }
      });
   } /*End Ajax Poll */

   /*Begin latam links*/
   if (window.location.href.indexOf('latam') != -1 || window.location.href.indexOf('lang=es') != -1) {
      var latamLinks = jQuery('a');
      var href;

      latamLinks.each(function () {
         href = jQuery(this).attr('href');
         if (href != undefined && href.indexOf("lang=es") == -1) {
            if (href.indexOf('archive') != -1 || href.indexOf('white-papers') != -1 || href.indexOf('blogs_archive') != -1) {
               href += "?lang=es";
               jQuery(this).attr('href', href);
            }
         }
      });
   } /*End latam links*/

   /*Begin latam navigation*/
   if (window.location.href.indexOf('latam') != -1 || window.location.href.indexOf('lang=es') != -1) {
      var navLinkL = jQuery('#global_nav a');
      var navHrefL;
      var newNavHrefL;
      var nameL;
      var newNameL;
      navLinkL.each(function () {
         if (jQuery(this).attr('href').indexOf("latam") == -1) {
            newNavHrefL = "";
            navHrefL = jQuery(this).attr('href');
            navHrefL = navHrefL.split('/');
            navHrefL[navHrefL.length - 1] = "latam/" + navHrefL[navHrefL.length - 1];
            for (var i in navHrefL)
            newNavHrefL += navHrefL[i] + "/";
            nameL = jQuery(this).find('span').html();
            switch (nameL) {
            case "Conferences":
               newNameL = "Conferencias";
               newNavHrefL = "http://www.datacenterdynamics.com/latam/conferences";
               break;
            case "Awards":
               newNameL = "Premios";
               break;
            case "Maps":
               newNameL = "Mapas";
               break;
            case "Training":
               newNameL = "Cursos";
               break;
            case "About Us":
               newNameL = "Acerca de";
               break;
            case "Magazine":
               newNameL = "Noticias";
               newNavHrefL = "http://www.datacenterdynamics.com/latam/focus";
               break;
            case "Research":
               newNameL = "Censo";
               newNavHrefL = "http://www.datacenterdynamics.com/latam/research";
               break;
            default:
               newNameL = nameL;
               break;
            }
            jQuery(this).attr('href', newNavHrefL);
            jQuery(this).find('span').html(newNameL);
         }
      });
   } /*End latam navigation*/

   /*Local Participants translation*/
   var newlocal_translation = $('#newlocal_translation').text();
   if (newlocal_translation != "") {
      var pop_speaker = $('.info_popup_speaker');
      pop_speaker.each(function () {
         $(this).html($(this).html().replace("Participants", decodeURI(decodeBase64(newlocal_translation).replace(/\+/, " "))));
      });
   }

        fancyboxes();

   /*End Local Participants translation*/

}); /* ------------------------------------------ DOCUMENT READY END -------------------------------- */

/* ---- FUNCTIONS ---- */

function changePSponsor(plsponsors) {
   jQuery('div.sponsor2 a.plsponsor').eq(current_sponsor).removeClass('current').addClass('hide');
   current_sponsor++;
   if (current_sponsor > plsponsors - 1) {
      jQuery('div.sponsor2 a.plsponsor').eq(current_sponsor - 1).removeClass('current').addClass('hide');
      current_sponsor = 0;
      jQuery('div.sponsor2 a.plsponsor').eq(current_sponsor).removeClass('hide').addClass('current');
   }
   jQuery('div.sponsor2 a.plsponsor').eq(current_sponsor).removeClass('hide').addClass('current');
}

function postCheckboxSelected() {
   var postCheckboxValues = "";
   jQuery('input[type="checkbox"]').each(function () {
      if (jQuery(this).attr("checked")) {
         postCheckboxValues += "1";
      } else {
         postCheckboxValues += "0";
      }
   });
   jQuery('.postCheckboxValues').val(postCheckboxValues);
}

function postSelectSelected() {
   var postSelectValues = "";
   jQuery('select').each(function () {
      postSelectValues += jQuery(this).find('option:selected').index();
   });
   jQuery('.postSelectValues').val(postSelectValues);
}

/* Bookmarks link function - NOT Add to Bookmarks */

function AddToBookmarks() {
   if (document.all) {
      window.external.AddFavorite(location.href, document.title);
   } else if (window.sidebar) {
      window.sidebar.addPanel(document.title, location.href, '');
   }
}

/* Function for Conference Partners rotator */

function changePartners(partners) {
   jQuery('div.partners div.partners_content a').eq(current_partner).removeClass('current').addClass('hide');
   current_partner++;
   if (current_partner > partners - 1) {
      jQuery('div.partners div.partners_content a').eq(current_partner - 1).removeClass('current').addClass('hide');
      current_partner = 0;
      jQuery('div.partners div.partners_content a').eq(current_partner).removeClass('hide').addClass('current');
   }
   jQuery('div.partners div.partners_content a').eq(current_partner).removeClass('hide').addClass('current');
}

function load_videos_ajax(){
	var query_video = jQuery("#video_query_par");
	var load_videos_loader = jQuery(".load_videos_container").val();
	if(query_video.length){
		jQuery.ajax({
			url: "/?a=119133&SQ_DESIGN_NAME=blank",
			context: document.body,
		    data: {video_query:query_video.val()},
			success: function(data){
		        jQuery(".load-videos-loader").hide();
				jQuery("#loaded_videos_container").html(data);
				 load_flash_videos();
                 videos_carousel();

			},
			beforeSend:function(){
				jQuery(".load_videos_loader").show();
			}
		});
	}

}

function load_videos_conferences(){
	var query_video = jQuery("#video_query_par_conf");
	var load_videos_loader = jQuery(".load_videos_container").val();
	if(query_video.length){
		jQuery.ajax({
			url: "/?a=148705&SQ_DESIGN_NAME=blank",
			context: document.body,
		    data: {video_query:query_video.val()},
			success: function(data){
		        jQuery(".load-videos-loader").hide();
				jQuery("#loaded_videos_container").html(data);
				 load_flash_videos();
                 videos_carousel();

			},
			beforeSend:function(){
				jQuery(".load_videos_loader").show();
			}
		});
	}

}

function fancyboxes(){

/** Turn all thumbnails into fancybox icons **/
    jQuery('img[class~=inner_thumbnail]').each( function(){
        url = jQuery(this).attr('src');
        filename = url.substring(url.lastIndexOf('/')+1, url.lastIndexOf('.'));
        newUrl = url.replace(filename, 'focusmain');
        jQuery(this).wrap('<a href="' + newUrl + '" />');
        jQuery(this).parent('a').addClass('fancybox');
    });

    jQuery('a[class~=fancybox]').each( function(){
        container = jQuery(this).wrap('<span class="fancy_maximize_container" />').parent('span');
        jQuery(container).append('<span class="fancy_maximize_icon"><img src="http://www.datacenterdynamics.com/__data/assets/image/0007/136933/plus.png" /></span>');

        if( $(this).children('img').hasClass('inner_thumbnail') ){
            $(this).parent('span[class=fancy_maximize_container]').addClass('inner_thumbnail');
            $(this).children('img').removeClass('inner_thumbnail');
        }
    });

    /* Start fancybox links */
    try { jQuery("a.fancybox").fancybox(); } catch(er) {}
    try { jQuery('a[rel=fancybox]').fancybox({ overlayOpacity: 0.7 }); } catch(er) {}
    /* End fancybox links */
}
