﻿/* GENERAL */

; function googleTranslateElementInit() {
	new google.translate.TranslateElement({ pageLanguage: 'en' }, 'google_translate_element');
}

function Init_GoogleAnalytics(uAcct) {
	var pageTracker = _gat._getTracker(uAcct);
	pageTracker._initData();
	pageTracker._trackPageview();
}

function Init_PopupWindows() {
	$('.popup').each(function () {
		var w = $(this).attr("w"),
			h = $(this).attr("h"),
			s = $(this).attr("s");

		if (w == null || w == 0) { w = 700; } 
		if (h == null || h == 0) { h = 750; } 
		if (s == null || s == "" || s == "true") { 
			s = "1"; 
		} else if (s == "false") { 
			s = "0"; 
		}

		$(this).popupWindow({ "centerBrowser": 1, "height": h, "width": w, "scrollbars": s });
	});
}

function Init_RecommendedItem() {
	$('.recommenedItem .riAddToCart').click(function () {
		$(this).children('a').each(function () {
			__doPostBack($(this).attr('id').replace(/_/gi, '$'), '');
		});
	});
}

function Init_VideoPlayer() {
	var foundLinks = $('#ArticleContent a[href*="VideoPlayer"]'); // [href*="VideoPlayer"]  [href*=#]

	$(foundLinks).each(
		function () {
			var url = $(this).attr('href'),
				q = $.parseQuery(url),
				width = q.width,
				height = q.height;

			if (height == undefined || height == 0) { height = 500; }
			if (width == undefined || width == 0) { width = 500; }

			height = height + 20;
			width = width + 20;

			$(this).click(function () { 
				NewWindow(url, 'videoWindow', width, height, "false"); 
				return false; 
			});
		});
}

function Init_MaxLength() {
	$('textarea[maxlength], input[type=text]')
		.keyup(function () { EvaluateMax($(this, '.charsRemaining')); })
		.each(function () { EvaluateMax($(this, '.charsRemaining')); });
}

function EvaluateMax(control, result) {
	var max = parseInt($(control).attr('maxlength'));

	if (max != NaN) {
		if ($(control).val().length > max) {
			$(control).val($(control).val().substr(0, max));
		}

		$(control).nextAll(result).first().html('You have ' + (max - $(control).val().length) + ' characters remaining');
	}
}


/* BOOKSTORE EXPAND */
; function BookstoreExpand_Init() {
	var messageCollapse = function (value) { return value.replace('Expand', 'Collapse'); },
		messageExpand = function (value) { return value.replace('Collapse', 'Expand'); },
		toggleMessageExpanded = function (value) { return (value.indexOf('Expand') >= 0); },
		toggleMessage = function (value) {
			if (toggleMessageExpanded(value)) {
				return messageCollapse(value);
			} else {
				return messageExpand(value);
			}
		};

	$('.BookstoreGroupItems ul').each(function () {
		$(this).attr("eh", $(this).height());
		$(this).attr("ch", $(this).height());

		var height = 0,
			heightC = 0;

		$(this).children('li').each(function () {
			heightC += 1;
			if (heightC <= 5) {
				height += $(this).outerHeight(true);
			}
		});

		$(this).attr("ch", height);
		$(this).stop().animate({ 'height': height + 'px' }, 250);
	});

	$('.BookstoreGroup .ExpandAll').each(function () {
		$(this).click(function () {
			var message = $('.BookstoreGroup .ExpandAll').html();

			if (toggleMessageExpanded(message)) {
				$('.BookstoreGroup .ExpandGroup').each(function () {
					$(this).click();
					$(this).html(messageCollapse($(this).html()));
				});
			} else {
				$('.BookstoreGroup .ExpandGroup').each(function () {
					$(this).click();
					$(this).html(messageExpand($(this).html()));
				});
			}

			$('.BookstoreGroup .ExpandAll').html(toggleMessage(message));
			return false;
		});
	});

	$('.BookstoreGroup .ExpandGroup').each(function () {
		$(this).click(function () {
			var parentID = $(this).attr('parentID'),
				message = $(this).html(),
				u = $('#' + parentID + " ul"),
				h = u.attr("eh");

			if (!toggleMessageExpanded(message)) { h = u.attr("ch"); }

			u.stop().animate({ 'height': h + 'px' }, 250);
			$(this).html(toggleMessage(message));

			return false;
		});
    });

    $('.BookstoreGroup .ExpandAll').first().click();
}

/* NIVO SLIDER */
function Init_NivoSlider(identifier) {
	$(identifier).nivoSlider({ pauseTime: 5000 });
}


/* TRACKING */
; function Journal_TrackInt(from, area, item, subject, destination, itemID) {

	$.ajax({
	    url: "/TrackJavascriptHandler.ashx",
		type: "GET",
		data: { "from": from, "area": area, "item": item, "subject": subject, "destination": destination, "itemID": itemID, "i": itemID },
		success: function (result) { return true; },
		error: function (request, status, errorThrown) {
			//alert(status);
			alert(errorThrown);
			return true;
		}
	});

	return true;
}

function Journal_TrackInt(from, area, item, subject, destination, itemID, primaryCategory, category, section) {

    $.ajax({
        url: "/TrackJavascriptHandler.ashx",
        type: "GET",
        data: { "from": from, "area": area, "item": item, "subject": subject, "destination": destination, "itemID": itemID, "i": 1, "pcat": primaryCategory, "cat": category, "sec": section },
        success: function (result) { return true; },
        error: function (request, status, errorThrown) {
            //alert(status);
            alert(errorThrown);
            return true;
        }
    });

    return true;
}


function Journal_TrackGuid(from, area, item, subject, destination, itemID) {

	$.ajax({
	    url: "/TrackJavascriptHandler.ashx",
		type: "GET",
		data: { "from": from, "area": area, "item": item, "subject": subject, "destination": destination, "itemID": itemID },
		success: function (result) { return true; },
		error: function (request, status, errorThrown) {
			//alert(status);
			alert(errorThrown);
			return true;
		}
	});

	return true;
}

function WhitePaper_Track(from, area, item, subject, destination, itemID) {
	return Journal_TrackGuid(from, area, item, subject, destination, itemID);
}

function SpecialSuppliers_Init() {
    $(".suppliers")
		.delegate("a", "click",
			function () {
			    var trackData = $(this).closest("li").children(".tracking");

				var from = trackData.data("options").from;
				var area = trackData.data("options").area;
				var item = trackData.data("options").item;
				var subject = trackData.data("options").subject;
				var destination = trackData.data("options").destination;
				var itemID = trackData.data("options").itemID;

				return WhitePaper_Track(from, area, item, subject, destination, itemID);
			});
}

function WhitePaper_Init() {

	$(".whitepapers")
		.delegate("a", "click",
			function () {
				var trackData = $(this).parent().parent().children(".tracking");
				
                var from = trackData.data("options").from;
				var area = trackData.data("options").area;
				var item = trackData.data("options").item;
				var subject = trackData.data("options").subject;
				var destination = trackData.data("options").destination;
				var itemID = trackData.data("options").itemID;

				return Journal_TrackGuid(from, area, item, subject, destination, itemID);
			});
}

function Buyersguide_Init() {

    $(".buyersguideCompany")
		.delegate("a", "click",
			function () {
                    /*
                    {  "from": "/BuyersGuide/Company/", 
                       "area": "BG_EL", 
                       "item": "Caron+Products+%26+Services+Inc.",
                       "subject": "", 
                       "destination": "http%3a%2f%2fwww.caronproducts.com", 
                       "itemID": "11830", 
                       "pcat": "AGGLOMERATION", 
                       "cat": "", 
                       "sec": "", 
                       "i":"1" }'>
                    */

			    var o = $(this).closest(".buyersguideCompany");
			    var trackData = o.children(".tracking");
			    var data = trackData.data("options");

			    var from = data.from;
			    var area = data.area;
			    var item = data.item;
			    var subject = data.subject;
			    var destination = data.destination;
			    var itemID = data.itemID;

			    var pCategory = data.pcat;
			    var category = data.cat;
			    var section = data.sec;

			    return Journal_TrackInt(from, area, item, subject, destination, itemID, pCategory, category, section);
			});
}


function JournalVideo_Init() {
	$("#Video")
		.delegate(".title a", "click",
			function () {
				var trackData = $(this).siblings('.tracking').first();
				
                var from = trackData.data("options").from;
				var area = trackData.data("options").area;
				var item = trackData.data("options").item;
				var subject = trackData.data("options").subject;
				var destination = trackData.data("options").destination;
				var itemID = trackData.data("options").itemID;

				return Journal_TrackInt(from, area, item, subject, destination, itemID);
			});
}
