
photoUpload = {
	status :{
		FILETOOBIG			:	'file_too_big', 
		FILETOOSMALL		:	'file_too_small', 
		FILENOTUPLOADED		:	'file_not_uploaded', 
		GENERAL				:	'general_error', 
		NOTLOGGEDIN			:	'not_logged_in', 
		WRONGTYPE			:	'wrong_file_type', 
		SAVESUCCESS			:	'save_success', 
		WIDTH				:	'width', 
		HEIGHT				:	'height', 
		SAVEFAIL			:	'save_fail'
	},
	init			:function(){
		photoUpload.fileInputInit();
		$('#trade_img').load(photoUpload.onImgLoad);		
		//$('#trade_img').src(photoUpload.onImgLoadStart);		
	},
	fileInputInit	:function(o){
		$('#avatar_upload').val('');
		$('#avatar_upload').change(photoUpload.onChange);
		
	},
	
	onChange		:function(e){
//		trade_img_loader
//		trade_img
		photoUpload.showImage('up');
		
		opts	=	{
			url:			"/ajax/image?img=1",
			dataType:		'json',
			fileElementId:	'avatar_upload',
			success:		photoUpload.onSuccess,
			error:			photoUpload.onError
		};
		
		$.ajaxFileUpload(opts);		
	},
	onSuccess		:function(data, status){
	
		var s = photoUpload.status;
		
		switch(data.status){
			case s.SAVESUCCESS		:
			
				// Image preload process
				var objImagePreloader = new Image();
				objImagePreloader.onload = function() {
					$('#trade_img').attr('src',data.photom.replace(/&amp;/g, "&"));

					//	clear onLoad, IE behaves irratically with animated gifs otherwise
					objImagePreloader.onload=function(){};
				};
				objImagePreloader.src = data.photom.replace(/&amp;/g, "&");
				
				$('#photo_tmp_url').attr("value",data.uri);
				$('#photo_id').val(data.photo_id);
				$('#photom_tmp_url').attr("value",data.photom.replace(/&amp;/g, "&"));
				
				$('#error_filetobig').hide();
				$('#error_height').hide();
				$('#error_width').hide();
				$('#error_format').hide();
				$('#add_img').hide();
				$('#del_img').show();
				
				close_box();
					
				break;
			case s.FILETOOBIG		:
			
				$('#error_filetobig').show();
				$('#trade_img').attr("src","/pics/no_pic.gif");
				$('#loading').hide();
				//close_box();
				//photoUpload.showImage('img');
				break;
			case s.HEIGHT			:
				$('#error_height').show();
				$('#trade_img').attr("src","/pics/no_pic.gif");
				$('#loading').hide();
				//close_box();
				//photoUpload.showImage('img');
				break;
			case s.WIDTH			:
				$('#error_width').show();
				$('#trade_img').attr("src","/pics/no_pic.gif");
				$('#loading').hide();
				//close_box();
				//photoUpload.showImage('img');
				break;
			//case s.FILETOOSMALL		:
			//case s.FILENOTUPLOADED	:
			//case s.SAVEFAIL			:
			//case s.GENERAL			:
			//	$('#avatar_upload_error_generalerror').slideDownHidden().siblings('.error_msg').slideUpVisible();
			//	photoUpload.showImage('img');
			//	break;
			case s.WRONGTYPE		:
				$('#error_format').show();
				$('#trade_img').attr("src","/pics/no_pic.gif");
				$('#loading').hide();
				//close_box();
				//photoUpload.showImage('img');
				break;
			//case s.NOTLOGGEDIN		:
			//	break;
		}
		
		photoUpload.fileInputInit();
	},
	onError			:function(data, status, error){
		photoUpload.fileInputInit();
	},
	onImgLoad		:function(e){
	
		photoUpload.showImage('img');
	},
	
	onImgLoadStart	:function(e){
		$('#trade_img').attr("src","/pics/loading.gif");
	},
	/**
	 * @param what = 'up', 'down', 'img'
	 */
	showImage: function(what){
		if(what=='up')
			{
				$('#loading').show();
			}
		if(what=='img')
			{
				$('#trade_img').show();
				$('#loading').hide();
			}
	
	}
	
}

$(photoUpload.init);

