// create a plus namespace.
self.plus = {};

var strEmptySelection = "Please make a selection first.";

function checkForm(frm) {
    var bFlag = false;
    if (typeof frm['pid[]'].length != 'number') {
        bFlag = frm['pid[]'].checked;
    } else {
        var nItems = frm['pid[]'].length;
        for (var i = 0; i < nItems && !bFlag; i++) {
            bFlag = frm['pid[]'][i].checked;
        }
    }
    if (!bFlag) alert(strEmptySelection);
    return bFlag;
}

function checkFormFields(frm) {
    var bFlag = false;
    var nItems = frm.elements.length;
    for (var i = 0; i < nItems && !bFlag; i++) {
        bFlag = (frm.elements[i].type == 'text' && frm.elements[i].value != '');
    }
    if (!bFlag) alert(strEmptySelection);
    return bFlag;
}

function checkFormRadios(frm) {
    var bFlag = false;
    var nItems = frm.elements.length;
    for (var i = 0; i < nItems && !bFlag; i++) {
        bFlag = (frm.elements[i].type == 'radio' && frm.elements[i].checked);
    }
    if (!bFlag) alert(strEmptySelection);
    return bFlag;
}

function checkMultipleFormRadios(frm) {
    var bDiff = false;
    var aFlag = new Array();
    var nItems = frm.elements.length;
    var aFields = new Array();
    for (var i = 0; i < nItems; i++) {
        if(frm.elements[i].type == 'radio') {
            aFields[frm.elements[i].name] = true;
            if(frm.elements[i].checked || aFlag[frm.elements[i].name]) {
                aFlag[frm.elements[i].name] = true;
            } else {
                aFlag[frm.elements[i].name] = false;
            }
        }
    }
    for (i in aFields) {
        if(aFields[i] != aFlag[i]) {
            bDiff = true;
        }
    }
    if (bDiff) {
        alert(strEmptySelection);
        return false;
    } else {
        return true;
    }
}

function dspSwitch(id) {
    var d = document.getElementById(id).style;
    d.display = (d.display == 'block')?'none':'block';
}

function popup(url, width, height) {
    if (width == null) width = 360;
    if (height == null) height = 300;
    var win = window.open(url, 'win', 'width='+width+',height='+height+'srollbars=no');
    if (window.focus) win.focus();
    return false;
}


plus.promo = {

	send: function(frm) {
		if (!frm || !frm.promocode) { return false; }
		var o = new Ajax.Request(
			document.location.protocol + '//' + document.location.host + '/plus/promo/activatePromo.php',
			{
				parameters: 'c=' + frm.promocode.value,
				onFailure: this.requestFailed.bind(this),		
				onSuccess: this.requestSuccess.bind(this)
			}
		);
		//console.log(o);
	},

	requestFailed: function(request) {
		//console.log('request failed : '+request.responseText);	
	},

	requestSuccess: function(request) {
		var res = eval('(' + request.responseText + ')');
		if (res.ErrorMessage) {
			$('promoError').innerHTML = res.ErrorMessage;	
		} else if (res.type == 'normal') {
			document.location.href = document.location.protocol + '//' + document.location.host + '/plus/promo/index.php?id=' + res.page;
		} else if (res.type == 'group') {
		    document.location.href = document.location.protocol + '//' + document.location.host + '/plus/promo/products.php?pc=' + res.code;
		}
	},

    openHelp: function(parentElm) {
        var pos = Position.cumulativeOffset(parentElm);
        Element.setStyle('promohelp', {left: (pos[0] + 50) + 'px', top: pos[1] + 'px', display: 'block'});
    },

    closeHelp: function() {
        Element.setStyle('promohelp', {display: 'none'});
    }

}


