﻿;
(function($) {
	var f = clearTimeout;
	var g = setTimeout;
	var h = Array.prototype;
	$.each(['trigger', 'triggerHandler'], function(i, e) {
		$.fn[e + 'Defer'] = function() {
			var a = arguments;
			var b = e + 'Defer.' + a[0];
			f(this.data(b));
			var c = (typeof (a[a.length - 1]) == 'number') ? h.pop.call(a) : 150;
			var d = this;
			this.data(b, g(function() {
				d[e].apply(d, a)
			}, c));
			return this
		}
	});
	$.fn.bindDefer = function() {
		var a = arguments;
		var b = (typeof (a[a.length - 1]) == "number") ? h.pop.call(a) : 150;
		var c = h.pop.call(a);
		var d = this;
		var e;
		h.push.call(a, function() {
			f(e);
			a = arguments;
			e = g(function() {
				c.apply(d, a)
			}, b)
		});
		this.bind.apply(this, a);
		return this
	}
})(jQuery);
(function($) {
	var ie6 = $.browser.msie && parseInt($.browser.version) == 6 && typeof window['XMLHttpRequest'] != "object",
        ieQuirks = null,
        w = [];
	$.modal = function(data, options) {
		return $.modal.impl.init(data, options);
	};
	$.modal.close = function() {
		$.modal.impl.close();
	};
	$.fn.modal = function(options) {
		return $.modal.impl.init(this, options);
	};
	$.modal.defaults = {
		opacity: 50,
		overlayId: 'simplemodal-overlay',
		overlayCss: {},
		containerId: 'simplemodal-container',
		containerCss: {},
		dataCss: {},
		zIndex: 1000,
		close: true,
		closeHTML: '<a class="modalCloseImg" title="Close"></a>',
		closeClass: 'simplemodal-close',
		position: null,
		persist: false,
		onOpen: null,
		onShow: null,
		onClose: null
	};
	$.modal.impl = {
		opts: null,
		init: function(data, options) {
			if (this.dialog.data) {
				return false;
			}
			ieQuirks = $.browser.msie && !$.boxModel;
			this.opts = $.extend({}, $.modal.defaults, options);
			this.zIndex = this.opts.zIndex;
			this.occb = false;
			if (typeof data == 'object') {
				data = data instanceof jQuery ? data : $(data);
				if (data.parent().parent().size() > 0) {
					this.dialog.parentNode = data.parent();
					if (!this.opts.persist) {
						this.dialog.orig = data.clone(true);
					}
				}
			} else if (typeof data == 'string' || typeof data == 'number') {
				data = $('<div/>').html(data);
			} else {
				alert('SimpleModal Error: Unsupported data type: ' + typeof data);
				return false;
			}
			this.dialog.data = data.addClass('simplemodal-data').css(this.opts.dataCss);
			data = null;
			this.create();
			this.open();
			if ($.isFunction(this.opts.onShow)) {
				this.opts.onShow.apply(this, [this.dialog]);
			}
			return this;
		},
		bindEvents: function() {
			var self = this;
			$('.' + this.opts.closeClass).bind('click.simplemodal', function(e) {
				e.preventDefault();
				self.close();
			});
			$(window).bind('resize.simplemodal', function() {
				w = self.getDimensions();
				self.setPosition();
				if (ie6 || ieQuirks) {
					self.fixIE();
				} else {
					self.dialog.iframe && self.dialog.iframe.css({
						height: w[0],
						width: w[1]
					});
					self.dialog.overlay.css({
						height: w[0],
						width: w[1]
					});
				}
			});
		},
		close: function() {
			if (!this.dialog.data) {
				return false;
			}
			if ($.isFunction(this.opts.onClose) && !this.occb) {
				this.occb = true;
				this.opts.onClose.apply(this, [this.dialog]);
			} else {
				if (this.dialog.parentNode) {
					if (this.opts.persist) {
						this.dialog.data.hide().appendTo(this.dialog.parentNode);
					} else {
						this.dialog.data.remove();
						this.dialog.orig.appendTo(this.dialog.parentNode);
					}
				} else {
					this.dialog.data.remove();
				}
				this.dialog.container.remove();
				this.dialog.overlay.remove();
				this.dialog.iframe && this.dialog.iframe.remove();
				this.dialog = {};
			}
			this.unbindEvents();
		},
		create: function() {
			w = this.getDimensions();
			if (ie6) {
				this.dialog.iframe = $('<iframe src="javascript:false;"/>').css($.extend(this.opts.iframeCss, {
					display: 'none',
					opacity: 0,
					position: 'fixed',
					height: w[0],
					width: w[1],
					zIndex: this.opts.zIndex,
					top: 0,
					left: 0
				})).appendTo('body');
			}
			this.dialog.overlay = $('<div/>').attr('id', this.opts.overlayId).addClass('simplemodal-overlay').css($.extend(this.opts.overlayCss, {
				display: 'none',
				opacity: this.opts.opacity / 100,
				height: w[0],
				width: w[1],
				position: 'fixed',
				left: 0,
				top: 0,
				zIndex: this.opts.zIndex + 1
			})).appendTo('body');
			this.dialog.container = $('<div/>').attr('id', this.opts.containerId).addClass('simplemodal-container').css($.extend(this.opts.containerCss, {
				display: 'none',
				position: 'fixed',
				zIndex: this.opts.zIndex + 2
			})).append(this.opts.close ? $(this.opts.closeHTML).addClass(this.opts.closeClass) : '').appendTo('body');
			this.setPosition();
			if (ie6 || ieQuirks) {
				this.fixIE();
			}
			this.dialog.container.append(this.dialog.data.hide());
		},
		dialog: {},
		fixIE: function() {
			var p = this.opts.position;
			$.each([this.dialog.iframe || null, this.dialog.overlay, this.dialog.container], function(i, el) {
				if (el) {
					var bch = 'document.body.clientHeight',
                        bcw = 'document.body.clientWidth',
                        bsh = 'document.body.scrollHeight',
                        bsl = 'document.body.scrollLeft',
                        bst = 'document.body.scrollTop',
                        bsw = 'document.body.scrollWidth',
                        ch = 'document.documentElement.clientHeight',
                        cw = 'document.documentElement.clientWidth',
                        sl = 'document.documentElement.scrollLeft',
                        st = 'document.documentElement.scrollTop',
                        s = el[0].style;
					s.position = 'absolute';
					if (i < 2) {
						s.removeExpression('height');
						s.removeExpression('width');
						s.setExpression('height', '' + bsh + ' > ' + bch + ' ? ' + bsh + ' : ' + bch + ' + "px"');
						s.setExpression('width', '' + bsw + ' > ' + bcw + ' ? ' + bsw + ' : ' + bcw + ' + "px"');
					} else {
						var te, le;
						if (p && p.constructor == Array) {
							var top = p[0] ? typeof p[0] == 'number' ? p[0].toString() : p[0].replace(/px/, '') : el.css('top').replace(/px/, '');
							te = top.indexOf('%') == -1 ? top + ' + (t = ' + st + ' ? ' + st + ' : ' + bst + ') + "px"' : parseInt(top.replace(/%/, '')) + ' * ((' + ch + ' || ' + bch + ') / 100) + (t = ' + st + ' ? ' + st + ' : ' + bst + ') + "px"';
							if (p[1]) {
								var left = typeof p[1] == 'number' ? p[1].toString() : p[1].replace(/px/, '');
								le = left.indexOf('%') == -1 ? left + ' + (t = ' + sl + ' ? ' + sl + ' : ' + bsl + ') + "px"' : parseInt(left.replace(/%/, '')) + ' * ((' + cw + ' || ' + bcw + ') / 100) + (t = ' + sl + ' ? ' + sl + ' : ' + bsl + ') + "px"';
							}
						} else {
							te = '(' + ch + ' || ' + bch + ') / 2 - (this.offsetHeight / 2) + (t = ' + st + ' ? ' + st + ' : ' + bst + ') + "px"';
							le = '(' + cw + ' || ' + bcw + ') / 2 - (this.offsetWidth / 2) + (t = ' + sl + ' ? ' + sl + ' : ' + bsl + ') + "px"';
						}
						s.removeExpression('top');
						s.removeExpression('left');
						s.setExpression('top', te);
						s.setExpression('left', le);
					}
				}
			});
		},
		getDimensions: function() {
			var el = $(window);
			var h = $.browser.opera && $.browser.version > '9.5' && $.fn.jquery <= '1.2.6' ? document.documentElement['clientHeight'] : el.height();
			return [h, el.width()];
		},
		open: function() {
			this.dialog.iframe && this.dialog.iframe.show();
			if ($.isFunction(this.opts.onOpen)) {
				this.opts.onOpen.apply(this, [this.dialog]);
			} else {
				this.dialog.overlay.show();
				this.dialog.container.show();
				this.dialog.data.show();
			}
			this.bindEvents();
		},
		setPosition: function() {
			var top, left, hCenter = (w[0] / 2) - ((this.dialog.container.height() || this.dialog.data.height()) / 2),
                vCenter = (w[1] / 2) - ((this.dialog.container.width() || this.dialog.data.width()) / 2);
			if (this.opts.position && this.opts.position.constructor == Array) {
				top = this.opts.position[0] || hCenter;
				left = this.opts.position[1] || vCenter;
			} else {
				top = hCenter;
				left = vCenter;
			}
			this.dialog.container.css({
				left: left,
				top: top
			});
		},
		unbindEvents: function() {
			$('.' + this.opts.closeClass).unbind('click.simplemodal');
			$(window).unbind('resize.simplemodal');
		}
	};
})(jQuery);
var redirecturl = document.location.href;
var login = {
	message: null,
	_contentHeight: null,
	ajaxOpener: function(redirectURL, entity) {
		var querystring = "";
		if (entity == 'copyfiles' || entity == 'movefiles') {
			querystring = '&url=' + redirecturl;
		}
		$.ajax({
			url: redirectURL,
			data: $('#login-container form').serialize() + querystring,
			type: 'post',
			cache: false,
			dataType: 'html',
			complete: function(xhr) {
				$('#login-container .login-loading').fadeOut(200, function() { });
				if (entity == 'login') {
					login.contentHeight(350);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.showLogin,
						onClose: login.close
					});
				}
				if (entity == 'tellafriend') {
					login.contentHeight(420);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.showTellAFriend,
						onClose: login.close
					});
				}
				if (entity == 'photoflag') {
					login.contentHeight(250);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.showPhotoFlag,
						onClose: login.close
					});
				}
				if (entity == 'photoalbumflag') {
					login.contentHeight(250);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.showPhotoAlbumFlag,
						onClose: login.close
					});
				}
				if (entity == 'copyfiles') {
					login.contentHeight(400);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.ShowCopy,
						onClose: login.close
					});
				}
				if (entity == 'movefiles') {
					login.contentHeight(400);
					$(xhr.responseText).modal({
						close: false,
						position: ["15%", ],
						overlayId: 'login-overlay',
						containerId: 'login-container',
						onOpen: login.open,
						onShow: login.ShowMove,
						onClose: login.close
					});
				}
			},
			error: function(xhr) {
				alert(xhr.statusText);
			}
		});
	},
	contentHeight: function(height) {
		if (height == null) {
			return login._contentHeight;
		} else {
			login._contentHeight = height
		}
	},
	error: function(xhr) {
		alert(xhr.statusText);
	},
	open: function(dialog) {
		if ($.browser.mozilla) {
			$('#login-container .login-button').css({
				'padding-bottom': '2px'
			});
		}
		if ($.browser.safari) {
			$('#login-container .login-input').css({
				'font-size': '.9em'
			});
		}
		var h = login.contentHeight();
		if ($('#login-subject').length) {
			h += 26;
		} 
		{
			if ($('#login-cc').length) h += 22;
		}
		var title = $('#login-container .login-title').html();
		$('#login-container .login-title').html('Loading...');
		dialog.overlay.fadeIn(200, function() {
			dialog.container.fadeIn(200, function() {
				dialog.data.fadeIn(200, function() {
					$('#login-container .login-content').animate({
						height: h
					}, function() {
						$('#login-container .login-title').html(title);
						$('#login-container form').fadeIn(200, function() {
							$('#login-container input#txtEmail').focus();
							$('#login-container .login-cc').click(function() {
								var cc = $('#login-container #login-cc');
								cc.is(':checked') ? cc.attr('checked', '') : cc.attr('checked', 'checked');
							});
							if ($.browser.msie && $.browser.version < 7) {
								$('#login-container .login-button').each(function() {
									if ($(this).css('backgroundImage').match(/^url[("']+(.*\.png)[)"']+$/i)) {
										var src = RegExp.$1;
										$(this).css({
											backgroundImage: 'none',
											filter: 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + src + '", sizingMethod="crop")'
										});
									}
								});
							}
						});
					});
				});
			});
		});
	},
	showNoError: function() {
		$('#login-container .login-message').animate({
			height: '30px'
		}, login.showError);
	},
	showValidationFailedError: function() {
		var msg = $('#login-container .login-message div');
		msg.fadeOut(200, function() {
			msg.empty();
			login.showError();
			msg.fadeIn(200);
		});
	},
	notValid: function() {
		if ($('#login-container .login-message:visible').length) {
			login.showValidationFailedError();
		} else {
			login.showNoError();
		}
	},
	submitdata: function(redurl, entity) {
		$('#login-container .login-message').hide('slow');
		$('#login-container .login-content').animate({
			height: login.contentHeight()
		}, function() {
			var querystring = "";
			if (entity == 'copyfiles' || entity == 'movefiles') {
				var pageurl = document.location.href;
				var ParentDirectoryId = $('.divParentID').children('span:last').html() != '' ? $('.divParentID').children('span:last').html() : $('.divParentID').children('span').html();
				querystring = '&selectedFile=' + $('#selectedFile').val() + '&parentDirectoryID=' + ParentDirectoryId;
			} else if (entity == 'tellafriend') {
				querystring = '&entityType=' + $('#entity').val()
			} else if (entity == 'tellafriend') {
				querystring = '&entityType=' + $('#entity').val()
			}
			$('#login-container .login-loading').fadeIn(200, function() {
				$.ajax({
					url: redurl,
					data: $('#login-container form').serialize() + '&action=send&url=' + redirecturl + querystring + '&ReturnURL=' + getQuerystringParamValue('ReturnURL'),
					type: 'post',
					cache: false,
					dataType: 'html',
					complete: function(xhr) {
						$('#login-container .login-loading').fadeOut(200, function() { });
						if (entity == 'login') {
							if (xhr != null) {
								$('#login-container .login-loading').fadeOut(200, function() { });
								if (xhr.responseText == "success") {
									if ((getQuerystringParamValue('ReturnURL') == null) || (getQuerystringParamValue('ReturnURL') == '')) {
										window.location.href = redirecturl;
									} else {
										window.location.href = getQuerystringParamValue('ReturnURL');
									}
								} else {
									$('#login-container .login-content').animate({
										height: '400px'
									});
									fadeInfadeOutAnimation($('#login-container .login-message').html($('<div class="login-error">').append(xhr.responseText)));
								}
							}
						} else if (entity == 'tellafriend') {
							$('#login-container .login-content-form').fadeOut();
							$('#login-container .login-content').animate({
								height: '150px'
							});
							$('#login-container .login-message').html($('<div class="login-error">').append("This page has been forwarded.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
						} else if (entity == 'photoflag') {
							$('#login-container .login-content-form').fadeOut();
							$('#login-container .login-message').html($('<div class="login-error">').append("This photo has been flagged")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
						} else if (entity == 'photoalbumflag') {
							$('#login-container .login-content-form').fadeOut();
							$('#login-container .login-message').html($('<div class="login-error">').append("This album has been flagged")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
						} else if (entity == 'copyfiles') {
							if (xhr.responseText == "a") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files were not found while copying. these corrupted files were deleted. You may need to upload them again.</br>And some files you copied already exist in the destination directory.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							if (xhr.responseText == "b") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files you copied already exist in the destination directory.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							if (xhr.responseText == "c") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files were not found while copying. these corrupted files were deleted. You may need to upload them again.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							} else if (xhr.responseText == "y") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("File(s) copied successfully.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							} else if (xhr.responseText == "f") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("There are no selected file to copy.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							$('#MainDiv').find('input:checkbox').removeAttr('checked');
						} else if (entity == 'movefiles') {
							if (xhr.responseText == "p") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files were not found while moving. these corrupted files were deleted. You may need to upload them again.</br>And some files you copied already exist in the destination directory.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							if (xhr.responseText == "q") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files you moved already exist in the destination directory.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							if (xhr.responseText == "r") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("Some files were not found while moving. these corrupted files were deleted. You may need to upload them again.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							} else if (xhr.responseText == "s") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("File(s) moved successfully.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							} else if (xhr.responseText == "t") {
								$('#login-container .login-content').animate({
									height: '320px'
								});
								$('#login-container .login-message').html($('<div class="login-error">').append("There are no selected file to move.")).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
							}
							window.location.href = pageurl;
						}
					},
					error: login.error
				});
			});
		});
	},
	showLogin: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			var status = null;
			if (login.validateLogin()) {
				login.submitdata(String.format('{0}/ModalDialogs/loginmodal.aspx', RELATIVEAPPLICATIONURL), 'login');
			} else {
				login.notValid();
			}
			e.preventDefault();
		});
	},
	showPhotoFlag: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			e.preventDefault();
			var status = null;
			if (login.validateFlagEntity()) {
				login.submitdata(String.format('{0}/ModalDialogs/photomodal.aspx', RELATIVEAPPLICATIONURL), 'photoflag');
			} else {
				login.notValid();
			}
		});
	},
	showPhotoAlbumFlag: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			e.preventDefault();
			var status = null;
			if (login.validateFlagEntity()) {
				login.submitdata(String.format('{0}/ModalDialogs/photoalbummodal.aspx', RELATIVEAPPLICATIONURL), 'photoalbumflag');
			} else {
				login.notValid();
			}
		});
	},
	showTellAFriend: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			e.preventDefault();
			var status = null;
			if (login.validateTellAFriend()) {
				login.submitdata(String.format('{0}/ModalDialogs/tellafriendmodal.aspx', RELATIVEAPPLICATIONURL), 'tellafriend');
			} else {
				login.notValid();
			}
		});
	},
	ShowCopy: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			e.preventDefault();
			var status = null;
			if (login.validateFileDirectry()) {
				login.submitdata(String.format('{0}/ModalDialogs/copyfiles.aspx', RELATIVEAPPLICATIONURL), 'copyfiles');
			} else {
				login.notValid();
			}
		});
	},
	ShowMove: function(dialog) {
		$('#login-container .login-send').click(function(e) {
			e.preventDefault();
			var status = null;
			if (login.validateFileDirectry()) {
				login.submitdata(String.format('{0}/ModalDialogs/movefiles.aspx', RELATIVEAPPLICATIONURL), 'movefiles');
			} else {
				login.notValid();
			}
		});
	},
	close: function(dialog) {
		$('#login-container .login-message').fadeOut();
		$('#login-container .login-title').html('Goodbye...');
		$('#login-container form').fadeOut(200);
		$('#login-container .login-content').animate({
			height: 40
		}, function() {
			dialog.data.fadeOut(200, function() {
				dialog.container.fadeOut(200, function() {
					dialog.overlay.fadeOut(200, function() {
						$.modal.close();
					});
				});
			});
		});
	},
	validateLogin: function() {
		login.message = '';
		var email = $('#login-container #txtEmail').val();
		if (!email) {
			login.message += 'User Name is required. ';
		}
		if (!$('#login-container #txtPassword').val()) {
			login.message += 'Password is required. ';
		}
		if (login.message.length > 0) {
			return false;
		} else {
			return true;
		}
	},
	validateFileDirectry: function() {
		login.message = '';
		var destinationDirectoryID = $('#login-container #hdnDirectoryID').val();
		var selectedFile = $('#selectedFile').val();
		if (selectedFile == '') {
			login.message += 'There are no selected file .';
		} else if (!destinationDirectoryID) {
			login.message = 'Select a destination directory';
		} else if (ParentId == destinationDirectoryID) {
			login.message = 'Source and destination directories are same';
		}
		if (login.message.length > 0) {
			return false;
		} else {
			return true;
		}
	},
	validateTellAFriend: function() {
		login.message = '';
		var txtName = $('#login-container #txtName');
		var txtFriendName = $('#login-container #txtFriendName');
		var txtFriendEmail = $('#login-container #txtFriendEmail');
		var txtMessage = $('#login-container #txtMessage');
		if (txtName.val() == '' && txtFriendName.val() == '' && txtFriendEmail.val() == '') {
			login.message += "Your name, friend's name and email id is required.";
		} else {
			if (txtName.val() == '') {
				login.message += 'Your Name is required. ';
			}
			if (txtFriendName.val() == '') {
				login.message += 'Friend\'s Name is required. ';
			}
			if (txtFriendEmail.val() == '') {
				login.message += 'Friend\'s Email is required. ';
			}
			if (!login.validateEmail(txtFriendEmail.val())) {
				login.message += 'Email is invalid. ';
			}
		}
		if (login.message.length > 0) {
			return false;
		} else {
			return true;
		}
	},
	validateFlagEntity: function() {
		login.message = '';
		if ($.trim($('#login-container textarea#txtMessage').val()) == '') {
			login.message = 'Why do you want to flag this photo?';
		}
		return (login.message.length == 0)
	},
	validateEmail: function(email) {
		var at = email.lastIndexOf("@");
		if (at < 1 || (at + 1) === email.length) {
			return false;
		}
		if (/(\.{2,})/.test(email)) {
			return false;
		};
		var local = email.substring(0, at);
		var domain = email.substring(at + 1);
		if (local.length < 1 || local.length > 64 || domain.length < 4 || domain.length > 255) {
			return false;
		}
		if (/(^\.|\.$)/.test(local) || /(^\.|\.$)/.test(domain)) return false;
		if (!/^"(.+)"$/.test(local)) {
			if (!/^[-a-zA-Z0-9!#$%*\/?|^{}`~&'+=_\.]*$/.test(local)) {
				return false;
			}
		}
		if (!/^[-a-zA-Z0-9\.]*$/.test(domain) || domain.indexOf(".") === -1) {
			return false;
		}
		return true;
	},
	showError: function() {
		$('#login-container .login-message').animate({
			height: '50px'
		}).html($('<div class="login-error">').append(login.message)).fadeIn(400).fadeOut(400).fadeIn(400).fadeOut(400).fadeIn(400);
	}
};
$(function() {
    $('.loginCss1').click(function(e) {
        if ($(this).attr('href') != null) {
            redirecturl = $(this).attr('href');
        }
        login.ajaxOpener(String.format('{0}/ModalDialogs/loginmodal.aspx', RELATIVEAPPLICATIONURL), 'login');
        e.preventDefault();
    });
    $('.tellafriendlink').click(function(e) {
        redirecturl = document.location.href;
        login.ajaxOpener(String.format('{0}/ModalDialogs/tellafriendmodal.aspx', RELATIVEAPPLICATIONURL), 'tellafriend');
        e.preventDefault();
    });
    $('.photoFlagLink').click(function(e) {
        if ($(this).attr('href') != null) {
            redirecturl = $(this).attr('href');
        }
        login.ajaxOpener(String.format('{0}/ModalDialogs/photomodal.aspx', RELATIVEAPPLICATIONURL), 'photoflag');
        e.preventDefault();
    });

    $('.photoAlbumFlagLink').click(function(e) {
        if ($(this).attr('href') != null) {
            redirecturl = $(this).attr('href');
        }
        login.ajaxOpener(String.format('{0}/ModalDialogs/photoalbummodal.aspx', RELATIVEAPPLICATIONURL), 'photoalbumflag');
        e.preventDefault();
    });
    $('.copyFile').click(function(e) {
        e.preventDefault();
        if ($('.copyFile').parent().children('input:hidden').val() == '0') {
            if (this.attributes['href'] != null) {
                redirecturl = $(this).attr('href');
            }
            var headerChckBox = $('#checkAll');
            var checkboxCollection = $('#simTableHeader').children('tbody').find('input:checkbox:not(#' + headerChckBox[0].id + ')');
            var fileArray = new Array();
            $.each(checkboxCollection, function(i, checkBox) {
                if ($(checkBox).attr('checked')) {
                    var id = $(checkBox).parent().next().next().children('div').children('input:hidden').val();
                    fileArray.push(id);
                }
            });
            if (fileArray.length > 0) {
                login.ajaxOpener(String.format('{0}/ModalDialogs/copyfiles.aspx', RELATIVEAPPLICATIONURL), 'copyfiles');
                var comaSeperated = fileArray.join(',');
                $('#selectedFile').val(comaSeperated);
            } else {
                $('#divNotice2').html('There are no selected files to copy.');
                $('#divNotice2').show('slow');
                $('#divNotice2').fadeOut(6000);
            }
        }
    });
    $('.moveFile').click(function(e) {
        e.preventDefault();
        if ($('.moveFile').parent().children('input:hidden').val() == '0') {
            if (this.attributes['href'] != null) {
                redirecturl = $(this).attr('href');
            }
            var headerChckBox = $('#checkAll');
            var checkboxCollection = $('#simTableHeader').children('tbody').find('input:checkbox:not(#' + headerChckBox[0].id + ')');
            var fileArray = new Array();
            $.each(checkboxCollection, function(i, checkBox) {
                if ($(checkBox).attr('checked')) {
                    var id = $(checkBox).parent().next().next().children('div').children('input:hidden').val();
                    fileArray.push(id);
                }
            });
            if (fileArray.length > 0) {
                login.ajaxOpener(String.format('{0}/ModalDialogs/movefiles.aspx', RELATIVEAPPLICATIONURL), 'movefiles');
                var comaSeperated = fileArray.join(',');
                $('#selectedFile').val(comaSeperated);
            } else {
                $('#divNotice2').html('There are no selected files to move.');
                $('#divNotice2').show('slow');
                $('#divNotice2').fadeOut(6000);
            }
        }
    });
});
var img = ['cancel.png', 'form_bottom.gif', 'form_top.gif', 'indicator_medium.gif', 'send.png'];
$(img).each(function() {
	var i = new Image();
	i.src = String.format('{0}/assets/images/', RELATIVEAPPLICATIONURL) + this;
});

(function($) {
	var map = new Array();
	$.Watermark = {
		ShowAll: function() {
			for (var i = 0; i < map.length; i++) {
				if (map[i].obj.val() == "") {
					map[i].obj.val(map[i].text);
					map[i].obj.css("color", map[i].WatermarkColor);
				} else {
					map[i].obj.css("color", map[i].DefaultColor);
				}
			}
		},
		HideAll: function() {
			for (var i = 0; i < map.length; i++) {
				if (map[i].obj.val() == map[i].text) {
					map[i].obj.val("");
				}
			}
		}
	};
	$.fn.Watermark = function(text, color) {
		if (!color) color = "#aaa";
		return this.each(function() {
			var input = $(this);
			var defaultColor = input.css("color");
			map[map.length] = {
				text: text,
				obj: input,
				DefaultColor: defaultColor,
				WatermarkColor: color
			};

			function clearMessage() {
				if (input.val() == text) {
					input.val("");
				}
				input.css("color", defaultColor);
			}
			function insertMessage() {
				if (input.val().length == 0 || input.val() == text) {
					input.val(text);
					input.css("color", color);
				} else {
					input.css("color", defaultColor);
				}
			}
			input.focus(clearMessage);
			input.blur(insertMessage);
			input.change(insertMessage);
			insertMessage();
		});
	};
})(jQuery);
