servicesPP = new Array;
ItemInformationPP = new Array;
img = '<img src="' + HTTP_PATH + 'img/apply16.png">';
originalBorder = {
	'border' : '1px solid #84A8CC',
	'background-color' : '#FFFFFF'
};
errorBorder = {
	'border' : '1px solid red',
	'background-color' : '#FFFFDD'
};

function popupInit(bookingKey) {
	request.bookingKey = bookingKey;
	$('#ThirdParty').hide();
	$("#btnPPReset").click(resetFormPP);
	$("#btnpPPSendDispatch").click(SendDispatch);
	
	$('#txtPCity').val(request.paramsSaved['originCity']);
	$('#txtPST').val(request.paramsSaved['originState']);
	$('#txtPZip').val(request.paramsSaved['originZip']);
	
	$('#txtDCity').val(request.paramsSaved['destinationCity']);
	$('#txtDST').val(request.paramsSaved['destinationState']);
	$('#txtDZip').val(request.paramsSaved['destinationZip']);
	
	$("#init_date").html($('#txtPickupDate').val());

	if (servicesPP.length > 0) {
		$.each(servicesPP, function(key, id) {
			$('#' + id + '-pp').html(img);
		});
	}

	arr = request.paramsSaved['lineItems'].split(';');
	if (arr.length > 0) {
		params = new Array;
		i = 0;
		for (key in arr) {
			data = arr[key].split(':');
			if (data.length > 0) {
				params[i] = new Array();
				tmpArr = new Array;
				for (index in data) {
					if (data[index].length > 0) {
						param = data[index].split('=');
						tmpArr[param[0]] = param[1];
					}
				}
				params[i] = tmpArr;
				i++;
			}
		}
		for (key in params) {
			_addItemInformation(params[key], key);
		}
	}
}

function popupInitOcean(info){
	request.story['OceanInfo'] = info;
	request.bookingKey = 'false';
	$('#ThirdParty').hide();
	$("#btnPPReset").click(resetFormPP);
	$("#btnpPPSendDispatch").click(SendDispatch);
	$('div [class="divRightTop"]').remove();
}

function _addItemInformation(arr, key) {
	if (empty(arr['FreightClass']))
		return;
	chkHazMat = (arr['HazMat'] == 1) ? img : '';
	row = '<tr id="tr'
			+ key
			+ '" class="itemRow">'
			+ '<td><span id="lblClass'
			+ key
			+ '">'
			+ arr['FreightClass']
			+ '</span></td>'
			+ '<td><span id="lblWeight'
			+ key
			+ '">'
			+ arr['Weight']
			+ '</span></td>'
			+ '<td><span id="lblPiece'
			+ key
			+ '">'
			+ arr['Quantity']
			+ '</span></td>'
			+ '<td><span id="lblType'
			+ key
			+ '">'
			+ $('#ddlUnit1 option[value="' + arr['ItemUnit'] + '"]').attr(
					'label') + '</span></td>' + '<td>' + chkHazMat + '</td>'
			+ '<td><input name="txtNMFC' + key + '" type="text" id="txtNMFC'
			+ key + '" class="itemTextBox number" /></td>'
			+ '<td><input name="txtPallet' + key
			+ '" type="text" id="txtPallet' + key
			+ '" class="itemTextBox number" /></td>'
			+ '<td><input name="txtDesc' + key + '" type="text" id="txtDesc'
			+ key + '" class="itemDescTextBox requred" /></td>' + '</tr>';
	$("#tblShipmentDetails").append(row);
}

function resetFormPP() {
	fields = $('#dispatchDiv input[type=text]');
	fields.css( {
		'border' : '1px solid #84A8CC',
		'background-color' : '#FFFFFF'
	});
	fields.val('');
	fields.tooltip( {
		track : false
	});
	$('#txtComment').val('');
}

function SendDispatch() {
	if (check_valid_fields('dispatchDiv')) {
		soap.CreateLTLBooking(); // send data;
		request.setFunction('GetLTLRate');
	}
}

function ThirdPartyShowHide(visible) {
	div = $('#ThirdParty');
	if (visible == 'show') {
		fields = $('#ThirdParty input[type="text"]');
		fields.css( {
			'border' : '1px solid #84A8CC',
			'background-color' : '#FFFFFF'
		});
		fields.val('');
		fields.tooltip( {
			track : false
		});
		div.show('slow');
	} else {
		div.hide('slow');
	}
}

function ThirdPartyOK() {
	if (check_valid_fields('ThirdParty')) {
		// form is valid => save data and close small popup;
		ThirdPartyShowHide('hide');
	}
}

function ThirdPartyCancel() {
	_set('rdblClientType_0', true, false);
	ThirdPartyShowHide('hide');
}

function check_valid_fields(div_id) {
	valid = true;
	$('#' + div_id + ' input[type="text"]').tooltip( {
		track : false
	});
	$('#' + div_id + ' input[type="text"]').css(originalBorder);
	fields = $('#' + div_id + ' input[class$="requred"][value=""]');
	if (fields.length != 0) {
		_setFiedsError(fields, 'Field requred');
		valid = false;
	}

	comments = $('#' + div_id + ' textarea');
	if (comments.length > 0) {
		if (empty(comments.val())) {
			_setFiedsError(comments, 'Field requred');
			valid = false;
		}
	}

	mails = $('#' + div_id + ' input[class$="email"]');
	$.each(mails, function(key, mailObj) {
		if (!is_valid_email(mailObj.value)) {
			_setFiedsError($(mailObj), 'Email invalid');
			valid = false;
		}
	});

	numbers = $('#' + div_id + ' input[class$="number"]');
	$.each(numbers, function(key, numberObj) {
		if (!isNumber(numberObj.value)) {
			_setFiedsError($(numberObj), 'Must be number');
			valid = false;
		}
	});

	return valid;
}

function _setFiedsError(obj, message) {
	obj.tooltip( {
		bodyHandler : function() {
			return message;
		}
	});
	obj.css(errorBorder);
	obj.click(function() {
		$(this).css(originalBorder);
	});
}