/**
 *   RainBoard fron Attachment js
 */
jQuery(document).ready(function($) {

	$('.file-upload .text').val('첨부할 파일을 선택하세요.');

    $("div.attachFile > a").click(function(e){
    	$(this).siblings(".attach_layer").children("ul").toggle();
    });

	//첨부파일 삭제
	$('.rainboard_delete_attach').click(function(){
		var write_span 		= $(this).parents("span.write-span");
		var new_fileform	= $(this).parents("span.write-span").siblings("span.write-span");
		var deleted 		= $(this).siblings().text();
		var deleted_index 	= $(this).siblings().attr('index');
		var cur_size 		= parseInt($(this).parents("div.rainboard_attach_file_div").attr("size"));
		var allowed_size = parseInt($("input[name='rainboard_attach_size']").val());
		allowed_size += cur_size;

		$("input[name='rainboard_attach_size']").val(allowed_size);
		$("div.max-attach-size span").html( (allowed_size / (1024*1024)).toFixed(2)+"Mb" );

		$(this).parents("div.attach-box").before('<input type="hidden" name="rainboard_deleted_file[]" value="'+deleted+'"/><input type="hidden" name="rainboard_deleted_index[]" value="'+deleted_index+'"/>');

		write_span.remove();
		new_fileform.show();

	});

	//첨부파일 삭제
	/*
	$('.rainboard_delete_attach').click(function(){
		var index = $(this).parent().index();
		var deleted = $(this).siblings().text();

		$(this).siblings().remove();
		$(this).before('<label for="entry-file"><span data-title="첨부파일">첨부파일</span></label>'+
	            '<span style="position:relative; width:300px" class="write-span">'+
	            '<div class="file-upload">'+
	              '<input type="text" style="font-size:12px" readonly="readonly" title="파일 첨부하기" class="text">'+
	              '<div class="upload-btn">'+
	                '<button title="파일 찾아보기" class="img-upload rainboard-button" type="button"><span>찾아보기</span></button>'+
	                '<input type="file" name="upload[]" title="파일 찾아보기" class="file">'+
	              '</div>'+
	            '</div>'+
	            '</span><input type="hidden" name="rainboard_deleted_file[]" value="'+deleted+'"/>');
		$(this).remove();
	});
	*/
	$("div.rainboard-write-wrapper").on('change', 'input[name="upload[]"]', function(e) {

		//sizeInMB = (sizeInBytes / (1024*1024)).toFixed(2);

		var max_size = rainboard_attach.file_attach_size;

		var totalfilesize = 0;

		if(rainboard_attach.attach_type == "edit"){

			var attached_size = 0;
			var attached = $("div.rainboard_attach_file_div");
			attached.each(function( index ) {
				attached_size += parseInt($(this).attr("size"));
			});

			totalfilesize +=attached_size;
		}

		try {
			var file_input = $("#rainboard_post_form div.attach-box input.file");
			file_input.each(function( index ) {
				if(!$.isEmptyObject(this.files[0])){
					totalfilesize += this.files[0].size;
				}
			});

			if(totalfilesize >= max_size) {
				$("div.max-attach-size span").html("최대 첨부 가능 용량을 초과되었습니다.");
				$("input[name='rainboard_attach_size']").val(-1);
			}else{
				$("input[name='rainboard_attach_size']").val(max_size-totalfilesize);
				$("div.max-attach-size span").html( ((max_size-totalfilesize) / (1024*1024)).toFixed(2)+"Mb" );
			}
		} catch (e) {}

	}).on('click', 'div.file-upload input.text', function(e) {
		$(this).siblings().children("input.file").click();
	}).on('change', '.file-upload .file', function(e) {
		var filename = $(this).val();
        $(this).parents("div.file-upload").find('.text').val(filename);
	}).on('click', 'a.add-attach', function(e) {
		var orgin = $(".attach-element.hidden");
		var cloned = orgin.clone(false);
		var target = $(".attach-element:last");
		cloned.insertAfter(target);

		$(".attach-element:last").removeClass( "hidden" );

		/*
		var target = $(".attach-element:last").clone();
		$(".attach-element:last").append(target);

		var control = $(".attach-element:last");
		console.log(control);
		control.replaceWith( control.val('').clone( true ) );

		*/
	}).on('change', 'input[name="image_upload[]"]', function(e) {

		 $("#rainboard_post_form").ajaxSubmit({
			url : rainboard_common_js.ajax_url,
			type: 'post',
	        dataType: 'json',
            beforeSubmit: function (contentArray,form,option) {
				for(var i=0; i<contentArray.length; i++){
				  if(contentArray[i].name == "action") {
					contentArray[i].value = 'rainboard_insert_tempimage'
				  } 
				}
            }, success: function(response,status){
				
				if($.isEmptyObject(response.error)){
					if ( $(".fileThumbArea").length > 0 ) {
						var html = "<li path='"+response.url+"'><p><img src='"+response.thumbnail_url+"' /></p><input type='hidden' name='rainboard_attach_image[]' value='"+response.thumbnail_id+"'/></li>";
						$(".fileThumbArea ul").append(html);
					}else{
						var html = "<div class='write-box fileThumbArea'><label for='entry-file'><span data-title='이미지'>이미지</span></label><span style='position:relative; width:100%' class='write-span'><ul class='file_list'><li path='"+response.url+"' class='featured'><p><img src='"+response.thumbnail_url+"' /></p><input type='hidden' name='rainboard_attach_image[]' value='"+response.thumbnail_id+"'/></li></ul><input type='hidden' name='rainboard_featured_image' value='"+response.thumbnail_id+"'/></div></span>";
						$(".attach-box-image").prev().before(html);
					}
					
					var inputid = 'rainboard_post_content';
					if ( typeof tinyMCE != 'undefined' &&  tinyMCE.activeEditor ) {
//						var editor = tinyMCE.get(inputid);
//						content = editor.getContent();
						var addimg = "<img src='"+response.url+"' />";
						tinyMCE.activeEditor.selection.setContent( addimg );
						
					}else{
						//content = $("textarea[name='"+inputid+"']").val();
						var addimg = "<img src='"+response.url+"' />";
						$("textarea[name='"+inputid+"']").val(function(i, text) {
						    return text + addimg;
						});
					}
				}else{
					alert(response.error);
				}
				
				
			}, error: function(e){
			}
		});
	}).on('click', '.fileThumbArea .file_list li', function(e) {
		var thumb_id = $(this).children('input').val();
		var img_path = $(this).attr('path');
        
        var layer = '<div class="rainboard_thumb_layer_btn"><div class="layer_bg"></div><div class="thumb_layer_btn">';
//        layer +=   	'<div class="layer_btn set_featured" thumb_id="'+thumb_id+'" path="'+img_path+'">대표 이미지 변경</div>';
        layer +=   	'<div class="layer_btn insert_image" thumb_id="'+thumb_id+'" path="'+img_path+'">에디터 삽입</div>';
        layer +=   	'<div class="layer_btn delete_image" thumb_id="'+thumb_id+'" path="'+img_path+'">이미지 삭제</div>';
        layer +=   	'<div class="layer_btn layer_close">닫기</div>';
        layer +=   	'</div></div>';
        
    	$("body").append(layer);
    	
	});
	
	$(document).on('click', '.rainboard_thumb_layer_btn div.set_featured', function(e) {
		var thumb_id = $(this).attr("thumb_id");
		$(".fileThumbArea .file_list li").removeClass("featured");
		$(".fileThumbArea .file_list li input[value='"+thumb_id+"']").parents('li').addClass("featured");
		$("input[name='rainboard_featured_image']").val(thumb_id);
		$(".rainboard_thumb_layer_btn").remove();
	}).on('click', '.rainboard_thumb_layer_btn div.insert_image', function(e) {
		var path = $(this).attr("path");
		
		var inputid = 'rainboard_post_content';
		if ( typeof tinyMCE != 'undefined' &&  tinyMCE.activeEditor && $("textarea[name='"+inputid+"']").is(":hidden") ) {
			var addimg = "<img src='"+path+"' />";
			tinyMCE.activeEditor.selection.setContent(addimg);
			
		}else{
			var addimg = "<img src='"+path+"' />";
			$("textarea[name='"+inputid+"']").val(function(i, text) {
			    return text + addimg;
			});
		}
		
		$(".rainboard_thumb_layer_btn").remove();
		
	}).on('click', '.rainboard_thumb_layer_btn div.delete_image', function(e) {
		//이미지 삭제
		var thumb_id = $(this).attr("thumb_id");
		var path = $(this).attr("path");
		
		//새글일때 바로삭제
		if($("form[name='rainboard_post_write_form'] ").length > 0){
			var thumb_id = $(this).attr("thumb_id");
			
			var data =  {
					action 		: 	'rainboard_delete_tempimage',
		            attach_id : 	thumb_id,
			};
			
			$.post(rainboard_common_js.ajax_url, data, function(response) {
				alert(response.message);
				if(response.error == false){
					
					if($(".fileThumbArea .file_list li input[value='"+thumb_id+"']").parents('li').hasClass("featured")){
						$("input[name='rainboard_featured_image']").val(0);
					}
					
					$(".fileThumbArea .file_list li[path='"+path+"']").remove();
				}
			}, 'json');
			
		}else if($("form[name='rainboard_post_edit_form'] ").length > 0){
			//수정일땐 수정 완료시 첨부 삭제
			//대표이미지는 삭제 불가 
			//대표이미지는 삭제시 0으로..
			/*  */
			if($(".fileThumbArea .file_list li input[value='"+thumb_id+"']").parents('li').hasClass("featured")){
				$("input[name='rainboard_featured_image']").val(0);
//				alert('대표이미지는 삭제할수 없습니다.');
//				return ;
			}

			$add_input = "<input type='hidden' name='rainboard_delete_image[]' value='"+thumb_id+"' />";
			$(".rainboard-write-wrapper").append($add_input);
			$(".fileThumbArea .file_list li[path='"+path+"']").remove();
		}
		
		$(".rainboard_thumb_layer_btn").remove();
		
	}).on('click', '.rainboard_thumb_layer_btn div.layer_close', function(e) {
		$(".rainboard_thumb_layer_btn").remove();
	}).on('click', '.rainboard_thumb_layer_btn .layer_bg', function(e) {
		$(".rainboard_thumb_layer_btn").remove();
	});

});