////////////////////////*jquery*/////////////////////////// var cm_jquery_param = { is_save : false }; function cmAjax(obj) { var url = obj.url; if (url.indexOf("_save.") > -1 || url.indexOf("_save_ajax.") > -1) { if (cm_jquery_param.is_save) { return; } cm_jquery_param.is_save = true; } jQuery.ajax({ url: obj.url, type: obj.type, async : obj.async == undefined ? true : obj.async, data: obj.data, dataType: obj.dataType, success: function(data, textStatus, jqXHR){ if (data.status == "isNotLogin") { showMessageBox({ message : "???" , close : function () { var frm = jQuery("form[name='frm_login']"); frm.submit(); } }); } else { if ( typeof obj.success != 'undefined' ) obj.success(data, textStatus, jqXHR); } }, error : function(jqXHR, textStatus, errorThrown) { if ( typeof obj.error != 'undefined' ) obj.error(jqXHR, textStatus, errorThrown ); }, beforeSend : function(jqXHR, settings) { if ( typeof obj.isModal != 'undefined' && obj.isModal ) showLoadingBox(); if ( typeof obj.beforeSend != 'undefined' ) obj.beforeSend(jqXHR, settings); }, complete: function(jqXHR, textStatus){ if (url.indexOf("_save.") > -1 || url.indexOf("_save_ajax.") > -1) { cm_jquery_param.is_save = false; } if ( typeof obj.isModalEnd != 'undefined' && obj.isModalEnd ) hideLoadingBox(); if ( typeof obj.complete != 'undefined' ) obj.complete(jqXHR, textStatus); } }); } /** * ?리 ?벤?? 추? * @param p_option */ function addTreeEvent (p_option) { if (typeof p_option != "object" || p_option.treeId == undefined || p_option.code == undefined || p_option.name == undefined ) { alert("addTreeEvent 초기?? ?패"); return; } var tree_element = jQuery("#" + p_option.treeId); var node_code = p_option.code; var node_name = p_option.name; tree_element .jstree({ "types" : { "valid_children" : [ "root" ], "types" : { "root" : { "icon" : { "image" : WEB_ROOT + "images/common/_drive.png" } , "valid_children" : [ "default" ] , "max_depth" : 2 , "hover_node" : false /*, "select_node" : function () {return false;}*/ }, "default" : { "valid_children" : [ "default" ] } } } , "plugins" : ["themes","html_data","search","adv_search","ui","types"] }) .bind("loaded.jstree", function (event, data) { if (node_code != undefined) { tree_element.data({ "node_name" : node_name , "node_code" : node_code }); if (node_code.val() != "") { tree_element.jstree("select_node", "#" + node_code.val() ); } } }) .bind("select_node.jstree", function (event, data){ var val = data.rslt.obj.attr("id"); var name = jQuery("a", data.rslt.obj).eq(0).text(); tree_element.data("node_name").val(name); tree_element.data("node_code").val(val); tree_element.hide(); }) .css({ "position" : "absolute" , "z-index" : "1000" , "min-width" : "300px" , "height" : "300px" , "border" : "2px solid #000000" , "overflow" : "auto" }) .hide(); jQuery(document).mousedown(function (event) { var target = jQuery(event.target); if( target[0].id != p_option.treeId && !target.hasClass(p_option.treeId) && target.parents("#" + p_option.treeId).length == 0 ) { jQuery("#" + p_option.treeId).hide(); } }); node_name .data({ tree_element : tree_element , node_code : node_code , node_name : node_name }) .focus(function (event) { jQuery(this).click(); }) .click(function (event) { var tree_element = jQuery(this).data("tree_element"); var node_name = jQuery(this).data("node_name"); var node_code = jQuery(this).data("node_code"); tree_element .show() .data({ "node_name" : node_name , "node_code" : node_code }) .css({ left : jQuery(this).offset().left , top : jQuery(this).offset().top + 20 }); if (jQuery(this).next("input").val() != "") { tree_element.jstree("select_node", "#" + node_code.val() ); } }) .addClass("chooseBox") .attr("readonly", "readonly") .addClass(p_option.treeId); } /** * Tree 초기?? * @param treeId */ function cmTreeInit(p_treeId, p_option) { var treeElement = jQuery("#" + p_treeId); treeElement.jstree({ "types" : { "valid_children" : [ "root" ], "types" : { "root" : { "icon" : { "image" : WEB_ROOT + "images/common/_drive.png" } , "valid_children" : [ "default" ] , "max_depth" : 2 , "hover_node" : false /*, "select_node" : function () {return false;}*/ }, "default" : { "valid_children" : [ "default" ] } } } , "plugins" : ["themes","html_data","search","adv_search","ui","types"] }) .bind("loaded.jstree", function (event, data) { if (typeof p_option == "object" && p_option.select_node != undefined && p_option.select_node != "") { if (p_option.select_node_target != undefined) { treeElement.data({ "target_text" : p_option.select_node_target , "target_val" : p_option.select_node_target.next("input") }); } treeElement.jstree("select_node", "#" + p_option.select_node ); } }) .bind("select_node.jstree", function (event, data){ var val = data.rslt.obj.attr("id"); var name = jQuery("a", data.rslt.obj).eq(0).text(); treeElement.data("target_text").val(name); treeElement.data("target_val").val(val); treeElement.hide(); }) .css({ "position" : "absolute" , "z-index" : "1000" , "min-width" : "300px" , "height" : "300px" , "border" : "2px solid #000000" , "overflow" : "auto" }) .hide(); jQuery(document).mousedown(function (event) { var target = jQuery(event.target); if( target[0].id != p_treeId && !target.hasClass(p_treeId) && target.parents("#" + p_treeId).length == 0 ) { jQuery("#" + p_treeId).hide(); cmLayerPopEvent("close"); } }); } /** * "p_element" focus or click event 발생?? "p_treeId" tree ? ?도? ?벤?? 추? * * @param p_element : input[type=text] * @param p_treeId : tree id */ function addInputTreeEvent(p_element, p_treeId) { p_element .unbind("focus") .unbind("click") .focus(function (event) { jQuery(this).click(); }) .click(function (event) { var treeElement = jQuery("#" + p_treeId); treeElement .show() .data({ "target_text" : jQuery(this) , "target_val" : jQuery(this).next("input") }) .css({ left : jQuery(this).offset().left , top : jQuery(this).offset().top + 20 }); cmLayerPopEvent("open"); if (jQuery(this).next("input").val() != "") { treeElement.jstree("select_node", "#" + jQuery(this).next("input").val() ); } }) .addClass("chooseBox") .attr("readonly", "readonly") .addClass(p_treeId); } /** * select combo 공통 ?용 ?벤?? * * @param p_option */ function cmSelectCombo(p_option) { var defaults = { url : "" , param : { i_sMstCd : "" , i_sBuffer1 : "" , i_sBuffer2 : "" , i_sBuffer3 : "" } , keyValue : "" , keyText : "" , target : undefined , callback : undefined }; var options = jQuery.extend(defaults, p_option); if ( options.url == "" || options.target == undefined || options.keyValue == "" || options.keyText == "") { alert("?정 ?류!!!"); return; } options.target.val("").change(); cmAjax({ url : options.url , type : "POST" , data : options.param , dataType : "json" , isModal : true , isModalEnd : true , success : function ( data, textStatus, jqXHR) { jQuery("option", options.target).each(function(evnet) { if (jQuery(this).val() != "") jQuery(this).remove(); }); if (data.object != undefined && data.object.length > 0) { if (data.object[0][options.keyValue] == undefined || data.object[0][options.keyText] == undefined) { alert("[keyValue | keyText] ?정?류"); return; } for (var i = 0; i < data.object.length; i++) { jQuery("