$(document).ready(function() {
	$('#message-file-upload').fileUploadUI({
        uploadTable: $('#add-file-box'),
        downloadTable:$('#add-file-box'),
        buildUploadRow: function (files, index) {
			return $('<li class="uploading-file">'+files[index].name+'</li>');
		},
		buildDownloadRow: function(file) {
			return $('<li class="uploaded-file"><input type="hidden" class="pj" name="pj[]" value="'+file.id+'" /><a href="#" class="delete-link">X</a> '+file.name+'</li>');
		}
    });

    $(".uploaded-file a").live('click', function(e) {
		e.preventDefault();
		$(this).parent().remove();
    });
    
	$(".new-message-link").click(function(e) {
		e.preventDefault();
		if ($(this).hasClass('check-connexion-link')) {
			return;
		}
		$("#new-message-box").lithiumWindow({
			width: 342,
			height:526,
			padding: 0
		});
		$("#new-message-reset-link").click();
		if ($(this).attr('user_id')) {
			$("#dest-type-field").val('single');
			$("#dest-multiple-box").hide();
			$("#dest-single-box").show();
			$("#new-message-box #dest-id-field").val($(this).attr('user_id'));
			$("#new-message-box #dest-field").html($(this).attr('dest'));
		} else {
			$("#dest-type-field").val('multiple');
			$("#dest-multiple-box").show();
			$("#dest-single-box").hide();

			$( "#multi-dest-field" ).bind( "keydown", function( event ) {
				if ( event.keyCode === $.ui.keyCode.TAB && $( this ).data( "autocomplete" ).menu.active ) {
					event.preventDefault();
				}
			}).autocomplete({
				source: function( request, response ) {
					$.getJSON( "<? echo _url('espace-distributeur:message:searchAnnonceur'); ?>", {
						term: extractLast( request.term )
					}, response );
				},
				search: function() {
					// custom minLength
					var term = extractLast( this.value );
					if ( term.length < 2 ) {
						return false;
					}
				},
				focus: function() {
					// prevent value inserted on focus
					return false;
				},
				select: function( event, ui ) {
					var terms = split( this.value );
					// remove the current input
					terms.pop();
					// add the selected item
					terms.push( ui.item.value );
					// add placeholder to get the comma-and-space at the end
					terms.push( "" );
					this.value = terms.join( ", " );
					return false;
				}
			});
		}
	});

	$("#new-message-close-link").click(function(e) {
		e.preventDefault();
		$("#new-message-box").lithiumWindow_close();
	});

	$("#new-message-reset-link").click(function(e) {
		e.preventDefault();
		$('#new-message-form input[type="text"], #new-message-form textarea').each(function() {
			$(this).val('');
		});
		$(".uploaded-file").remove();
	});
	
	$("#new-message-send-link").click(function() {
		var params = {};
		params.subject = $("#new-message-subject-field").val();
		params.msg = $("#new-message-msg-field").val();
		
		if ($("#dest-type-field").val() == 'single') {
			params.dest_id = $("#dest-id-field").val();
		} else {
			params.dest_id = $( "#multi-dest-field" ).val();
		}
		params.files = new Array();
    	$(".pj").each(function() {
			params.files.push($(this).val());
    	});
		$.post($("#send-url-field").val(), params, function(data) {
			TMsg(data);
			if (data.code == 'success') {
				$("#new-message-box").lithiumWindow_close();
			}
		}, 'json');

		return false;
	});
});
