﻿(function ($) {
	$.fn.ris2Watermark = function () {
		try {
			return each(function () {
				var $input = $(this);
				var $watermark = $input.data("watermark");
				if (!$watermark && title) {
					$input.watermark({ watermarkText: title, watermarkCssClass: 'watermarked' });
				}
			});
		} catch (e) {

		}
		return null;
	};
	$.ris2Watermark = {
		attachAll: function (options) {
			$.ris2Watermark.all = $("input:text[title!=''],input:password[title!=''],textarea[title!='']").ris2Watermark(options);
		}
	};
})(jQuery);

(function ($) {

	function CreateDummyInput(jElement, options) {
		var watermarkText = (options.watermarkText) ? options.watermarkText : jElement.attr('title');

		var dummyInput;
		if (jElement.get(0).tagName == "TEXTAREA") {
			dummyInput = $('<textarea>')
            .attr('id', jElement.attr('id') + '_watermark')
            .addClass(options.watermarkCssClass)
            .css({ height: jElement.height(),
            	width: jElement.width()
            })
            .val(watermarkText)
            .hide();
		}
		else {
			dummyInput = $('<input type="text">')
            .attr('id', jElement.attr('id') + '_watermark')
            .addClass(options.watermarkCssClass)
            .css({ height: jElement.height(),
            	width: jElement.width()
            })
            .val(watermarkText)
            .hide();
		}

		jElement.after(dummyInput);
	}

	function MakeWatermark(element, options) {
		element.each(function () {
			var thisEl = jQuery(this);

			CreateDummyInput(thisEl, options);

			var dummyInput = $('#' + thisEl.attr('id') + '_watermark');
			dummyInput.click(function () {
				$(this).hide();
				thisEl.show().focus();
			});

			dummyInput.focus(function () {
				$(this).hide();
				thisEl.show().focus();
			});

			thisEl.blur(function () {
				if (value == '' && !$(this).hasClass(Validation.Classes.Null)) {
					$(this).hide();
					dummyInput.show();
				}
			});

			if (thisEl.val() == '') {
				thisEl.hide();
				dummyInput.show();
			}

		});

		return element;

	}

	$.fn.watermark = function(options) {
		return MakeWatermark(this, options);
	};

})(jQuery);

function selectWatermarkElement(input) {
	return jSelect(input[0].id + '_watermark');
}

function selectWatermarkedInput(watermarkInput) {
	return jSelect(watermarkInput[0].id.replace('_watermark', ''));
}

function hideWatermark(input) {
	selectWatermarkElement(input).hide();
	input.show();
}

function hideAllWatermarks() {
	$('.watermarked').each(function () {
		var watermark = $(this);
		watermark.hide();
		selectWatermarkedInput(watermark).show();
	});
}
