1/* 22018.07.10 JS íµí©ìì 3 4######################################################### 5* í©ì³ì§ë íì¼ 6######################################################### 71. /script/bannerpop.js 9ê° 82. /script/resizePhoto.js 5ê° 93. /script/floating.banner.js 2ê° 104. /script/mosaic.js 6ê° 115. /script/newsAutoCall.js 2ê° 126. /script/common.js 8ê° 137. /script/app.js 49ê° 14 15=> /script/common.js ë¡ íµí© 16########################################################## 17*/ 18 19/* ****************************************** */ 20/* /script/bannerpop.js */ 21/* ****************************************** */ 22 23var adWrite={ 24 // php ì ë¬ ë³ì 25 vars:{ 26 separator : "|" 27 ,editId : null // ìì í id 28 ,box : '<div class="ad-map" />' // ìì±ë ë°ì¤ 29 ,buttons : '<div class="ad-map-btns"><div class="btn-group-vertical"><button type="button" class="btn_com btn_com_0_699 adcmb_button adcmb_modify button secondary tiny" title="ìì "><i class="icon-link"></i></button><button type="button" class="btn_com btn_com_35_699 adcmb_button adcmb_delete button tiny nd-gray" title="ìì "><i class="icon-trash-o"></i></button></div></div>' //ìì ë ë°ì¤ì ë²í¼ë¤ 30 ,$textBox : null 31 ,act : "" // ì¬ì§ ì ë¡ëíê³ ì´ë¬ì íê² ì주 actê°ì´ ë°ëëë°, ê·¸ê²ì ìë ê° 32 ,iframe : '<iframe src="about:blank" name="adc_up_frame" id="adc_up_frame" width="0" height="0" frameborder="0"></iframe>' // uploadì© iframe 33 ,loadData : {} 34 } 35 36 // ì´ë¯¸ì§ ë¡ë©ëë©´ í¬ê¸° ì¬ì´ì¤ê¸° 37 // IEë§ ì´ë¯¸ì§ ë¡ë©ëí ì´ë²¤í¸ê° 먹ì´ì ¸ì í¬ê¸°ë¥¼ ì ëë¡ ì¬ì´ì¤ì§ 못í´ì inlineì¼ë¡ ì¤í¬ë¦½í¸ ìì±í¨ 38 ,getSizeLoadImage:function(_this) 39 { 40 var _w = _this.width 41 ,_h = _this.height; 42 43 _this.setAttribute("data-display-width", _w); 44 _this.setAttribute("data-display-height", _h); 45 46 // ì´ë¯¸ì§ë§µ ì´ë²¤í¸ 47 adWrite.map($(_this)); 48 } 49 50 // ë±ë¡ì ì´ë²¤í¸ë¤ 51 ,evtCrtForm:function() 52 { 53 var parents = this 54 ,$type = $("#adc_crt_type_html, #adc_crt_type_file") 55 ,$htmlBox = $("#adc_crt_html_box") 56 ,$fileBox = $("#adc_crt_attach_file_box") 57 58 ,$popupType = $("#adc_crt_popup_type_layer, #adc_crt_popup_type_window") 59 ,$layer = $("#adc_crt_popup_layer_opt_box") 60 ,$window = $("#adc_crt_popup_window_opt_box") 61 62 ,$closeIcon = $("#adc_crt_popup_layer_icon") 63 ,$iconBox = $("#adc_crt_popup_layer_icon_box") 64 65 ,$closeExpire = $("#bottom_close_expire_label") 66 ,$closeExpireBox = $("#bottom_close_expire_box") 67 68 ,$attachFile = $("#adc_crt_attach_file") 69 ,$previewFile = $("#adc_crt_file_image") 70 ,$previewBox = $("#adc_crt_image_preview_box") 71 72 ,$max_file_size = $("#file_upload_max_size").val(); 73
74 // ì ë ¥ë¶ë¶ ë´ìë기 75 this.vars.$textBox = $("#adc_crt_image_link_box"); 76 77 // html, file ì ë ¥ 78 $type.click(function(){ 79 var isChecked = $(this).attr("value"); 80 81 $htmlBox[isChecked==="HTML"?"removeClass":"addClass"]("is-hidden"); 82 $fileBox[isChecked==="FILE"?"removeClass":"addClass"]("is-hidden"); 83 }); 84 85 // 미리보기 í¸ì¶ // 86 $attachFile.change(function(){ 87 var form = document.adc_form; 88 89 if (typeof (FileReader) != "undefined") { 90 91 var file = $(this)[0].files[0] 92 ,regex = ['jpg', 'jpeg', 'png', 'gif', 'swf'] 93 ,filesize = file.size 94 ,extension = file.name.split('.').pop().toLowerCase(); 95 96 if(filesize > $max_file_size){ 97 alert('ì ë¡ë ì©ëì´ ì´ê³¼ëììµëë¤.'); 98 $attachFile.val(""); 99 return false; 100 } 101 102 if((regex.indexOf(extension) > -1) === false){ 103 alert('jpg, png, gif, swf íì¥ìë§ ì ííì¬ ì£¼ì¸ì.'); 104 $attachFile.val(""); 105 106 //ì ë ¥ìë§ í¨ì ë°ë ìì 107 $previewBox.addClass("is-hidden"); 108 return false; 109 } 110 111 if(extension == "swf"){ 112 $previewBox.addClass("is-hidden"); 113 return false; 114 } 115 116 var reader = new FileReader(); 117 reader.onload = function (e) { 118 var img = new Image(); 119 img.src = e.target.result; 120 121 img.onload = function(){ 122 $previewFile.attr({"src":e.target.result,"data-display-width":this.width, "data-display-height":this.height, "data-width":this.width, "data-height":this.height, "alt":(form.title.value)?form.title.value:form.idxno.value}); 123 $previewBox.removeClass("is-hidden"); 124 125 $('#size_width').val(this.width); 126 $('#size_height').val(this.height); 127 128 $('#popup_width').val(this.width); 129 $('#popup_height').val(this.height); 130 131 // ì´ë¯¸ì§ë§µ ì´ë²¤í¸ 132 parents.map($previewFile); 133 } 134 } 135 136 reader.readAsDataURL(file); 137 parents.mapDeleteAll(); 138 } 139 }); 140 141 var $mapRadio = $("#adc_crt_image_link_total, #adc_crt_image_link_part, #adc_crt_image_link_not") 142 ,$imgLinkSelect = $(".adcil_btns") 143 ,$imgLink = $("#adc_crt_image_link") 144 ,$imgLinkFile = $("#adc_crt_image_link_file") 145 ,$selectPopup = $("#adc_crt_image_link_popup") 146 ,$btnMapRegist = $("#adc_crt_img_link_btn_regist") 147 ,$linkAction = ''; 148 149 // ì ì²´ ëë ì´ë¯¸ì§ ë§µ ì íì 150 $mapRadio.click(function(){ 151 var $this = $(this) 152 ,type = $this.attr("data-type"); 153 154 if(type == 'total' || type == 'map'){ 155 156 if(type == 'map') $('#link_event_tag').hide(); 157 else $('#link_event_tag').show(); 158 159 $("#adc_crt_image_link_box").removeClass('is-hidden'); 160 161 $btnMapRegist[type==="map"?"removeClass":"addClass"]("is-hidden"); 162 163 if(type==="total") parents.mapDeleteAll(); // ì ì²´ì íì¼ë, ì´ì ë°ì´í 모ë ì§ì 164 165 }else{ 166 $("#adc_crt_image_link_box").addClass('is-hidden'); 167 } 168 }); 169 170 // layer or window ì í 171 $popupType.click(function(){ 172 var isChecked = $(this).attr("data-type"); 173 174 $layer[isChecked==="layer"?"removeClass":"addClass"]("is-hidden"); 175 $window[isChecked==="window"?"removeClass":"addClass"]("is-hidden"); 176 }); 177 178 // ë«ê¸° ìì´ì½ í´ë¦ì ìì´ì½ íí ì í ë°ì¤ ì´ê² 179 $closeIcon.click(function(){ 180 var $label_attr_for = $(this).attr('for') 181 ,isChecked = $('#'+$label_attr_for).is(":checked"); 182 183 $iconBox[isChecked===false?"removeClass":"addClass"]("is-hidden"); 184 }); 185 186 // ëªì¼ ëì ì´ì§ ì기 ì ë ¥ë°ì¤ ì´ê¸° 187 $closeExpire.click(function(){ 188 var $label_attr_for = $(this).attr('for') 189 ,isChecked = $('#'+$label_attr_for).is(":checked"); 190 191 $closeExpireBox[isChecked===false?"removeClass":"addClass"]("is-hidden"); 192 }); 193 194 // ì´ë¤ííì ë§í¬ì¸ì§ íì¸ 195 // link, popup, file, close, day_close 196 $imgLinkSelect.click(function(){ 197 var $this = $(this) 198 ,type = $this.attr("data-type"); 199 200 if(type==="popup" || type==="close" || type==="day_close"){ 201 $imgLink.add($imgLinkFile).addClass("is-hidden"); 202 $selectPopup[type==="popup"?"removeClass":"addClass"]("is-hidden"); 203 }else{ 204 $imgLink[type==="link"?"removeClass":"addClass"]("is-hidden"); 205 $imgLinkFile[type==="link"?"addClass":"removeClass"]("is-hidden"); 206 $selectPopup.addClass("is-hidden"); 207 } 208 }); 209 210 $btnMapRegist.click(function(){ 211 212 // ë§µ ë±ë¡ ìì 213 var $popupSelect = $("#adc_crt_image_link_popup_select") 214 ,$linkText = $("#adcil_link_text") 215 ,$etcFile = $("#adcilf_attach") 216 ,$linkTarget = $(".adcil_btns_link option:selected"); 217 218 if(!parents.vars.editId){ 219 alert('ì´ë¯¸ì§ìì ìì í ë§µë°ì´í를 ì ííì¬ì£¼ì¸ì.'); 220 return false;
221 } 222 223 // close, day_close 모ë ë±ë¡ ëë¬ì¼ ì ì¥ëê²...ìê·¸ë¼ radioí´ë¦ë§ì¼ë¡ ì´ì ì ë³´ ì체를 ë ë ¤ë²ë¦¼ 224 var type = $(".adcil_btns:checked").attr('data-type') 225 ,url = "" 226 ,target = ""; 227 228 if(!type) return false; 229 if(type==="link"){ 230 url = $linkText.val(); 231 if(!url){ 232 alert('ë§í¬ë¥¼ ì ë ¥íì¬ ì£¼ì¸ì.'); 233 $linkText.focus(); 234 return false; 235 } 236 237 target = $linkTarget.val(); 238 }else if(type==="popup"){ 239 url = $popupSelect.val(); 240 if(!url){ 241 alert('íì ì ì ííì¬ ì£¼ì¸ì.') 242 $popupSelect.focus(); 243 return false; 244 } 245 }else if(type==="file"){ 246 if(!$etcFile.val()){ 247 alert('íì¼ì ì ííì¬ ì£¼ì¸ì.'); 248 $etcFile.focus(); 249 return false; 250 } 251 252 parents.uploadAttachTmpFile(); 253 254 return false; 255 } 256 257 parents.insertData({ 258 type:type 259 ,url:url 260 ,target:target 261 }) 262 return false; 263 }); 264 } 265 266 // ì´ë¯¸ì§ë§µì íì¼ì¼ë ì ì¥ 267 ,uploadAttachTmpFile:function() 268 { 269 var parents = this 270 ,iframe = this.vars.iframe 271 ,form = document.adc_form; 272 273 $(document.body).append(iframe); 274 275 form.action = "/bannerpop/upload_act.php"; 276 form.target = "adc_up_frame"; 277 form.submit(); 278 } 279 280 // ì´ë¯¸ì§ë§µì ììíì¼ì ì¥í ë¦¬í´ ê° 281 ,afterUploadAttachTmpFile:function(result) 282 { 283 // ì±ê³µì´ë ìëë í¼ì ì¼ë¨ ì´ê¸°íí¨ 284 this.releaseForm(); 285 $("#adc_up_frame").remove(); 286 287 var json = $.parseJSON(adWrite.rawurldecode(result)) 288 ,filename = json[0].filename; 289 290 if(!filename){ 291 alert('ì ë¡ëì ìë¬ê° ë°ìíìµëë¤. ë¤ì ì ë¡ëíì¬ ì£¼ì¸ì.'); 292 return false; 293 } 294 295 this.insertData({type:"file",url:filename,target:"self",json_obj:result}); 296 } 297 298 //rawurldecode 299 ,rawurldecode:function(str) { 300 return decodeURIComponent((str + '') 301 .replace(/%(?![\da-f]{2})/gi, function() { 302 return '%25'; 303 })); 304 } 305 306 // ì´ë¯¸ì§ë§µ ì ë ¥í¼ ì´ê¸°í 307 ,initInsertForm:function(data) 308 { 309 var parents = this 310 ,type = data.type||"link" 311 ,$btns = $(".adcil_btns") 312 ,$imgLink = $("#adc_crt_image_link") 313 ,$imgLinkFile = $("#adc_crt_image_link_file") 314 ,$selectPopup = $("#adc_crt_image_link_popup") 315 ,$filebox = $("#adcilf_uploaded_file"); 316 317 //$btns.filter("[data-type='"+type+"']").prop("checked", true); 318 $btns.filter("[data-type='"+type+"']").click(); // 커ì¤í radio box ë¼ì ì´ë ê² ì²ë¦¬ 319 $filebox.hide(); 320 321 if(type==="popup" || type==="close" || type==="day_close"){ 322 $imgLink.add($imgLinkFile).addClass("is-hidden"); 323 $selectPopup[type==="popup"?"removeClass":"addClass"]("is-hidden"); 324 325 if(type==="popup") $("#adc_crt_image_link_popup_select").val(data.url); 326 327 }else{ 328 $imgLink[type==="link"?"removeClass":"addClass"]("is-hidden"); 329 $imgLinkFile[type==="link"?"addClass":"removeClass"]("is-hidden"); 330 $selectPopup.addClass("is-hidden"); 331 332 if(type==="link"){ 333 $(".adcil_btns_link option[value="+(data.target||"blank")+"]").prop("selected", true); 334 $("#adcil_link_text").val(data.url) 335 }else if(type==="file"){ 336 var $attach = $("#adcilf_attach") 337 ,$delBtn = $("#adcilfuf_btn") 338 ,$filename = $("#adcilfuf_file") 339 ,$fmode = $filename.attr('data-type'); 340 341 $attach.replaceWith($attach.clone()); 342 343 if(data.url){ 344 // íì¼ìì 345 $filebox.show(); 346 $filename.html(data.url); 347 $delBtn.unbind("click").on("click", function(){ 348 if(confirm("ìë²ìì íì¼ì´ ë°ë¡ ì ê±°ë©ëë¤.\nê·¸ëë ìì íìê² ìµëê¹?")) { 349 var file = data.url 350 ,extension = file.split('.').pop().toLowerCase() 351 ,filename = file.replace('.'+extension,''); 352 353 $.post(SITE_DOMAIN + "/bannerpop/upload_act.php" 354 ,{mode:'dlt', fmode:$fmode, idxno:document.adc_form.idxno.value||"", filename:file} 355 ,function(data,rst){ 356 if(rst==="success"){ 357 if(data.result==="success"){ 358 $filename.empty(); 359 $filebox.hide(); 360 parents.insertData({type:"file", url:"", target:"", json_obj:""}, "no"); 361 //alert(decodeURIComponent(data.msg)); 362 }else alert(decodeURIComponent(data.msg)); 363 }else alert('ìì±í ì ìë í ì íì를 ì´ê³¼íììµëë¤.'); 364 },"json"); 365 } 366 }); 367 } 368 } 369 } 370 } 371 372 // ììí¼ ì´ê¸°í 373 ,releaseForm:function(form) 374 { 375 if(!form) form = document.adc_form; 376 377 // í´ì 378 form.action = this.vars.act; 379 form.target = ""; 380 } 381 382 // ë°ì´í ì»ì´ì¤ê¸° 383 ,getHiddenData:function() 384 { 385 var $id = $("#input_"+this.vars.editId) 386 ,val = $id.val().split(this.vars.separator); 387 388 return {id:$id, val:val}; 389 } 390 391 // input type ì ë£ì 392 ,insertData:function(data, isInit) 393 { 394 if(!data) data={}; 395 if(!this.vars.editId) return false;
396 if(!isInit) isInit = "ok"; 397 398 var $data = this.getHiddenData() 399 ,$id = $data.id 400 ,val = $data.val; 401 402 if(val.length<=0) return false; 403 404 val.splice(4, 4, data.type, data.url, data.target, (data.type == 'file' && data.url) ? data.json_obj : '') 405 var value = val.join(this.vars.separator); 406 407 $id.val(value); 408 409 if(isInit==="ok") { 410 $("#link_event_tag").val("") 411 this.initInsertForm({type:"link", url:"", target:"self"}); 412 } 413 this.vars.editId = null; 414 415 alert('ì ì©ëììµëë¤.'); 416 } 417 418 // ìì í¼ 419 ,modifyForm:function(id) 420 { 421 if(!id) return false; 422 this.vars.editId = id; 423 424 var $data = this.getHiddenData() 425 ,val = $data.val 426 ,type = val[4]||"link" 427 ,url = val[5]||"" 428 ,target = val[6]||"self"; 429 430 //ì´ë¯¸ì§ë§µì íì¼ì¸ì§, ì ì²´ë§í¬ì íì¼ì¸ì§ 구ë¶ì§ê¸° ìí¨ 431 $("#adcilfuf_file").attr('data-type', 'M' + (Number(this.vars.editId.replace(/[^0-9]/g,'')) + 1)); 432 433 this.initInsertForm({type:type, url:url, target:target}); 434 this.mapBlinkArea(); 435 } 436 437 // ì´ë¯¸ì§ ë§µ ì¡ê¸° ìí´ ìì ì ì¥ 438 ,afterUploadTmpFile:function(json) 439 { 440 var form = document.adc_form 441 ,result = json.result||"error" 442 ,data = json.data||"" 443 ,width = json.width||"" 444 ,height = json.height||"" 445 ,mime = json.mime||""; 446 447 // í´ì 448 this.releaseForm(form); 449 450 if(result === "error"){ 451 alert(data); 452 return false; 453 } 454 455 // ëì¤ì í¼ nameì¼ë¡ ë°ê¿ê²!!! 456 //$("#adc_crt_popup_size_width").val(width); 457 //$("#adc_crt_popup_size_height").val(height); 458 if(form.popup_width) form.popup_width.value = width; 459 if(form.popup_height) form.popup_height.value = height; 460 461 // ì°½ ë³´ì´ê³ , ì´ë¯¸ì§ 미리보기 - íìëë ì¬ì´ì¦ ì¬ì¤ê¸° 462 $("#adc_crt_image_preview_box").show(); 463 $("#adc_crt_file_image").attr({"src":"data:"+mime+";base64,"+data, "data-width":width, "data-height":height}); 464 465 // ìë¡ ì¬ë¦°ê²ì´ë, ë¡ë©ëí 모ë ì´ì ì ì ì¥ë ë§µ ì ë³´ ë 림 466 // ì´ì ë°ì´í ìì 467 this.mapDeleteAll(); 468 } 469 470 471 // ë¹ì¨ëë¡ ì¢í ê³ì°í기 472 ,mapCalcPositionRatio:function(val, ratio) 473 { 474 if(ratio === 1) return val; 475 476 return Math.round(val * ratio); 477 } 478 479 // ë¹ì¨ëë¡ ì¢í ê³ì°í기-ì¶ì 480 ,mapScalePositionRatio:function(val, ratio) 481 { 482 if(ratio === 1) return val; 483 484 return Math.round(val / ratio); 485 } 486 487 /** 488 * input type="hidden" ìì± 489 * id : string 490 * pos : object - ì¤ì ìì¹ 491 * kind : string - ë§í¬,íì¼ ë± 492 * url : string - ë§í¬, javascript function 493 * target : string - íì¬ì°½,ìì°½,ë¶ëª¨ì°½ 494 */ 495 ,mapHidden:function($form, id, pos, kind, url, target) 496 { 497 var inputId = "input_"+id 498 ,val = [pos.x1, pos.y1, pos.x2, pos.y2, kind, url, target].join(this.vars.separator) 499 ,input = '<input type="hidden" name="link_url[]" id="'+inputId+'" class="adc_crt_image_map_data" value="'+val+'" />'; 500 501 $form.append(input); 502 } 503 504 // ìì±ë ë§µ ìì 505 ,mapDelete:function(id) 506 { 507 var bId = "btn_"+id 508 ,inputId = "input_"+id; 509 510 $("#"+id+",#"+bId+",#"+inputId).remove(); 511 this.initInsertForm({type:"link", url:"", target:"self"}); 512 alert('ìì ëììµëë¤.'); 513 } 514 515 // ìì±ë ë§´ ì ì²´ ìì 516 ,mapDeleteAll:function() 517 { 518 $(".adc_crt_image_map_data, .ad-map, .ad-map-btns").remove(); 519 } 520 521 // ì ë ¥ë¶ë¶ ê¹ë¹¡ì 522 ,mapBlinkArea:function() 523 { 524 var parents = this; 525 parents.vars.$textBox.addClass("ad-map-bg"); 526 setTimeout(function(){ 527 parents.vars.$textBox.removeClass("ad-map-bg") 528 },500); 529 } 530 531 // ì´ë¯¸ì§ ë§µ ì¡ê¸° 532 ,map:function(target) 533 { 534 var parents = this 535 ,$img = !!target.jquery ? target : $(target) 536 ,width = Number($img.attr("data-width"))||0 // ì¤ì ì¬ì´ì¦ 537 ,height = Number($img.attr("data-height"))||0 538 ,dWidth = Number($img.attr("data-display-width"))||0 // íì ì¬ì´ì¦ 539 ,dHeight = Number($img.attr("data-display-height"))||0 540 ,ratio = width>dWidth ? Number((width/dWidth).toFixed(1)) : 1 // ì¤ì ì¬ì´ì¦ê° íìë ì¬ì´ì¦ë³´ë¤ í´ê²½ì° ë¹ì¨ ë§ì¶ê¸° ìí´ 541 ,box = parents.vars.box 542 ,buttons = parents.vars.buttons 543 ,$imgmapRadio = $("#adc_crt_image_link_part") 544 ,$imgmapBtnRegist = $("#adc_crt_img_link_btn_regist") 545 ,$form = $("#adc_form"); 546 547 548 return { 549 exe:function() 550 { 551 this.canvas().loadData().addEvent(); 552 } 553 554 // ë§ë¶ì´ê¸° 555 ,canvas:function() 556 { 557 $img.next("#adc_crt_edit_canvas").remove().end().after('<div id="adc_crt_edit_canvas" class="ad-canvas" style="left:'+$img.position().left+'px;width:'+dWidth+'px;height:'+dHeight+'px"></div>'); 558 return this; 559 } 560 561 // ë¡ëë ë§µ ë°ì´íì ë°ë¼ 그리기 562 ,loadData:function() 563 { 564 var _parent = this 565 ,$input = $(".adc_crt_image_map_data") 566 ,$canvas = $("#adc_crt_edit_canvas"); 567 568 // ì ì²´ì íì´ë¼ë©´ 569 if($input.length<=0){ 570 parents.initInsertForm(parents.vars.loadData); 571 return this; 572 } 573 574 if($input.length>0) $('#link_event_tag').hide(); 575 576 // ì´ë¯¸ì§ ë§µ ì¤ì ì¼ë¡ ìì 577 $imgmapRadio.not(":checked").prop("checked", true); 578 $imgmapBtnRegist.show(); 579 580 $.each($input, function(i,ele){ 581 var $ele = $(ele) 582 ,id = ele.id.replace("input_","") 583 ,val = $ele.val().split(parents.vars.separator)||[] 584 ,x1 = val[0]||0 585 ,y1 = val[1]||0 586 ,x2 = val[2]||0 587 ,y2 = val[3]||0 588 ,type = val[4]||"link" 589 ,url = val[5]||"" 590 ,target = val[6]||"self"; 591 592 _parent.display($canvas, id, {x1:x1, y1:y1, x2:x2, y2:y2}); 593 }); 594 595 return this; 596 } 597 598 // ìì 그림
599 ,display:function($canvas, id, data) 600 { 601 if(!data) data={}; 602 603 var $box = $(parents.vars.box) 604 ,$buttons = $(parents.vars.buttons) 605 ,offsetGap = $canvas.position().left||0 // ì ë ì¢íì´ê¸°ì ìºë°ì¤ë³´ë¤ ìì ì´ë¯¸ì§ì¼ê²½ì° gapë§í¼ ëí´ì íìí´ì¤ 606 ,bId = "btn_"+id 607 ,x1 = (Number(parents.mapScalePositionRatio(data.x1, ratio))+offsetGap)||0 608 ,y1 = parents.mapScalePositionRatio(data.y1, ratio)||0 609 ,x2 = (Number(parents.mapScalePositionRatio(data.x2, ratio))+offsetGap)||0 610 ,y2 = parents.mapScalePositionRatio(data.y2, ratio)||0 611 ,width = Math.abs(x1-x2) 612 ,height = Math.abs(y1-y2); 613 614 // ë²í¼ ë§ë¤ê¸° 615 $buttons.css({"top":y1+"px", "left":x2+"px"}).attr({"id":bId}) 616 .find(".adcmb_button").click(function(){ 617 var $this = $(this) 618 ,isModify = $this.is(".adcmb_modify"); 619 620 if(isModify===true){ 621 parents.modifyForm(id); 622 }else{ 623 parents.mapDelete(id); 624 } 625 }); 626 627 // box ë§ë¤ê¸° 628 $box.css({"top":y1+"px", "left":x1+"px", "width":width, "height":height}).attr({"id":id}); 629 630 $canvas.after($box); 631 $box.after($buttons); 632 633 return this; 634 } 635 636 // event 637 ,addEvent:function() 638 { 639 var _this = this 640 ,position = {x:0, y:0} 641 ,$box = null 642 ,start = false;
643 644 $(document.body).off("mousedown mousemove mouseup touchstart touchmove touchend","#adc_crt_edit_canvas") 645 .on({ 646 "mousedown touchstart":function(event) 647 { 648 start = true; 649 650 var $this = $(this) 651 ,evt = parents.getEventObject(window.event || event) 652 ,$evtTarget = $(evt.target||evt.srcElement) 653 ,offsetGap = $evtTarget.position().left // ìëìì¹ê¸° ë문ì ê° left ê°ì ëí´ì¤ì¼ í¨ 654 ,x = Math.round(evt.offsetX||(evt.pageX-$evtTarget.offset().left)) 655 ,y = Math.round(evt.offsetY||(evt.pageY-$evtTarget.offset().top)) 656 ,id = "acem_"+new Date().getTime(); 657 658 position.x = x; 659 position.y = y; 660 661 $box = $(box).css({"top":y, "left":x+offsetGap}).attr({"id":id}) 662 $this.after($box); 663 664 //evt.cancelBubble = true; 665 //evt.stopPropagation(); 666 //evt.preventDefault(); 667 } 668 669 ,"mousemove touchmove":function(event) 670 { 671 if(start === true){ 672 var evt = parents.getEventObject(window.event || event) 673 ,$evtTarget = $(evt.target||evt.srcElement) 674 ,offsetGap = $evtTarget.position().left // ìëìì¹ê¸° ë문ì ê° left ê°ì ëí´ì¤ì¼ í¨ 675 ,x = Math.round(evt.offsetX||(evt.pageX-$evtTarget.offset().left)) 676 ,y = Math.round(evt.offsetY||(evt.pageY-$evtTarget.offset().top)) 677 //,width = Math.abs(x-position.x)-5 678 //,height = Math.abs(y-position.y)-5 679 ,width = Math.abs(x-position.x) 680 ,height = Math.abs(y-position.y) 681 ,css = {}; 682 683 css = {"width":width, "height":height}; 684 685 if(position.x>x && position.y>y){ // ì¢ì 686 css.left = position.x-width+offsetGap; 687 css.top = position.y-height; 688 }else if(position.x>x && position.y<y){ // ì¢í 689 css.left = position.x-width+offsetGap; 690 }else if(position.x<x && position.y>y){ // ì°ì 691 css.top = position.y-height; 692 } 693 694 $box.css(css); 695 } 696 } 697 698 ,"mouseup touchend":function(event) 699 { 700 start = false;
701 702 // $box기ì¤ì¼ë¡ x1,y1,x2,y2 ê°ì ¸ì´ 703 var width = $box.width() 704 ,height = $box.height(); 705 706 if(width<20 && height<20){ 707 $box.remove(); 708 return false; 709 } 710 711 var $buttons = $(buttons) 712 ,evt = parents.getEventObject(window.event || event) 713 ,$evtTarget = $(evt.target||evt.srcElement) 714 ,offsetGap = $evtTarget.position().left // ìëìì¹ê¸° ë문ì ê° left ê°ì ë¹¼ì¤ì¼ì§ ì§ì§ ë§µì´ ë¨ 715 ,pos = $box.css(["top","left"]) 716 ,x1 = parents.castIntFromCss(pos.left) 717 ,y1 = parents.castIntFromCss(pos.top) 718 ,id = $box.attr("id") 719 ,bId = "btn_"+id 720 ,inputId = "input_"+id 721 ,info = { x1 : x1, y1 : y1, x2 : x1 + width, y2 : y1 + height } 722 ,real = { x1 : parents.mapCalcPositionRatio(info.x1, ratio)-offsetGap, y1 : parents.mapCalcPositionRatio(info.y1, ratio), x2 : parents.mapCalcPositionRatio(info.x2, ratio)-offsetGap, y2 : parents.mapCalcPositionRatio(info.y2, ratio)}; 723 724 // ìì ìì ì´ë²¤í¸ 725 $buttons.css({"top":info.y1, "left":info.x2}).attr({"id":bId}) 726 .find(".adcmb_button").click(function(){ 727 var $this = $(this) 728 ,isModify = $this.is(".adcmb_modify"); 729 730 if(isModify===true){ 731 parents.modifyForm(id); 732 }else{ 733 parents.mapDelete(id); 734 } 735 }); 736 737 $box.after($buttons); 738 parents.mapHidden($form, id, real, "", "", ""); 739 parents.initInsertForm({type:"link", url:"", target:"self"}); // í¼ ì´ê¸°í 740 parents.vars.editId = id; 741 742 // ì´ë¯¸ì§ë§µì¼ë¡ ì²´í¬ 743 $imgmapRadio.not(":checked").click().prop("checked", true); 744 $imgmapBtnRegist.show(); 745 746 parents.mapBlinkArea(); // ê¸ì°ê¸° í¼ ì´íí¸ 747 748 //util.toast(lang.adcRequireLink); 749 } 750 },"#adc_crt_edit_canvas"); 751 752 return this; 753 } 754 755 }.exe(); 756 } 757 758 // jquery ì´ë²¤í¸ ë±ë¡ ì¬ì©ì, ì´ë²¤í¸ ììë´ê¸° 759 ,getEventObject:function(e) 760 { 761 var evt = window.event||e; 762 evt = evt.targetTouches?evt.targetTouches[0]:evt; // jquery touch event 763 return evt; 764 } 765 766 // css pxì ê±°í ì«ìíì¼ë¡ 767 ,castIntFromCss:function(v) 768 { 769 return Number(v.replace("px","")); 770 } 771 772 // listìì ë²í¼ ì´ë²¤í¸ 773 ,evtClickedButtons:function() 774 { 775 // edit 776 var edit_info = $('#admin-ad-list') 777 ,edit_section = edit_info.attr("data-edit-section") 778 ,edit_area = edit_info.attr("data-edit-area") 779 ,edit_step = edit_info.attr("data-edit-step") 780 ,edit_idxno = edit_info.attr("data-edit-idxno") 781 ,edit_mode = edit_info.attr("data-edit-mode") 782 ,org_banner_kind = edit_info.attr("data-edit-org-banner-kind") 783 ,banner_kind = edit_info.attr("data-edit-banner-kind") 784 ,page = edit_info.attr("data-page") 785 //,tmp_banner_idxno = edit_info.attr("data-edit-tmp-banner-idxno") 786 ,sc_area = edit_info.attr("data-search-scarea") 787 ,sc_word = encodeURIComponent(edit_info.attr("data-search-scword")) 788 789 $(".ad-tile-toolkit, .content-inert").on("click", "button" 790 , function(){ 791 var $this = $(this) 792 ,type = $this.attr("data-btn-type") 793 ,$parent = $this.closest(".adccfg_list_items") 794 ,bannerIdxno = $parent.attr("data-banner-idxno") 795 ,banner_type = $parent.attr("data-banner-type") 796 ,linkInfo = $parent.attr("data-link-info") 797 ,title = $.trim($parent.find(".acli_title").text()) 798 ,state = $.trim($parent.find(".ad-tile-state").text()) 799 ,detail = $.trim($parent.find(".banner-detail").text()) 800 ,Imgbp_Tag = $.trim($parent.find(".Imgbp_Tag").html()); 801 802 switch(type){ 803 case "add": 804 if(banner_type == 'popup') { 805 var data = {'mode':edit_mode,'section':edit_section,'popup_title':encodeURIComponent(title),'popup_idxno':bannerIdxno} 806 adWrite.addEditPopupContents(data); 807 }else{ 808 var aaa = new Date(); 809 var data = {mode:edit_mode,'idxno':edit_idxno,'area':edit_area,'section':edit_section,'step':edit_step,'banner_title':encodeURIComponent(title),'banner_idxno':bannerIdxno,'kind':banner_kind,'edit_msg':'ì íí ë°°ëë¡ êµ
809ì²´íìê² ìµëê¹?'}; 810 if(edit_section == "articleBanner"){ //기ì¬ë°°ëê´ë¦¬ëª¨ëìì í¸ì¶í ê²½ì°ì¼ë 811 var bannersource = bannerIdxno; 812 $("#ad_code_1", parent.document).text(bannersource); 813 $("#ad_caption", parent.document).val(detail); 814 $("#bannerListModal button", parent.document).trigger("click"); 815 }else{ 816 adWrite.addEditContents(data); 817 } 818 } 819 break; 820 case "down": 821 location.href = '/bannerpop/attach_down.php?idxno='+bannerIdxno+'&mode=O'; 822 break; 823 case "linkInfo": // ì ë¡ëë íì¼ ë§í¬ ë³µì¬ 824 var source = '/bannerpop/uploads/image/'+linkInfo; 825 adWrite.copyExe(source); 826 break; 827 case "sourceCopy": // ìì¤ë³µì¬ 828 /*if(state == '무ì í') { 829 if(!Imgbp_Tag) return false; 830 var _html = '<!--'+title+'-->' 831 + Imgbp_Tag 832 + '<!--//'+title+'-->'; 833 }else{*/ 834 var _time = new Date().getTime() 835 ,_html = '<!--'+title+'-->' 836 + '<script type="text/javascript">var ___BANNER = "ban_'+_time+'";</script>' 837 + '<script type="text/javascript" charset="utf-8" src="/bannerpop/uploads/js/'+bannerId
837xno+'.js?'+_time+'" id="ban_'+_time+'"></script>' 838 + '<!--//'+title+'-->'; 839 //} 840 841 adWrite.copyExe(_html); 842 break; 843 case "preview": 844 if(!window.___popup) return false; 845 846 var p = ___popup[bannerIdxno]; 847 848 if(!p) return false; 849 if(!window.___currentTime) window.___currentTime = Math.floor(new Date().getTime()/1000);// ìê°ì´ ì¤ì ëì§ ììë¤ë©´ js ìê°ì¼ë¡ ì¤ì í¨ 850 851 // ê´ë¦¬ìë§... 852 $(".layer_box").remove(); // ë¤ë¥¸ê² ì´ë ¤ìë¤ë©´ ìì 853 bannerpop.vars.popup.view = "manager"; 854 bannerpop.float(p); 855 break; 856 case "mdf": 857 var $ahref = '/bannerpop/'; 858 $ahref += edit_section ? 'edit.html' : 'write.html'; 859 $ahref += '?type='+banner_type+'&mode=modify&idxno='+bannerIdxno+'&page='+page; 860 if(edit_section) $ahref += '&edit_section=' + edit_section; 861 if(edit_area) $ahref += '&edit_area=' + edit_area; 862 if(edit_step) $ahref += '&edit_step=' + edit_step; 863 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 864 if(edit_mode) $ahref += '&edit_mode=' + edit_mode; 865 //if(tmp_banner_idxno) $ahref += '&tmp_banner_idxno=' + tmp_banner_idxno; 866 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 867 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 868 if(sc_area) $ahref += '&sc_area=' + sc_area; 869 if(sc_word) $ahref += '&sc_word=' + sc_word; 870 location.href = $ahref; 871 break; 872 case "del": 873 if(window.confirm('ìì í ê¹ì?')) { 874 var $ahref = '/bannerpop/delete_act.php?type='+banner_type+'&idxno='+bannerIdxno+'&page='+page; 875 if(edit_section) $ahref += '&edit_section=' + edit_section; 876 if(edit_area) $ahref += '&edit_area=' + edit_area; 877 if(edit_step) $ahref += '&edit_step=' + edit_step; 878 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 879 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 880 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 881 if(sc_area) $ahref += '&sc_area=' + sc_area; 882 if(sc_word) $ahref += '&sc_word=' + sc_word; 883 location.href = $ahref; 884 } 885 break; 886 case "mdf_activity": 887 var $ahref = '/bannerpop/'; 888 $ahref += edit_section ? 'edit.html' : 'write_activity.html'; 889 $ahref += '?type='+banner_type+'&mode=modify&activity_idxno='+bannerIdxno+'&page='+page; 890 if(edit_section) $ahref += '&edit_section=' + edit_section; 891 if(edit_area) $ahref += '&edit_area=' + edit_area; 892 if(edit_step) $ahref += '&edit_step=' + edit_step; 893 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 894 if(edit_mode) $ahref += '&edit_mode=' + edit_mode; 895 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 896 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 897 //if(tmp_banner_idxno) $ahref += '&tmp_banner_idxno=' + tmp_banner_idxno; 898 if(sc_area) $ahref += '&sc_area=' + sc_area; 899 if(sc_word) $ahref += '&sc_word=' + sc_word; 900 location.href = $ahref; 901 break; 902 case "del_activity": 903 if(window.confirm('ìì í ê¹ì?')) { 904 var $ahref = '/bannerpop/delete_activity_act.php?type='+banner_type+'&activity_idxno='+bannerIdxno+'&page='+page; 905 if(edit_section) $ahref += '&edit_section=' + edit_section; 906 if(edit_area) $ahref += '&edit_area=' + edit_area; 907 if(edit_step) $ahref += '&edit_step=' + edit_step; 908 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 909 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 910 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 911 if(sc_area) $ahref += '&sc_area=' + sc_area; 912 if(sc_word) $ahref += '&sc_word=' + sc_word; 913 location.href = $ahref; 914 } 915 break; 916 case "sourceCopy_activity": // ìì¤ë³µì¬ 917 var _time = new Date().getTime() 918 ,_html = '<!--'+title+'-->' 919 + '<script type="text/javascript">var ___BANNER = "ban_'+_time+'";</script>' 920 + '<script type="text/javascript" charset="utf-8" src="/bannerpop/uploads/js_activity/'+bannerIdxno+'.js?'+_time+'" id="ban_'+_time+'"></script>'
921 + '<!--//'+title+'-->'; 922 923 adWrite.copyExe(_html); 924 break; 925 case "mdf_multi": 926 var $ahref = '/bannerpop/'; 927 $ahref += edit_section ? 'edit.html' : 'write_activity_multi.html'; 928 $ahref += '?type='+banner_type+'&mode=modify&multi_idxno='+bannerIdxno+'&page='+page; 929 if(edit_section) $ahref += '&edit_section=' + edit_section; 930 if(edit_area) $ahref += '&edit_area=' + edit_area; 931 if(edit_step) $ahref += '&edit_step=' + edit_step; 932 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 933 if(edit_mode) $ahref += '&edit_mode=' + edit_mode; 934 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 935 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 936 //if(tmp_banner_idxno) $ahref += '&tmp_banner_idxno=' + tmp_banner_idxno; 937 if(sc_area) $ahref += '&sc_area=' + sc_area; 938 if(sc_word) $ahref += '&sc_word=' + sc_word; 939 location.href = $ahref; 940 break; 941 case "del_multi": 942 if(window.confirm('ìì í ê¹ì?')) { 943 var $ahref = '/bannerpop/delete_activity_multi_act.php?type='+banner_type+'&multi_idxno='+bannerIdxno+'&page='+page; 944 if(edit_section) $ahref += '&edit_section=' + edit_section; 945 if(edit_area) $ahref += '&edit_area=' + edit_area; 946 if(edit_step) $ahref += '&edit_step=' + edit_step; 947 if(edit_idxno) $ahref += '&edit_idxno=' + edit_idxno; 948 if(org_banner_kind) $ahref += '&org_banner_kind=' + org_banner_kind; 949 if(banner_kind) $ahref += '&banner_kind=' + banner_kind; 950 if(sc_area) $ahref += '&sc_area=' + sc_area; 951 if(sc_word) $ahref += '&sc_word=' + sc_word; 952 location.href = $ahref; 953 } 954 break; 955 case "sourceCopy_multi": 956 var _time = new Date().getTime() 957 ,_html = '<!--'+title+'-->' 958 + '<script type="text/javascript">var ___BANNER = "ban_'+_time+'";</script>' 959 + '<script type="text/javascript" charset="utf-8" src="/bannerpop/uploads/js_multi/'+bannerIdxno+'.js?'+_time+'" id="ban_'+_time+'"></script>' 960 + '<!--//'+title+'-->'; 961 adWrite.copyExe(_html); 962 break; 963 } 964 965 return false; 966 }); 967 } 968 969 //ìì ì ì¹ì í 컨í ì¸ ì½ì 970 ,addEditContents:function(data) 971 { 972 //var flag = false; 973 var flag = true; 974 975 /*if(data.mode == 'modify') { 976 if(data.tmp_banner_idxno != data.banner_idxno) { 977 if(confirm(data.edit_msg)) flag = true; 978 else flag = false; 979 }else flag = true; 980 }else flag = true;*/ 981 982 if(flag) { 983 data = JSON.stringify(data); 984 $.ajax({ 985 url:"/edit/adminReservationBannerWrite.php" 986 ,type:'post' 987 ,dataType:'json' 988 ,contentType:'application/x-www-form-urlencoded; charset=utf-8' 989 ,data:{post_data:data} 990 ,success:function(json, result) { 991 if(result == 'success') { 992 if(json.response == 'ok') { 993 window.parent.location.reload(); 994 }else{ 995 alert(json.msg); 996 return false; 997 } 998 }else return false; 999 } 1000 }); 1001 }else{ 1002 return false; 1003 } 1004 } 1005 1006 //ìì ì ì¹ì í 컨í ì¸ ì½ì 1007 ,addEditPopupContents:function(data) 1008 { 1009 data = JSON.stringify(data); 1010 $.ajax({ 1011 url:"/edit/adminReservationPopupWrite.php" 1012 ,type:'post' 1013 ,dataType:'json' 1014 ,contentType:'application/x-www-form-urlencoded; charset=utf-8' 1015 ,data:{post_data:data} 1016 ,success:function(json, result) { 1017 if(result == 'success') { 1018 if(json.response == 'ok') { 1019 //window.parent.location.reload(); 1020 parent.$('#edit-modal').find('.close-button').trigger('click'); 1021 adWrite.addPopupContentsList(json); 1022 }else{ 1023 alert(json.msg); 1024 return false;
1025 } 1026 }else return false; 1027 } 1028 }); 1029 } 1030 1031 ,addPopupContentsList:function(json) { 1032 var html = ''; 1033 if(json.rows.length>0) { 1034 for(var i = 0; i < json.rows.length; i++) { 1035 var index = i+1; 1036 html += '<!-- íì //-->'; 1037 html += '<div class="option-popup-item">'; 1038 html += ' <input type="radio" name="editPopup" id="editPopup' + index + '" class="popup_element_ckecked" title="' + adWrite.rawurldecode(json.rows[i].popup_title) + '" data-idxno="' + json.rows[i].idxno + '" data-step="' + json.rows[i].step + '" value="' + json.rows[i].popup_idxno + '" />'; 1039 html += ' <label for="editPopup' + index + '">'; 1040 if(json.rows[i].popup_image && json.rows[i].extension != 'swf') { 1041 html += '<img src="/bannerpop/uploads/image/' + json.rows[i].popup_image + '" alt="' + adWrite.rawurldecode(json.rows[i].popup_title) + '" />'; 1042 }else{ 1043 if(json.rows[i].extension == 'swf') html += 'SWF'; 1044 else html += 'HTML'; 1045 } 1046 html += ' <div class="option-popup-item-title">' + adWrite.rawurldecode(json.rows[i].popup_title) + '</div>'; 1047 html += ' </label>'; 1048 html += '</div>'; 1049 html += '<!--// íì -->'; 1050 } 1051 } 1052 1053 parent.$('.option-popup-group').html(html); 1054 } 1055 1056 //ì ì²´ì íãí´ì 1057 ,allChk:function() 1058 { 1059 var $allChk = $('#allCheck'); 1060 $allChk.click(function(){ 1061 if($(this).is(':checked') == true) { 1062 $('.elembox').prop('checked',true); 1063 }else{ 1064 $('.elembox').prop('checked',false); 1065 } 1066 }); 1067 } 1068 1069 /** 1070 * í´ë¦½ë³´ë ë³µì¬ 1071 * source : ë³µì¬í ì ë³´ 1072 */ 1073 ,copyExe:function(source) 1074 { 1075 if(window.clipboardData){ // ie 1076 window.clipboardData.setData('Text',source); 1077 alert("ë³µì¬ëììµëë¤. ìíë ê³³ì ë¶ì¬ë£ê¸°íì¬ ì£¼ì¸ì."); 1078 }else{ // etc 1079 //var $tmpDiv=$('<div class="blind">'+source.replace(/</g,"<").replace(/>/g,">")+'</div>').appendTo("body") 1080 // blindê° display:none ìì± ë문ì ì ê±° 1081 var $tmpDiv=$('<div>'+source.replace(/</g,"<").replace(/>/g,">")+'</div>').appendTo("body") 1082 ,range=document.createRange() 1083 ,selection=null; 1084 1085 range.selectNodeContents($tmpDiv.get(0)); 1086 selection=window.getSelection(); 1087 selection.removeAllRanges(); 1088 selection.addRange(range); 1089 1090 if(document.execCommand("copy", false, null)) alert("ë³µì¬ëììµëë¤. ìíë ê³³ì ë¶ì¬ë£ê¸°íì¬ ì£¼ì¸ì."); 1091 else window.prompt('í¤ë³´ëì ctrl+C ëë ë§ì°ì¤ ì¤ë¥¸ìª½ì ë³µì¬í기를 ì´ì©í´ì£¼ì¸ì.', source); 1092 1093 $tmpDiv.remove(); 1094 } 1095 } 1096 1097 /** 1098 * 기ë¥ì± ë°°ë ì¶ê°/ììë³ê²½/ìì / 1099 */ 1100 ,evtClickActivityAdd:function() { 1101 //sessionStorage.removeItem("last_idx"); 1102 var activity_idxno=window.parent.$('#all-banner-list').closest('div').attr('data-activity-idxno')||''; 1103 $('#activity-add-btn').click(function() { 1104 var $this=$(this); 1105 //,$viewHref=$('#activity-view-btn').attr('href') 1106 //,$last_idx=(activity_idxno)?activity_idxno:sessionStorage.getItem('last_idx'); 1107 1108 if($('.banner_element_ckecked').is(':checked') == false) { 1109 alert('ë°°ë를 ì íí´ì£¼ì¸ì.'); 1110 //if(!$last_idx) $('#activity-view-btn').addClass('is-hidden'); 1111 return false; 1112 }else{ 1113 var $checked=$(".banner_element_ckecked:checked") 1114 ,arr = new Array(); 1115 if($checked.length>0) { 1116 $.each($checked, function(idx, v) { 1117 arr.push(v.value); 1118 }); 1119 1120 var data = {mode:activity_idxno?'modify':'input', activity_idxno:activity_idxno, banner_idxno:arr}; 1121 data = JSON.stringify(data); 1122 //console.log(data); 1123 $.ajax({ 1124 url:"/bannerpop/activity_act.php" 1125 ,type:'post' 1126 ,dataType:'json' 1127 ,contentType:'application/x-www-form-urlencoded; charset=utf-8' 1128 ,data:{post_data:data} 1129 ,success:function(json, result) { 1130 if(result == 'success') { 1131 if(json.response == 'ok') { 1132 //alert('ì¶ê°ëììµëë¤.\nì°ì¸¡ì ë²í¼ì í´ë¦íìë©´ ìì¸ íë©´ì¼ë¡ ì´ëí©ëë¤.'); 1133 /*if(!activity_idxno) { 1134 sessionStorage.setItem('last_idx', json.last_insert_id); 1135 $('#activity-view-btn').attr('href', $viewHref + '&activity_idxno='+json.last_insert_id); 1136 } 1137 $('#activity-view-btn').removeClass('is-hidden');*/ 1138 window.parent.location.reload(); 1139 }else{ 1140 //alert(json.msg); 1141 return false;
1142 } 1143 }else return false; 1144 }, 1145 error:function(request,status,error){ 1146 alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); 1147 } 1148 }); 1149 } 1150 } 1151 }); 1152 1153 $('#banner-activity-box').sortable({ 1154 axis: '', 1155 update: function() { 1156 //console.log($(this)); 1157 } 1158 }); 1159 1160 $('.trash').click(function() { 1161 if($('.banner-activity-list').length <= 1) { 1162 alert('ë§ì§ë§ ë°°ëë ìì í ì ììµëë¤.'); 1163 return false; 1164 } 1165 1166 var $this=$(this) 1167 ,$parent = $this.closest('.banner-activity-list'); 1168 1169 $parent.fadeOut('fast', function(){ 1170 $parent.remove(); 1171 }); 1172 }); 1173 1174 $('#all-banner-list').on('click', function(e) { 1175 1176 $this = $(this); 1177 href = $this.attr('href'); 1178 1179 $("#edit-modal-iframe").attr("src", href); 1180 $('#edit-modal').foundation('open'); 1181 1182 return false; 1183 }); 1184 1185 $('#edit-modal').on('open.zf.reveal', function(e){ 1186 $('#for-loading').show(); 1187 }); 1188 1189 $('#edit-modal').on('closed.zf.reveal', function(e){ 1190 $("#edit-modal-iframe").attr("src", "about:blank").height('0px').closest('#activity-modal').css('height', '0px'); 1191 }); 1192 } 1193 1194 ,valid_activity:function() { 1195 if($('#activity_title').val() == '') { 1196 alert('ì 목ì ì ë ¥íì¸ì.'); 1197 $('#activity_title').focus(); 1198 return false; 1199 } 1200 1201 if($('.banner-activity-list').length<=0) { 1202 alert('ë°°ë를 íë ì´ì ì¶ê°íì ì¼ í©ëë¤.'); 1203 return false; 1204 } 1205 1206 return true; 1207 } 1208 1209}; // end adWrite 1210 1211var bannerpop={ 1212 vars:{ 1213 popup:{ 1214 bodyWidth:0 1215 ,bodyLeft:0 1216 ,screenWidth:0 1217 ,popname:"popup_" 1218 ,width:{ window:[],layer:[] } 1219 ,height:{ window:[],layer:[] } 1220 ,top:{ window:[],layer:[] } 1221 ,left:{ window:[],layer:[] } 1222 ,order:0 // z-indexì© ìì°¨ì 1223 ,view:"normal" // ì¼ë° : normal or ê´ë¦¬ì : manager 1224 } 1225 } 1226 1227 /** 1228 * ë°°ë í¨ê³¼ 1229 * íê·¸ ìì± ì::: bannerpop.banner(".banner_event_box"); 1230 <div class="boder_box banner_event_box" data-type="slide" data-idxno="3" data-speed="0.3"> 1231 <div class="boder_box beb_box"> 1232 <ul class="no_type beb_ul"> 1233 <li class="beb_li" data-delay="1"><a href=""><img src="http://sample.ndsoftnews.com/template_sian/download.php?idxno=856&file_extension=jpg&filename=Untitled-1.jpg" alt="ë°°ë : ì 목" /></a></li> 1234 <li class="beb_li" data-delay="1"><a href=""><img src="http://sample.ndsoftnews.com/template_sian/download.php?idxno=854&file_extension=jpg&filename=250%B0%E6%B3%B2%B5%B5%B9%CE%BD%C5%B9%AE.jpg" alt="ë°°ë : ì 목" /></a></li> 1235 <li class="beb_li" data-delay="1"><a href=""><img src="http://sample.ndsoftnews.com/template_sian/download.php?idxno=846&file_extension=jpg&filename=330%C6%F7%C5%E4.jpg" alt="ë°°ë : ì 목" /></a></li> 1236 <li class="beb_li" data-delay="1"><a href=""><img src="http://sample.ndsoftnews.com/template_sian/download.php?idxno=848&file_extension=jpg&filename=675_weeklyjournal.jpg" alt="ë°°ë : ì 목" /></a></li> 1237 <li class="beb_li" data-delay="5"><iframe width="640" height="360" src="http://www.youtube.com/embed/dykTgBpgbVs?feature=player_detailpage" frameborder="0" allowfullscreen></iframe></li> 1238 </ul> 1239 </div> 1240 <div class="beb_buttons"> 1241 <button type="button" class="beb_btns beb_btn_prev">ë¤ë¡</button> 1242 <button type="button" class="beb_btns beb_btn_stop">ë©ì¶¤</button> 1243 <button type="button" class="beb_btns beb_btn_next">ìì¼ë¡</button> 1244 </div> 1245 </div> 1246 */ 1247 ,effect:function() 1248 { 1249 var savePrefix = "banner_order_"; 1250 1251 // ë°°ë ëì´ 1252 function setSizeInfo($this){ 1253 var idxno = $this.attr("data-idxno") 1254 ,$ul = $this.find(".beb_ul") 1255 ,$li = $ul.find(".beb_li") 1256 ,boxWidth = $this.innerWidth()||$this.closest("#float_side_box").width() // ì ì¬ì´ëì ë°°ëì¼ê²½ì° ì¬ì¸¡ì 1257 ,liCount = $li.length||0; 1258 1259 // ê´ë¦¬ì íì´ì§ê° ìëë ì¤ì ë ¸ì¶ì¤ì¸ ê²ë§ ì°¾ì 1260 //if(ADM_DOMAIN.indexOf(location.host)<0){ 1261 $.each($li,function(){ 1262 var $this=$(this), len=$this.find(".banner_box").length; 1263 if(!len) $this.remove(); 1264 }); 1265 $li = $ul.find(".beb_li"); 1266 liCount = $li.length||0; 1267 //} 1268 1269 // ë¶ëª¨ë°ì¤ 기ì¤ì¼ë¡ ul ìµë ëì´ ì§ì 1270 $ul.width(boxWidth*liCount); 1271 1272 // ë°°ëë§ë¤ ëì´ê° ë¤ë¥¼ì ìì¼ë ë¶ëª¨ë°ì¤ ëì´ê¸°ì¤ì¼ë¡í¨ 1273 $li.width(boxWidth); 1274 1275 return { 1276 idxno : idxno 1277 ,$ul : $ul 1278 ,$li : $li 1279 ,boxWidth : boxWidth 1280 ,liCount : liCount 1281 }; 1282 } 1283 1284 return { 1285 // ììëë¡ íëì ë°°ëë§ ë³´ì 1286 order:function(){ 1287 var _this = this 1288 ,$this = $(_this) 1289 ,$info = setSizeInfo($this) 1290 ,idxno = $info.idxno 1291 ,$li =$info.$li 1292 ,liCount = $info.liCount-1 1293 ,saveKey = savePrefix+idxno 1294 ,order = Number(localStorage.getItem(saveKey))||0; 1295 1296 // ëë¤ ì íëê²ë§ ë³´ì, ë²í¼ ìì° 1297 $li.css("display","list-item").not(":eq("+order+")").css("display","none"); 1298 1299 localStorage.setItem(saveKey, (order>=liCount ? 0 : order+1)); 1300 } 1301 1302 // random banner 1303 ,random:function(){ 1304 var _this = this 1305 ,$this = $(_this) 1306 ,$info = setSizeInfo($this) 1307 ,$li =$info.$li 1308 ,liCount = $info.liCount 1309 ,random = Math.floor(Math.random()*liCount); 1310 1311 // ëë¤ ì íëê²ë§ ë³´ì, ë²í¼ ìì° 1312 $li.css("display","list-item").not(":eq("+random+")").css("display","none"); 1313 } 1314 1315 // random ë°°ë ì íí ì¬ë¼ì´ë 1316 ,randomSlide:function(){ 1317 bannerpop.effect()['slide'].call(this, true); 1318 } 1319 1320 // slide banner 1321 // rand true or false 1322 ,slide:function(rand){ 1323 var _this = this 1324 ,$this = $(_this) 1325 ,$info = setSizeInfo($this) 1326 ,$ul = $info.$ul 1327 ,$li =$info.$li.css("display","list-item") 1328 ,$btnBox = $this.find(".beb_buttons") 1329 ,$btnStop = $btnBox.find(".beb_btn_stop") 1330 ,$btnCurrent = null // íì¬ ì íë ë²í¼ prev,next,play,stop of buttons 1331 ,speed = Number(_this.getAttribute("data-speed"))||.3 1332 ,delayInfo = $li.map(function(){ return Number(this.getAttribute("data-delay"))||5; }).get() 1333 ,boxWidth =$info.boxWidth 1334 ,liCount = $info.liCount 1335 ,count = (rand===true?Math.floor(Math.random()*(liCount)):-1) // ì²ìë¶í° +1 íê³ ììí기ì -1ì´ê¸°ê°-randomì¼ëë ë°°ëìì¤ 1ê° 1336 ,delay = null // ë©ì¶°ìë ìê°(ì´) 1337 ,left = boxWidth // ìì§ì´ë ê°ê²© 1338 ,si = null // setInterval ë³ì : animate completeìì delayë¡ í´ê²°íë ¤ íëë° ëê° ì ìí림 1339 ,tmpDelay = null // next, prev ì delay ìì´ ëê¹ 1340 ,firstBtnClicked = 0; // prev,nextë¡ ì´ëíëê° - rotateìì ëíë² +,- í기ì ì²ìë§ ì¤íëì´ì¼ í¨ 1341 1342 /**** function //s ****/ 1343 /* 1344 ë¤ì ë°°ë 1345 @params 1346 loop : ë°ë³µë ê²ì¸ê° 1347 mode : + or - 1348 */ 1349 function rotate(loop, mode){ 1350 if(!mode) mode="+"; 1351 if(mode==="+") count++; 1352 else count--; 1353 1354 if(count>=liCount || count<=0) count = 0; // ì§ì°ìê° ë´ì ë°°ì´ì°¾ê¸° key 1355 var front = count+1; // ì§ì°í ìì§ì¬ì¼ íë 거리 미리 ë´ìë 1356 if(count>=(liCount-1)) front = 0; 1357 left = boxWidth*front*-1;
1358 delay = tmpDelay===null?delayInfo[count]:tmpDelay; 1359 1360 si = setTimeout(function(){ 1361 $ul.animate({ marginLeft:left } 1362 ,speed*1000, 1363 function(){ 1364 if(loop===false) $btnCurrent.prop("disabled", false); 1365 tmpDelay = null; 1366 });//.delay(delay*1000); 1367 if(loop!==false) rotate(); 1368 },delay*1000); 1369 } 1370 1371 // stop 1372 function stop(){ 1373 firstBtnClicked++; 1374 1375 //$ul.stop(true, false); 1376 clearTimeout(si); 1377 tmpDelay=null; 1378 $btnStop.addClass("beb_btn_start").text("play"); 1379 } 1380 1381 // restart 1382 function start(){ 1383 firstBtnClicked = 0; 1384 1385 count--; 1386 if(count<=0) count=0; 1387 1388 tmpDelay=null; 1389 rotate(); 1390 1391 $btnStop.removeClass("beb_btn_start").text("ë©ì¶¤"); 1392 } 1393 1394 // ì´ì 1395 function prev(){ 1396 stop(); 1397 1398 if(firstBtnClicked===1) count--; // ì²ìë§ ì´ë¯¸ ì¦ê°ëê°ì ê°ììí´ 1399 if(count<=0) count=liCount; 1400 1401 tmpDelay=0; 1402 rotate(false,"-"); 1403 1404 $btnCurrent.prop("disabled", true); 1405 } 1406 1407 // ì´í 1408 function next(){ 1409 stop(); 1410 1411 if(firstBtnClicked===1) count--; 1412 if(count>=liCount) count=0; 1413 1414 tmpDelay=0; 1415 rotate(false); 1416 1417 $btnCurrent.prop("disabled", true); 1418 } 1419 /**** function //e ****/ 1420 1421 // ì²ì ë°°ë를 ë³´ì´ì§ ìëë¤ë ê²ì ëë¤ ë°°ëì ì¬ë¼ì´ëë¼ë ê²-ì²ìë³´ì¼ë°°ë ì¤ì 1422 if(count>=0 && rand===true){ 1423 var _boxWidth = boxWidth*(count>=liCount?liCount-1:count)*-1; 1424 count--; 1425 $ul.css("margin-left",_boxWidth+"px"); 1426 } 1427 1428 // ì¤í 1429 rotate(); 1430 1431 // ë²í¼ë³´ì 1432 $btnBox/*.css("display","block")*/.find(".beb_btns").unbind("click") 1433 .click(function(){ 1434 var $this = $(this); 1435 1436 $btnCurrent = $this; 1437 if($this.is(".beb_btn_prev")) prev(); 1438 else if($this.is(".beb_btn_next")) next(); 1439 else if($this.is(".beb_btn_stop")){ 1440 if($this.is(".beb_btn_start")) start(); 1441 else stop(); 1442 } 1443 }); 1444 1445 // mouseover event 1446 $ul.on({ 1447 mouseenter:stop 1448 ,mouseleave:start 1449 }); 1450 } 1451 }; 1452 } 1453 1454 // ë°°ëí¸ì¶ 1455 ,banner:function(target) 1456 { 1457 var parents = this 1458 ,$target = !!target.jquery?target:$(target); 1459 1460 //console.log($target); 1461 $.each($target, function(i, ele){ 1462 var type = ele.getAttribute("data-type")||"random"; 1463 parents.effect()[type].call(this); 1464 }); 1465 } 1466 1467 ,getCookie:function(name) 1468 { /* 1469 var cookie = document.cookie; 1470 if(cookie.indexOf(name)<0) return ""; 1471 1472 var regexp = new RegExp("^(.*)"+name+"=(.*?);(.*)$","g"); 1473 return cookie.replace(regexp,"$2").replace(/^\s+|\s+$/g,""); 1474 */ 1475 name+="="; 1476 var ca = document.cookie.split(';'); 1477 for(var i=0; i<ca.length; i++) { 1478 var c = ca[i]; 1479 while (c.charAt(0)==' ') c = c.substring(1); 1480 if (c.indexOf(name) == 0) return c.substring(name.length,c.length); 1481 } 1482 return ""; 1483 } 1484 1485 ,setCookie:function(name, value, days, domain) 1486 { 1487 var expires = ""; 1488 if(days){ 1489 var date = new Date(); 1490 date.setTime(date.getTime()+(days*24*60*60*1000)); 1491 expires = "; expires="+date.toGMTString(); 1492 } 1493 1494 /* 1495 var dm=SITE_DOMAIN.replace('http://',''); 1496 dm=dm.replace('https://',''); 1497 if(!domain) domain="." + dm; 1498 */ 1499 1500 if(!domain) domain='.'+SITE_DOMAIN.replace(/^http(s)?:\/\//i,'').replace(/^(www|cms|slv|cdn|m)\./i,''); 1501 1502 document.cookie = name+"="+value+expires+"; path=/; " + (domain?"domain="+domain+";":""); 1503 } 1504 1505 // urlì arrayë¡ 1506 ,linkToJson:function(link) 1507 { 1508 if(!link) return false; 1509 1510 var json = {} 1511 ,tmp = link.replace(/^\/\?/,"").split("&"); 1512 1513 if(tmp.length<=0 || !tmp) return false; 1514 for(var i in tmp){ 1515 var param = tmp[i].split("=") 1516 ,key = param[0] 1517 ,value = param[1]; 1518 1519 json[key] = value; 1520 } 1521 return json; 1522 } 1523 1524 // ë°°ë append 1525 ,append:function() 1526 { 1527 var id = ___BANNER 1528 ,status = bannerStatus 1529 ,time = ___currentTime 1530 ,sTime = startTime 1531 ,eTime = endTime 1532 ,content = decodeURIComponent(bannerContent) 1533 ,title = typeof bannerTitle == "undefined" ? "":decodeURIComponent(bannerTitle) 1534 ,$target = $("#"+id) 1535 ,voteUse = typeof bannerVoteUse == "undefined" ? "N":bannerVoteUse 1536 ,explain = ''; 1537 //,explain = "\n<br />"+util.timestampToDatetime(sTime).strDateTime.substring(0,16)+"~"+util.timestampToDatetime(eTime).strDateTime.substring(0,16); 1538 1539 1540 if(!id || $target.length<=0 || $target.attr("data-append")=="true") return false; // ê°ì²´ê° ìê±°ë ììì ,ì´ë¯¸ ì¶ê°ëìë¤ë©´ ì¤ë¨ 1541 1542 // ìì ,ì¢ ë£ ë°°ë 1543 else if(sTime > time || time > eTime || status=="0"){ 1544 var adminPageBool = (location.href.indexOf('/edit/adminSection.html') < 0)? false:true; 1545 if(!adminPageBool) { 1546 if(!($('body').hasClass('ndip_user_body_view') && voteUse == 'Y' && status == "0")) { 1547 return false;
1548 } 1549 } // ê´ë¦¬ìê° ìëë¼ë©´ ì¢ ë£ ë©ìì§ ìëì°ê¸° 1550 var adcMsg="" 1551 ,adcClass="", voteAdcClass = ""; 1552 if(sTime > time && status!="0"){ 1553 adcMsg = 'ë ¸ì¶ìì ë°°ë'; 1554 adcClass = "banner-later"; 1555 }else if(time > eTime || status=="0"){ 1556 adcMsg = 'ì¢ ë£ë ë°°ë'; 1557 adcClass = "banner-finish"; 1558 if(voteUse == "Y") voteAdcClass = "vote_banner_box_finish"; 1559 } 1560 1561 if(!adminPageBool) $target.attr("data-append","true").after('<div class="ad-finished '+voteAdcClass+'"></div>'); else 1562 $target.attr("data-append","true").after('<div class="ad-finished"><span class="'+adcClass+'"><i class="icon-clock-o"></i> '+adcMsg+' "'+title+'"</span>'+explain+'</div>'); // ì¢ ë£ ë©ìì§ ëì°ê³ ì¢ ë£ 1563 bannerTitle="";//ì´ê¸°í 1564 1565 return false; 1566 } 1567 1568 $target.attr("data-append","true").after(content); // ì¶ê° ëìì¼ë©´ data-append íê·¸ ëê¹ 1569 } 1570 1571 /****** íì ëì°ê¸° 1572 var ___popup = [{},...]; 1573 1574 * json ë´ì© * 1575 idxno - íì idxno ê³ ì ë²í¸ 1576 title - íì ì ì 목 1577 start - íì ììì¼ì 1578 end - íì ì¢ ë£ì¼ì 1579 status - ì§íìí (1=ì§í, 0=ì¢ ë£) 1580 popup_type - íì íí (layer=ë ì´ì´, window=ìëì°) 1581 popup_size - auto (ì¬ì©ìí¨) 1582 popup_width - íì ì°½í¬ê¸°(ê°ë¡) 1583 popup_height - íì ì°½í¬ê¸°(ì¸ë¡) 1584 position - auto (ì¬ì©ìí¨) 1585 x_position - ì°½ì x ìì¹ 1586 y_position - ì°½ì y ìì¹ 1587 apply_page - ì ì©íì´ì§ (main, section, list, view ê°ì´ ì ë ¥ ëì´ìì , phpìì íì´ì§ 구ë¶í´ì jsonì¼ë¡ ë§ë¤ì´ ì¤ëë¤.) 1588 bottom_close - íë¨íì ì°½ë«ê¸° ì¶ë ¥ì¬ë¶ (Y=ì¶ë ¥, N=ì¶ë ¥ìí¨) 1589 bottom_close_expire_ck - **ëì ì´ì§ì기 (none=ì¬ì©ìí¨, day=í루ëì ì´ì§ì기, days=ëªì¼ëì ì´ì§ì기) 1590 bottom_close_expire - ëªì¼ì¸ì§ 1591 layer_border - ë ì´ì´ íì ì¸ ê²½ì° ì¸ê³½ì (Y=ì¬ì©í¨, N=ì¬ì©ìí¨) 1592 layer_move - ë ì´ì´ íì ì¸ ê²½ì° ëëê·¸ ê°ë¥ (Y=ì¬ì©í¨, N=ì¬ì©ìí¨) 1593 layer_scroll - ë ì´ì´ íì ì¸ ê²½ì° ì¤í¬ë¡¤ ë°ë¼ë¤ë기 (Y=ì¬ì©í¨, N=ì¬ì©ìí¨) 1594 layer_close - ë ì´ì´ íì ì¸ ê²½ì° ë«ê¸° ìì´ì½ (Y=ì¬ì©í¨, N=ì¬ì©ìí¨) 1595 layer_close_icon - ë ì´ì´ íì ì¸ ê²½ì° ë«ê¸° ìì´ì½ ì í 1596 layer_close_position - ë ì´ì´ íì ì¸ ê²½ì° ë«ê¸° ìì´ì½ ì¶ë ¥ ìì¹ (TL-ì/ì¢, TR-ì/ì°, BL-í/ì¢, BR-í/ì°) 1597 window_scroll - ìëì° íì ì¸ ê²½ì° ì¤í¬ë¡¤ íì±í (Y=ì¬ì©í¨, N=ì¬ì©ìí¨) 1598 content - ì¶ë ¥ HTML ë´ì© 1599 *****/ 1600 ,float:function(j) 1601 { 1602 // json ê° 1603 var current = ___currentTime 1604 ,start = Number(j.start)||0 1605 ,end = Number(j.end)||(new Date().getTime()+100) // ì¢ ë£ì¼ì´ 기ì ëì§ ììë¤ë©´, íì¬ë³´ë¤ 100ì©ëí´ì ê³ì ë림 1606 ,status = j.status||"0"; 1607 1608 if(this.vars.popup.view!="manager" && (status=="0" || current < start || (current > end && end!==0))) return false; // ì¢ ë£ or 기ê°ì´ ìëë¼ë©´ íµê³¼ 1609 1610 var parents = this 1611 ,idxno = j.idxno||"0" 1612 ,oriTitle = j.title||"" 1613 ,title = decodeURIComponent(j.title)||"" 1614 ,popupType = j.popup_type||"window" 1615 ,popupSize = j.popup_size||"auto" 1616 ,popupWidth = Number(j.popup_width)||0 1617 ,popupHeight = (Number(j.popup_height)||0) + 32 1618 ,position = j.position||"auto" 1619 ,xPosition = Number(j.x_position)||0 1620 ,yPosition = Number(j.y_position)||0 1621 ,applyPage = j.apply_page||"main" 1622 ,bottomClose = j.bottom_close||"N" 1623 ,bottomCloseExpireCk = j.bottom_close_expire_ck||"none" 1624 ,bottomCloseExpire = j.bottom_close_expire||1 1625 ,layerBorder = j.layer_border||"N" 1626 ,layerMove = j.layer_move||"N" 1627 ,layerScroll = j.layer_scroll||"N" 1628 ,layerClose = j.layer_close||"N" 1629 ,layerCloseIcon = j.layer_close_icon||"" 1630 ,layerClosePosition = j.layer_close_position||"BR" 1631 ,windowScroll = j.window_scroll||"Y" 1632 ,content = decodeURIComponent(j.content)||"" 1633 ,popupUrl = j.popup_url||""// + (parents.vars.popup.view=="manager"?"?edit_mode=preview":"")||"" 1634 ,top = 0 1635 ,left = 0 1636 ,popname = parents.vars.popup.popname+idxno 1637 ,_type = popupType; // default: ê°ìëì - íì ê³¼ ë ì´ì´ê° ìì¹ê°ì ê³µì íì¬ ì°¨ë¡ë¡ ëì¸ë ¤ë©´ "window" or ê³µì íì§ ìê³ ê°ì ëì¸ë ¤ë©´ popupType; 1638 1639 var type = { 1640 calcPosition:function(){ 1641 // x,y ê° 0ì¼ëë autoë¡ ê°ì£¼ 1642 if((xPosition===0 && yPosition===0)/* || position=="auto"*/){ 1643 var maxHeight = parents.arrayMaxMin(parents.vars.popup.height[_type],"max") 1644 ,maxTop = parents.arrayMaxMin(parents.vars.popup.top[_type],"max") 1645 ,initLeft = popupType=="window"?0:parents.vars.popup.bodyLeft 1646 ,prevWidth = parents.vars.popup.width[_type][parents.vars.popup.width[_type].length-1]||0 1647 ,prevLeft = parents.vars.popup.left[_type][parents.vars.popup.left[_type].length-1]||initLeft; // ë°ë¡ ì´ì íì ëì´ë¥¼ leftê°ì¼ë¡ ì í¨-window:0, layer:contentì left 1648 1649 //console.log(popupWidth); 1650 left = prevLeft+prevWidth; 1651 1652 // íì´ì§ ëì´ë³´ë¤ ì리ì¡ì leftê°ì´ í¬ë¤ë©´ íë©´ì íë¨ê³ ë´ë¦¼ 1653 if(left>parents.vars.popup[popupType=="window"?"screenWidth":"bodyWidth"]){ 1654 top += maxHeight; 1655 left = initLeft; 1656 1657 // ë¤ì ë¨ê³ì´ëê¹ ì´ê¸°í í¨ 1658 parents.vars.popup.width[_type] = []; 1659 parents.vars.popup.height[_type] = []; 1660 parents.vars.popup.top[_type] = []; 1661 parents.vars.popup.left[_type] = []; 1662 }else{ 1663 top = (maxTop||0); 1664 } 1665 1666 // ë³íëê° ë°°ì´ì ë£ê¸° ìí´ ì¡°ì 1667 xPosition = left; 1668 yPosition = top; 1669 1670 // ë³ìì ë´ì 1671 parents.vars.popup.width[_type].push(popupWidth||0); 1672 parents.vars.popup.height[_type].push(popupHeight||0); 1673 parents.vars.popup.top[_type].push(yPosition||0); 1674 parents.vars.popup.left[_type].push(xPosition||0); 1675 1676 }else{ 1677 top = yPosition; 1678 left = xPosition; 1679 } 1680 } 1681 1682 // ê´ë¦¬ì 미리보기ì ì¤ìì 1683 ,setPositionCenter:function(){ 1684 var _width = (document.body.clientWidth/2)-(popupWidth/2) 1685 ,_scrollTop = document.body.scrollTop; 1686 1687 top = _scrollTop + 50; 1688 left = _width; 1689 } 1690 1691 // ëì¸ íì´ì§ applyPage 1692 ,isApplyPage:function() 1693 { 1694 // ê´ë¦¬ì íµê³¼ 1695 if(parents.vars.popup.view=="manager") return true; 1696 /* 1697 var params = bannerpop.linkToJson(location.search.replace("?","")) 1698 ,mod = params.mod||"" 1699 ,act = params.act||"" 1700 ,section = params.section||""; 1701 1702 // ë©ì¸ 1703 if(((mod=="main" && act=="index" && !section) || (!mod && !act && !section)) && applyPage.indexOf("main")>=0) return true; 1704 // ì¹ì 1705 else if(mod=="main" && act=="index" && section && applyPage.indexOf("section")>=0) return true; 1706 // ê¸°ì¬ ë¦¬ì¤í¸ 1707 else if(mod=="news" && act=="articleList" && applyPage.indexOf("list")>=0) return true; 1708 // 기ì¬ë·° 1709 else if(mod=="news" && act=="articleView" && applyPage.indexOf("view")>=0) return true; 1710 */ 1711 } 1712 1713 ,window:function(){ 1714 //if(this.isApplyPage()!==true) return false;
1715 1716 this.calcPosition(); // ìì¹ ê³ì° 1717 var winpopupUrl = '/bannerpop/popup.html?win_popup_idxno=' + idxno; 1718 window.open(winpopupUrl, popname, "width="+popupWidth+",height="+popupHeight+",scrollbars="+(windowScroll=="Y"?"yes":"no")+",resizable=yes,top="+top+",left="+left); 1719 } 1720 1721 ,layer:function(){ 1722 //if(this.isApplyPage()!==true) return false; 1723 1724 this.calcPosition(); // ìì¹ ê³ì° 1725 1726 var $content = $(content); 1727 1728 $content.attr({"id":popname}) 1729 .css({"top":top+"px","left":left+"px","max-width":popupWidth+"px","min-height":popupHeight+"px","z-index":"100" + parents.vars.popup.order}).addClass("layer_box"+(layerScroll=="Y"?" layer_box_fixed":"")+(layerBorder=="Y"?" layer_box_border":"")) 1730 .find(".popup_close_box").addClass("layer_close_box"); 1731 1732 // ëëê·¸ ê°ë¥ 1733 if(layerMove=="Y") $content.addClass("layer_box_cursor_move").draggable(); 1734 1735 // ì°½ë«ê¸°-icon ë«ê¸° ë²í¼ì ë³ê°ë¤ 1736 //if(bottomClose=="Y"){ 1737 var $btnClose = $content.find(".popup_close, .popup_close_map, .popup_icon_close"); 1738 $btnClose.each(function(){ 1739 var _$this = $(this); 1740 //if(_$this.is(".popup_close") && bottomClose=="Y") _$this.text('ì°½ë«ê¸°'); 1741 1742 if(_$this.is(".popup_icon_close")) { 1743 if(layerClosePosition == 'BL' || layerClosePosition == 'BR') { 1744 1745 if($content.find(".popup_close, .popup_close_map").length>0) { 1746 _$this.css('top',Number(j.popup_height)-40+'px'); 1747 } 1748 } 1749 1750 _$this.addClass("layer_position_"+layerClosePosition); 1751 } 1752 }); 1753 1754 $btnClose.click(function(){ 1755 parents.evtClose(popupType, idxno); 1756 return false; 1757 }); 1758 //} 1759 1760 // ì´ë¯¸ì§ë´ ë§í¬ê° ì°½ë«ê¸° ë¼ë©´ 1761 //$content.find("a[href*='javascript:window.close()']").click(function(){ 1762 $content.find("[href*='javascript:window.close()']").click(function(){ 1763 parents.evtClose(popupType, idxno); 1764 return false; 1765 }); 1766 1767 // í루, ëªì¼ëì ì´ì§ ì기 1768 parents.daysNotOpen(bottomCloseExpireCk, bottomCloseExpire, $content.find(".popup-days, .popup_day_close_map"), j); 1769 1770 // ê´ë¦¬ì 미리보기ì ì¤ìì 1771 if(parents.vars.popup.view=="manager"){ 1772 $content.appendTo(document.body); 1773 this.setPositionCenter(); 1774 $content.removeClass("layer_box_fixed").css({"top":top+"px", "left":left+"px"}); 1775 }else{ 1776 $content.appendTo($("#layer-popups")); 1777 } 1778 } 1779 }; 1780 1781 type[popupType](); 1782 } 1783 1784 // íì ëì°ê¸° 1785 ,popup:function() 1786 { 1787 //try{ 1788 var parents = this; 1789 $(window).on("load", function(){ 1790 if(!window.___popup) return ; 1791 if($.isArray(___popup)===false && ___popup.length>0) return ; 1792 if(!window.___currentTime) ___currentTime = Math.floor(new Date().getTime()/1000);// ìê°ì´ ì¤ì ëì§ ììë¤ë©´ js ìê°ì¼ë¡ ì¤ì í¨ 1793 1794 var $content = $("#layer-popups"); 1795 1796 if($content.length<=0) return false; 1797 parents.vars.popup.bodyWidth = $content.innerWidth(); 1798 parents.vars.popup.bodyLeft = $content.position().left; 1799 parents.vars.popup.screenWidth = window.screen.width; 1800 for(var i=0,cnt=___popup.length; i<cnt; i++){ 1801 // ì¿ í¤ì¸ì§ íë¨í ì´ê¸° 1802 var coo = ""; 1803 coo = bannerpop.getCookie(parents.vars.popup.popname+___popup[i].idxno) 1804 1805 if(!coo){ 1806 parents.vars.popup.order++; 1807 parents.float(___popup[i]); 1808 } 1809 } 1810 }); 1811 //}catch(e){} 1812 } 1813 1814 1815 // ì°½ë«ê¸° 1816 ,evtClose:function(mode, idxno) 1817 { 1818 if(mode=="layer"){ 1819 var layerId = bannerpop.vars.popup.popname+idxno; 1820 1821 $("#"+layerId).fadeOut("fast", function(){ 1822 $(this).remove(); 1823 }); 1824 }else window.close(); 1825 } 1826 1827 // cookie 1828 ,evtCookieClose:function(name, days) 1829 { 1830 bannerpop.setCookie(name, "popup", days); 1831 } 1832 1833 // í루,ëªì¼ëì ì´ì§ ì기 1834 ,daysNotOpen:function(expire, period, $btn, p) 1835 { 1836 var parents = this 1837 ,idxno = p.idxno 1838 ,isClickedMap = false; 1839 1840 if(expire!="none"){ 1841 $btn.each(function(i,v) { 1842 var $thisBtn = $(this); 1843 if($thisBtn.is(".popup-days")){ 1844 // í루ëì 1845 if(expire=="day"){ 1846 $thisBtn.click(function(){ 1847 parents.evtCookieClose(parents.vars.popup.popname+idxno, "1"); 1848 parents.evtClose(p.popup_type, p.idxno); 1849 return false;
1850 }) 1851 // ë«ê¸° íê·¸ ìì ìê²ë ìë ê±° ì°¾ì ë«ê¸° í ì¤í¸ ë£ì´ì£¼ê¸° 1852 .not(":has(*)").html('<a href="#close-to-layer">í루ëì ë³´ì§ ì기</a>'); 1853 } 1854 // ëªì¼ëì daySubfix 1855 else if(expire=="days"){ 1856 var select = '<a href="#link">' 1857 +'<label class="show-for-sr" for="popDays"></label>' 1858 +'<select name="popDays" id="popDays" class="tiny" title="기ê°">' 1859 +' <option value="1">í루</option>' 1860 +' <option value="2">2ì¼</option>' 1861 +' <option value="3">3ì¼</option>' 1862 +' <option value="4">4ì¼</option>' 1863 +' <option value="5">5ì¼</option>' 1864 +' <option value="6">6ì¼</option>' 1865 +' <option value="7">7ì¼</option>' 1866 +'</select> ëì ì´ì§ì기' 1867 +'</a>'; 1868 var html = '<a href="#link">' 1869 + (period>1 ? 'ëªì¼ëì ë³´ì§ ì기' : 'í루ëì ë³´ì§ ì기') 1870 +'</a>'; 1871 //$btn.not(":has(*)").append(select).click(function(){ 1872 $thisBtn.append(html).click(function(){ 1873 var $this = $(this) 1874 //,days = $this.prev("select").val(); 1875 ,days = period; 1876 1877 parents.evtCookieClose(parents.vars.popup.popname+idxno, days); 1878 parents.evtClose(p.popup_type, p.idxno); 1879 return false; 1880 }); 1881 } 1882 }else{ 1883 // ì´ë¯¸ì§ë§µì¼ë, í루ëì ì´ì§ì기 1884 $thisBtn.click(function(){ 1885 parents.evtCookieClose(parents.vars.popup.popname+idxno, "1"); 1886 parents.evtClose(p.popup_type, p.idxno); 1887 return false; 1888 }); 1889 1890 isClickedMap = true; 1891 } 1892 }); 1893 } 1894 1895 // expire ê°ì´ë ê´ê³ìì´ ì´ë¯¸ì§ë§µì ì°¾ì ì²ë¦¬ 1896 if(isClickedMap===false && $btn.is(".popup_day_close_map")){ 1897 // ì´ë¯¸ì§ë§µì¼ë, í루ëì ì´ì§ì기 1898 $btn.click(function(){ 1899 parents.evtCookieClose(parents.vars.popup.popname+idxno, "1"); 1900 parents.evtClose(p.popup_type, p.idxno); 1901 return false; 1902 }); 1903 } 1904 } 1905 1906 // window popup control 1907 ,popupControl:function() 1908 { 1909 if(!___popup) return ; 1910 if((typeof ___popup)!=="object") return ; 1911 1912 var parents = this 1913 ,p = ___popup 1914 ,title = decodeURIComponent(p.title)||"" 1915 ,popupType = p.popup_type||"window" 1916 ,bottomClose = p.bottom_close||"Y" 1917 ,bottomCloseExpireCk = p.bottom_close_expire_ck||"day" // : day,days,none 1918 ,bottomCloseExpire = p.bottom_close_expire||1 // : ëªì¼ 1919 ,$btnClose = $(".popup_close, .popup_close_map, .popup_icon_close") 1920 ,$btnDayClose = $(".popup-days, .popup_day_close_map"); 1921 1922 if(popupType!="window") return ; 1923 1924 // ìëì° ë° íì´í êµì²´ 1925 document.title = title; 1926 1927 // ì°½ë«ê¸° 1928 if(bottomClose=="Y"){ 1929 $btnClose.each(function(){ 1930 var _$this = $(this); 1931 //if(_$this.is(".popup_close")) _$this.text('ì°½ë«ê¸°'); 1932 }); 1933 1934 $btnClose.click(function(){ 1935 parents.evtClose(p.popup_type, p.idxno); 1936 return false; 1937 }); 1938 } 1939 1940 // í루, ëªì¼ëì ì´ì§ ì기 1941 this.daysNotOpen(bottomCloseExpireCk, bottomCloseExpire, $btnDayClose, p); 1942 1943 } 1944 1945 // array ìµê³ ê° 1946 ,arrayMaxMin:function(arr, mode) 1947 { 1948 if($.isArray(arr)===false) return false; 1949 1950 if(!mode) mode = "max"; 1951 arr.sort(function(a, b){ 1952 return b-a; 1953 }); 1954 return (mode=="max"?arr[0]:arr[arr.length-1])||0; 1955 } 1956}; 1957 1958/****************************************************************************************************************** 1959* ë©í° 기ë¥ì± ë°°ë 1960* 1961* @update 2018/07/18 1962*/ 1963var bannerpopMulti = { 1964 // php ì ë¬ ë³ì 1965 vars:{ 1966 $banner_list:null, 1967 $edit_mode:"" 1968 } 1969 1970 // íì´ì§ ì´ê¸° ë¡ë 1971 ,init:function() { 1972 $('input[name="effect_type"]').on("click", function() { 1973 if ($(this).val()=='none') { 1974 $("#row_num").val(0).attr("disabled", true); 1975 $("#scroll_num").val(0).attr("disabled", true); 1976 } else { 1977 $("#row_num").removeAttr("disabled"); 1978 $("#scroll_num").removeAttr("disabled"); 1979 } 1980 }); 1981 1982 $('input[name="autoplay"]').on("click", function() { 1983 if ($(this).val()=='Y') { 1984 $("#autoplay_speed").removeAttr("disabled"); 1985 } else { 1986 $("#autoplay_speed").attr("disabled", true); 1987 } 1988 }); 1989 1990 $('#all-banner-list').on('click', function(e) { 1991 $this = $(this); 1992 href = $this.attr('href'); 1993 $("#edit-modal-iframe").attr("src", href); 1994 $('#edit-modal').foundation('open'); 1995 return false;
1996 }); 1997 1998 $('#banner-activity-box').sortable({ 1999 axis: '', 2000 update: function() { 2001 console.log($(this)); 2002 } 2003 }); 2004 2005 $('#edit-modal').on('open.zf.reveal', function(e){ 2006 $('#for-loading').show(); 2007 }); 2008 2009 $('#edit-modal').on('closed.zf.reveal', function(e){ 2010 $("#edit-modal-iframe").attr("src", "about:blank").height('0px').closest('#activity-modal').css('height', '0px'); 2011 }); 2012 2013 $(document).on("click", '.trash', function() { 2014 var $this=$(this) 2015 ,$parent = $this.closest('.banner-activity-list'); 2016 $parent.fadeOut('fast', function(){ 2017 $parent.remove(); 2018 }); 2019 }); 2020 } 2021 2022 // ë°°ë ê°ì ¸ì¤ê¸° 2023 ,evtClickMultipleAdd:function() { 2024 var multi_idxno=window.parent.$('#all-banner-list').closest('div').attr('data-multi-idxno')||''; 2025 $('#activity-add-btn').on("click", function() { // #activity-add-btn 기ë¥ì±ë°°ë ë²í¼ í´ë¦ ì´ë²¤í¸ë¥¼ ì´ì© 2026 var $this=$(this); 2027 if($('.banner_element_ckecked').is(':checked') == false) { 2028 alert('ë°°ë를 ì íí´ì£¼ì¸ì.'); 2029 return false; 2030 }else{ 2031 var $checked=$(".banner_element_ckecked:checked") 2032 ,arr = new Array(); 2033 if($checked.length>0) { 2034 $.each($checked, function(idx, v) { 2035 arr.push(v.value); 2036 }); 2037 2038 var data = {mode:multi_idxno?'modify':'input', multi_idxno:multi_idxno, banner_idxno:arr}; 2039 data = JSON.stringify(data); 2040 //console.log(data); 2041 2042 $.ajax({ 2043 url:"/bannerpop/activity_multi_act.php" 2044 ,type:'post' 2045 ,dataType:'json' 2046 ,contentType:'application/x-www-form-urlencoded; charset=utf-8' 2047 ,data:{post_data:data} 2048 ,success:function(json, result) { 2049 if(result == 'success') { 2050 if(json.response == 'ok') { 2051 var item = JSON.parse(json.data), 2052 $target = window.parent.$("#banner-activity-box"), 2053 $sample = window.parent.$("#sample"); 2054 bannerpopMulti.vars.$banner_list = item; 2055 bannerpopMulti.bannerCollocate($target, $sample); 2056 window.parent.$(".close-button").trigger("click"); 2057 }else{ 2058 return false; 2059 } 2060 }else return false; 2061 }, 2062 error:function(request,status,error){ 2063 alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); 2064 } 2065 }); 2066 } 2067 } 2068 }); 2069 } 2070 2071 // ë°°ë ë°°ì¹ í기 2072 ,bannerCollocate:function($targetArea, $sample) { 2073 if (!this.vars.$banner_list) return false; 2074 if (typeof $targetArea != "object" || typeof $sample != "object") return false; 2075 var item = this.vars.$banner_list; 2076 for (var i=0;i<item.length;i++) { 2077 var $areaBox = $targetArea, 2078 $clone = $sample.clone(), 2079 stateIcon = ""; 2080 if (typeof $clone == "object") { 2081 if (item[i].state=="previous") stateIcon = '<span class="label success tiny">ì§íì </span>'; 2082 else if (item[i].state=="proceeding") stateIcon = '<span class="label tiny">ì§íì¤</span>'; 2083 else stateIcon = '<span class="label secondary tiny">ì§íì¢ ë£</span>'; 2084 $clone.attr("data-banner-idxno", item[i].idxno); 2085 $clone.find(".banner-activity-list").attr("data-banner-idxno", item[i].idxno).end(). 2086 find(".dis-table-cell").append(item[i].banner).end(). 2087 find('input[name="banner_idxno[]"]').val(item[i].idxno).end(). 2088 find(".dis-status").empty().append(stateIcon).end(). 2089 find('input[name="delay[]"]').attr("id", "delay_"+item[i].idxno).attr("value", item[i].delay).end(). 2090 find('.input-group-label').attr("for", "delay_"+item[i].idxno); 2091 $areaBox.append($clone.html()); 2092 } 2093 } 2094 } 2095 2096 // ì íë ë°°ë íì 2097 ,selectBannerCheck:function() { 2098 var $areaBox = window.parent.$("#banner-activity-box"), 2099 $list = $areaBox.find('input[name="banner_idxno[]"]'), 2100 $bannerItems = $(".adccfg_list_items"), 2101 bannerList = [], 2102 i = 0; 2103 $list.each(function() { 2104 bannerList.push($(this).val()); 2105 }); 2106 //console.log(bannerList); 2107 2108 $bannerItems.each(function() { 2109 var $this = $(this), 2110 idxno = $this.attr("data-banner-idxno"); 2111 if ($.inArray(idxno, bannerList)!=-1) { 2112 $this.find(".ad-tile").append('<div class="content-inert"><button type="button" class="content-buttons display has-tip" title="ì½ì ëë°°ë" data-tooltip><i class="icon-tv"><span class="show-for-sr">ì½ì ëë°°ë</span></i></button></div>'); 2113 } 2114 }); 2115 } 2116 2117 // ë°°ë ë±ë¡í기 2118 ,valid_multi:function(form) { 2119 if(form.title.value == '') { 2120 alert('ì 목ì ì ë ¥íì¸ì.');
2121 form.title.focus(); 2122 return false; 2123 } 2124 2125 if (form.column_num.value>9) { 2126 alert("ì´ìë 1~9ê¹ì§ë§ ì ë ¥í ì ììµëë¤."); 2127 form.column_num.focus(); 2128 return false; 2129 } 2130 2131 if (form.row_num.value>9) { 2132 alert("íìë 1~9ê¹ì§ë§ ì ë ¥í ì ììµëë¤."); 2133 form.row_num.focus(); 2134 return false; 2135 } 2136 2137 if (form.scroll_num.value>9) { 2138 alert("ì¤í¬ë¡¤ìë 1~9ê¹ì§ë§ ì ë ¥í ì ììµëë¤."); 2139 form.scroll_num.focus(); 2140 return false; 2141 } 2142 2143 if($('.banner-activity-list').length-1<=0) { 2144 alert('ë°°ë를 íë ì´ì ì¶ê°íì ì¼ í©ëë¤.'); 2145 return false; 2146 } 2147 2148 return true; 2149 } 2150 2151 // ë©í° 기ë¥ì± ë°°ë ì´ë²¤í¸ ë¡ë 2152 ,bannerLoad:function() { 2153 $('.banner-multi-box').each(function() { 2154 var $effectType = $(this).attr("data-effect-type"), 2155 $rowNum = $(this).attr("data-row-num")||1,
2156 $colNum = $(this).attr("data-column-num")||1, 2157 $scrollNum = $(this).attr("data-scroll-num")||1, 2158 $moveDisplay = $(this).attr("data-move-display")||'none', 2159 $autoplay = $(this).attr("data-autoplay")||'N', 2160 $autoplaySpeed = $(this).attr("data-autoplay-speed")||5, 2161 $speed = $(this).attr("data-speed")||300, 2162 $random = $(this).attr("data-random")||'N', 2163 $bannerMultiBoxHtml = $(this); 2164 2165 // ìì½ë°°ëì´ê±°ë ì¢ ë£ ë°°ëì¼ ê²½ì° ì ì¸ ì²ë¦¬. 2166 if(location.href.indexOf('/edit/adminSection.html')<0) { 2167 $(this).find(".slick-slide").each(function(){ 2168 if($(this).find('.banner_box').length<=0) { 2169 $bannerMultiBoxHtml.find(".slick-slide").eq($(".slick-slide").index(this)).remove(); 2170 } 2171 }); 2172 } 2173 2174 if ($effectType!="none") { 2175 var totalSlide = $(this).find(".slick-slide").length||0, 2176 randomStart = Math.floor(Math.random() * totalSlide); 2177 randomStart = ($random=="Y") ? randomStart : 0; 2178 2179 var slickParam = {}; 2180 slickParam.prevArrow = '<button type="button" class="roll-btns btn-prev"><i class="icon-angle-left-thin"><span class="show-for-sr">prev</span></i></button>'; // ì´ì ë²í¼ 2181 slickParam.nextArrow = '<button type="button" class="roll-btns btn-next"><i class="icon-angle-right-thin"><span class="show-for-sr">next</span></i></button>'; // ë¤ìë²í¼ 2182 slickParam.infinite = true; // 무í ë기기 2183 slickParam.draggable = false; // ì ì¤ì²(모ë°ì¼ì©) 2184 2185 switch ($effectType) { 2186 case "vertical": 2187 slickParam.slidesToShow = parseInt($rowNum,10); 2188 slickParam.vertical = true; 2189 slickParam.verticalSwiping = true; 2190 if ($random=="Y"&&totalSlide>parseInt($rowNum,10)) slickParam.initialSlide = randomStart; 2191 break; 2192 case "horizon": 2193 default: 2194 slickParam.slidesToShow = parseInt($colNum,10); 2195 if (parseInt($rowNum,10)>1) slickParam.rows = parseInt($rowNum,10); 2196 if ($random=="Y") slickParam.initialSlide = randomStart; 2197 break; 2198 } 2199 2200 slickParam.slidesToScroll = parseInt($scrollNum,10); 2201 slickParam.arrows = ($moveDisplay=="arrow"&&bannerpopMulti.vars.$edit_mode!="delete")?true:false; 2202 slickParam.dots = ($moveDisplay=="dot"&&bannerpopMulti.vars.$edit_mode!="delete")?true:false; 2203 slickParam.dotsClass = "auto-pager"; 2204 slickParam.autoplay = ($autoplay== "Y")?true:false; 2205 slickParam.autoplaySpeed = ($autoplay== "Y")?parseInt($autoplaySpeed,10)*1000:0; 2206 slickParam.speed = parseInt($speed, 10); 2207 slickParam.centerMode = false; 2208 slickParam.variableWidth = false; 2209 slickParam.focusOnSelect = true; 2210 //console.log(slickParam); 2211 2212 $(this).slick(slickParam); 2213 } else { 2214 if ($random=="Y") shuffle($(this)); 2215 } 2216 2217 function shuffleArray(d) { 2218 for (var c = d.length - 1; c > 0; c--) { 2219 var b = Math.floor(Math.random() * (c + 1)); 2220 var a = d[c]; 2221 d[c] = d[b]; 2222 d[b] = a; 2223 } 2224 return d; 2225 } 2226 2227 function shuffle(target){ 2228 var $box = $(target).children(".slick-slide-none") 2229 ,$container = $box.children(".row") 2230 ,$li = $box.find(".columns") 2231 ,total = $li.length 2232 ,tmp = []; 2233 2234 for(var i=0;i<total;i++) tmp.push(i); 2235 2236 $container.empty(); 2237 setTimeout(
2238 shuffleArray(tmp).forEach(function(a,b){ 2239 var $bannerBoxs=$li[a].querySelectorAll(".banner_box") 2240 ,length=$bannerBoxs.length 2241 ,div=document.createElement("div"); 2242 for(var i=0;i<length;i++){ 2243 div.appendChild($bannerBoxs[i]); 2244 div.className = "columns"; 2245 } 2246 $container.append(div); 2247 }) 2248 ,0); 2249 } 2250 }); 2251 } 2252}; 2253 2254/* ****************************************** */ 2255/* /script/resizePhoto.js */ 2256/* ****************************************** */ 2257 2258function resizePhoto() { 2259 2260 var $_container = $('#article-view-content-div'); 2261 var articleViewDivWidth = $_container.width(); 2262 2263 $_container.find('img').each(function(e){ 2264 if($(this).closest('figure').length) { 2265 var ViewimageObj = new Image(); 2266 var $_thisImgObj = $(this); 2267 ViewimageObj.src = $(this).attr("src"); 2268 ViewimageObj.onload = function() { 2269 imageWidth = this.width; 2270 if(articleViewDivWidth <= imageWidth) { 2271 $_thisImgObj.closest('figure').addClass('bigsize'); 2272 } 2273 }; 2274 2275 } 2276 }); 2277 2278 $_container.on('click', 'figure.bigsize img', function(e){ 2279 $('<form action="/news/userArticlePhoto.html" method="POST"><input type="hidden" name="src" value="'+$(this).attr('src')+'"></form>').appendTo('body').submit(); 2280 2281 //var src = $(this).find('img').attr('src'); 2282 //top.location.href = src; 2283 }); 2284} 2285 2286/* ****************************************** */ 2287/* /script/floating.banner.js */ 2288/* ****************************************** */ 2289 2290$(window).scroll(function() { 2291 2292 if(!($('#floating_banner_left').length || $('#floating_banner_right').length)) return false; 2293 2294 var floatBannerLeft = $('#floating_banner_left'), 2295 floatBannerRight = $('#floating_banner_right'), 2296 2297 HeadHeight = $('#user-header').height(), 2298 footerBoxTop = $('#user-footer').offset().top, 2299 footerBoxHeight = $('#user-footer').height() - 200, 2300 2301 scrollTop = $(window).scrollTop(), 2302 2303 flBnLHeight = floatBannerLeft.height(), 2304 flBnRHeight = floatBannerRight.height(), 2305 2306 ahtHeight = $('.aht-wrapper').height(), 2307 2308 flBnLscrollLimit = footerBoxTop - flBnLHeight - HeadHeight - floatBannerLeft.data('down-margin'), 2309 flBnLscrollLimitChk = flBnLscrollLimit + footerBoxHeight + floatBannerLeft.data('down-margin'), 2310 flBnRscrollLimit = footerBoxTop - flBnRHeight - HeadHeight - floatBannerRight.data('down-margin'), 2311 flBnRscrollLimitChk = flBnRscrollLimit + footerBoxHeight + floatBannerRight.data('down-margin'), 2312 2313 flBnLscrollTop = scrollTop - HeadHeight + ahtHeight + floatBannerLeft.data('top-margin'), 2314 flBnRscrollTop = scrollTop - HeadHeight + ahtHeight + floatBannerRight.data('top-margin'); 2315 2316 if(floatBannerLeft.data('scroll') == 'y'){ 2317 if(floatBannerLeft.data('duration') > 0) floatBannerLeft.stop(); 2318 if(scrollTop < HeadHeight) floatBannerLeft.animate({top: '0px'}, floatBannerLeft.data('duration'), 'linear'); 2319 else if(scrollTop >= flBnLscrollLimitChk) floatBannerLeft.animate({top:flBnLscrollLimit + 'px'}, floatBannerLeft.data('duration'), 'linear'); 2320 else if(scrollTop >= HeadHeight) floatBannerLeft.animate({top:flBnLscrollTop + 'px'}, floatBannerLeft.data('duration'), 'linear'); 2321 } 2322 2323 if(floatBannerRight.data('scroll') == 'y'){ 2324 if(floatBannerRight.data('duration') > 0) floatBannerRight.stop(); 2325 if(scrollTop < HeadHeight) floatBannerRight.animate({top: '0px'}, floatBannerRight.data('duration'), 'linear'); 2326 else if(scrollTop >= flBnRscrollLimitChk) floatBannerRight.animate({top:flBnRscrollLimit + 'px'}, floatBannerRight.data('duration'), 'linear'); 2327 else if(scrollTop >= HeadHeight) floatBannerRight.animate({top:flBnRscrollTop + 'px'}, floatBannerRight.data('duration'), 'linear'); 2328 } 2329}); 2330 2331/* ****************************************** */ 2332/* /script/mosaic.js */ 2333/* ****************************************** */ 2334 2335function mosaic_autobox(data) { 2336 var $_container = $(data[0].container); 2337 var autoplay = data[0].autoplay; 2338 var autotime = data[0].autotime; 2339 var temp_autoplay = autoplay; 2340 var totalcount = $_container.find('ul.auto-nav > li').length; 2341 var point = 0; 2342 2343 $_container.on('mouseenter', '.auto-cursor', function(e){ 2344 mosaic_cmd('current', $(this).index()); 2345 }); 2346 2347 $_container.on('mouseenter', function(e){ 2348 if(autoplay) temp_autoplay = false;
2349 }).on('mouseleave', function(e){ 2350 if(autoplay) temp_autoplay = true; 2351 }); 2352 2353 if(autoplay) { 2354 var rolling = window.setInterval(function () { 2355 if(temp_autoplay) mosaic_cmd('next', 0); 2356 }, autotime); 2357 } 2358 2359 function mosaic_cmd(mode, current_point) { 2360 2361 if(mode == "prev") { 2362 point -= 1; 2363 if(point < 0) point = totalcount - 1; 2364 }else if(mode == "next") { 2365 point += 1; 2366 if(point >= totalcount) point = 0; 2367 }else if(mode == "current") { 2368 point = current_point; 2369 } 2370 2371 $_container.find('ul.auto-container > li').eq(point).show().siblings().hide(); 2372 $_container.find('ul.auto-nav > li').eq(point).addClass('active').siblings().removeClass('active'); 2373 2374 if(point < 2){ 2375 $_container.find('ul.auto-container').css({"left":"33.333333%","top":"33.333333%"}); 2376 } else if(point < 4 && point >= 2) { 2377 $_container.find('ul.auto-container').css({"left":"0px","top":"33.333333%"}); 2378 } else if(point < 6 && point >= 4) { 2379 $_container.find('ul.auto-container').css({"left":"0px","top":"0px"}); 2380 } else if(point >= 6) { 2381 $_container.find('ul.auto-container').css({"left":"33.333333%","top":"0px"}); 2382 } 2383 2384 return false; 2385 } 2386} 2387 2388/* ****************************************** */ 2389/* /script/newsAutoCall.js */ 2390/* ****************************************** */ 2391 2392function fn_articleAutoCall(mode, cycle) { 2393 2394 var autoCallMode = mode; 2395 var autoCallCycle = 1000*60*cycle; 2396 var _autoCallWatch = setInterval(action, autoCallCycle); 2397 2398 // DESKì¤ë³µìì ì´ë©´ ì´ê¸° 1í ë°ë¡ì¤í. 2399 if(autoCallMode == "desk") action(); 2400 2401 function action() { 2402 if(autoCallMode == "save") { 2403 if($('.auto-save', '#admin-aside').length > 0 && $('input:hidden[name="autoSave"]', '#newsWriteForm').val() != "") $('.auto-save', '#admin-aside').show(); 2404 TxRx("/news/articleAutoSave.ajax.php"); 2405 } 2406 else if(autoCallMode == "desk") TxRx("/news/articleAutoDesk.ajax.php"); 2407 else stop(); 2408 } 2409 2410 function TxRx(url) { 2411 2412 $.ajax({ 2413 type: "post", 2414 dataType: "json", 2415 url:url, 2416 data:$('#newsWriteForm').serialize(), 2417 success: function(data) { 2418 console.log(data[1]); 2419 }, 2420 error: function(error, request) { 2421 console.log("ìëì½ìë¬ - code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); 2422 stop(); 2423 } 2424 }).always(function() { 2425 if($('.auto-save', '#admin-aside').length > 0) $('.auto-save', '#admin-aside').fadeOut(1500); 2426 }); 2427 } 2428 2429 function stop() { 2430 clearInterval(_autoCallWatch); 2431 console.log(autoCallMode + 'ì¤í±'); 2432 } 2433} 2434 2435/* ****************************************** */ 2436/* 기존 common.js */ 2437/* ****************************************** */ 2438 2439/*--------------------------------------------------------------------------------------------- 2440 JAVASCRIPT CODE 2441 --------------------------------------------------------------------------------------------- 2442 function name | description | use process 2443 --------------------------------------------------------------------------------------------- 2444 setCookie(ì¿ í¤ëª , ê°, ì í¨ê¸°ê°(ì¼)) | | ì¿ í¤ìì± 2445 getCookie(ì¿ í¤ëª ) | | ì¿ í¤ê°ì ¸ì¤ê¸° 2446 ---------------------------------------------------------------------------------------------*/ 2447 2448// ì¿ í¤ ìì± 2449function setCookie(cName, cValue, cDay, cDomain){ 2450 var expire = new Date(); 2451 expire.setDate(expire.getDate() + cDay); 2452 cookies = cName + '=' + escape(cValue) + '; path=/ '; // íê¸ ê¹¨ì§ì ë§ê¸°ìí´ escape(cValue)를 í©ëë¤. 2453 if(typeof cDay != 'undefined') cookies += ';expires=' + expire.toGMTString() + ';'; 2454 document.cookie = cookies; 2455 if (cDomain) { 2456 document.cookie += "domain=" + cDomain + ";"; 2457 } 2458} 2459 2460// ì¿ í¤ ê°ì ¸ì¤ê¸° 2461function getCookie(cName) { 2462 cName = cName + '='; 2463 var cookieData = document.cookie; 2464 var start = cookieData.indexOf(cName); 2465 var cValue = ''; 2466 if(start != -1){ 2467 start += cName.length; 2468 var end = cookieData.indexOf(';', start); 2469 if(end == -1)end = cookieData.length; 2470 cValue = cookieData.substring(start, end); 2471 } 2472 return unescape(cValue); 2473} 2474 2475// ì¿ í¤ ì§ì 2476function delCookie(cName) { 2477 var today = new Date(); 2478 2479 today.setTime(today.getTime() - 1); 2480 var value = getCookie(cName); 2481 if(value != "") 2482 document.cookie = cName + "=" + value + "; path=/; expires=" + today.toGMTString(); 2483} 2484 2485 2486/*--------------------------------------------------------------------------------------------- 2487 JAVASCRIPT CODE 2488 --------------------------------------------------------------------------------------------- 2489 function name | description | use process 2490 --------------------------------------------------------------------------------------------- 2491 checkMsgLength() | ì ë ¥ë 문ìì´ ê¸¸ì´ ê²ì¬ | ê¸°ì¬ ëê¸ 2492 calculateMsgLength() | 문ìì´ ê¸¸ì´ ë°í | ê¸°ì¬ ëê¸ 2493 assertMsgLength() | 문ìì´ ê¸¸ì´ë§í¼ ìë¼ ë³í | ê¸°ì¬ ëê¸ 2494 ---------------------------------------------------------------------------------------------*/ 2495 2496// 문ìì´ê¸¸ì´ ê²ì¬ 2497function checkMsgLength(frm, id, lenStr) { 2498 var length = calculateMsgLength(document.getElementById(frm).value); 2499 document.getElementById(id).innerHTML = length; 2500 if (length > lenStr) { 2501 alert("ìµë "+lenStr+" ë°ì´í¸ê¹ì§ ë¨ê¸°ì¤ ì ììµëë¤.\r\nì´ê³¼ë " + (length - lenStr) + "ë°ì´í¸ë ìëì¼ë¡ ìì ë©ëë¤."); 2502 document.getElementById(frm).value = assertMsgLength(document.getElementById(frm).value, lenStr, id); 2503 } 2504} 2505 2506//문ìì´ê¸¸ì´ ë°í 2507function calculateMsgLength(message) { 2508 var nbytes = 0; 2509 2510 for (i=0; i<message.length; i++) { 2511 var ch = message.charAt(i); 2512 2513 if (escape(ch).length > 4) { 2514 nbytes += 2; 2515 } else if (ch != "\r") { 2516 nbytes++; 2517 } 2518 } 2519 2520 return nbytes; 2521} 2522 2523//문ìì´ ê¸¸ì´ë§í¼ ìë¼ ë³í 2524function assertMsgLength(message, maximum, id) { 2525 var inc = 0; 2526 var nbytes = 0; 2527 var msg = ""; 2528 var msglen = message.length; 2529 2530 for (i=0; i<msglen; i++) { 2531 var ch = message.charAt(i); 2532 2533 if (escape(ch).length > 4) { 2534 inc = 2; 2535 } else if (ch != "\r") { 2536 inc = 1; 2537 } 2538 2539 if ((nbytes + inc) > maximum) { 2540 break; 2541 } 2542 2543 nbytes += inc; 2544 msg += ch; 2545 } 2546 2547 document.getElementById(id).innerHTML = nbytes; 2548 return msg; 2549} 2550
2551/*--------------------------------------------------------------------------------------------- 2552 JAVASCRIPT CODE 2553 --------------------------------------------------------------------------------------------- 2554 function name | description | use process 2555 --------------------------------------------------------------------------------------------- 2556 articleHeader() | 기ì¬ë·° í¤ë ë¤ë¹ | 기ì¬ë·° í¤ë ë¤ë¹ 2557 ---------------------------------------------------------------------------------------------*/ 2558 2559var articleHeader = { 2560 2561 // í¤ë ë¤ë¹ê²ì´ì ìì± 2562 setScroll:function(){ 2563 jQuery(window).scroll(function() { 2564 if (jQuery(this).scrollTop() > 300) { 2565 jQuery('#sticky-header').addClass('scroll'); 2566 } else { 2567 jQuery('#sticky-header').removeClass('scroll'); 2568 } 2569 2570 }); 2571 }, 2572 2573 2574 // 기ì¬ì´ë 2575 move:function(mod, order_type, order_value, section_code, sub_section_code, serial_code){ 2576 jQuery.post( "ajaxGetForwardIdxno.php", { mod: mod, order_type:order_type, order_value: order_value, section_code: section_code, sub_section_code: sub_section_code, serial_code: serial_code }, function( f_idxno ) { 2577 2578 if(f_idxno){ 2579 location.href = '/news/articleView.html?idxno='+f_idxno 2580 }else{ 2581 alert('기ì¬ê° ì¡´ì¬íì§ ììµëë¤'); 2582 } 2583 2584 }); 2585 } 2586 2587} 2588 2589 2590/*--------------------------------------------------------------------------------------------- 2591 JAVASCRIPT CODE 2592 --------------------------------------------------------------------------------------------- 2593 function name | description | use process 2594 --------------------------------------------------------------------------------------------- 2595 bbsPrint(idxno) | ê²ì물 ì¸ìì°½ ì¤í | ê²ì물 ì¸ìì°½ ì¤í 2596 articlePrint(idxno) | ì¸ìì°½ ì¤í | ì¸ìì°½ ì¤í 2597 articleMail(idxno) | ë©ì¼ë³´ë´ê¸°ì°½ ì¤í | ë©ì¼ë³´ë´ê¸°ì°½ ì¤í 2598 articleErr(idxno) | ì¤ë¥ì ê³ ì°½ ì¤í | ì¤ë¥ì ê³ ì°½ ì¤í 2599 articleSingo(idxno) | ëê¸ì ê³ ì°½ ì¤í | ëê¸ì ê³ ì°½ ì¤í 2600 fn_guid() | (ëë¤)ê³ ì ìì´ë ìì± | (ëë¤)ê³ ì ìì´ë ìì± 2601 ---------------------------------------------------------------------------------------------*/ 2602 2603//ì¸ìì°½ ì¤í 2604function bbsPrint( idxno, ps ) { 2605 var ps_str = ""; 2606 if(ps != "") ps_str = "&ps="+ps; 2607 window.open('/bbs/bbsPrint.html?idxno='+idxno+ps_str, 'bbsPrint', 'width=660,height=500,scrollbars=yes'); 2608} 2609 2610// ì¸ìì°½ ì¤í 2611function articlePrint( idxno ) { 2612 window.open('/news/articlePrint.html?idxno='+idxno, 'articlePrint', 'width=660,height=500,scrollbars=yes'); 2613} 2614 2615// ë©ì¼ë³´ë´ê¸°ì°½ ì¤í 2616function articleMail( idxno ) { 2617 window.open('/news/articleMail.html?idxno='+idxno, 'articleMail', 'width=660,height=500,scrollbars=yes'); 2618} 2619 2620// ì¤ë¥ì ê³ ì°½ ì¤í 2621function articleErr( idxno ) { 2622 window.open('/news/articleErr.html?idxno='+idxno, 'articleErr', 'width=660,height=500,scrollbars=yes'); 2623} 2624 2625// ëê¸ì ê³ ì°½ ì¤í 2626function articleSingo( idxno ) { 2627 window.open('/news/articleSingo.html?idxno='+idxno, 'articleSingo', 'width=660,height=500,scrollbars=yes'); 2628} 2629 2630//ê³ ì ê°ìì± (기ì¬ë±ë¡ ê´ë ¨ê¸°ì¬ ëì¸ë ì¬ì©) 2631function fn_guid() { 2632 function s4() { 2633 return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); 2634 } 2635 return s4() + s4() + s4() + s4() + s4() + s4() + s4() + s4(); 2636} 2637 2638/* ****************************************** */ 2639/* /script/app.js (íì´ë°ì´ì ì¤ííì¼ */ 2640/* ****************************************** */ 2641 2642$(function(){ 2643 $(document).foundation(); 2644});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.