PageSourceSearch

https://gojin.com/_nuxt/CxSUX2DR.js

js gojin.com collected 2026-10-06 03:22:58 UTC 10,035 bytes, 1 lines download raw bytes

1import{R as L,d as A,r,w as G,c as o,a as n,e as l,j as d,h as m,D as s,W as p,E as v,f as U,G as B,t as x,C as F}from"./CTAYT8W8.js";import{S as I}from"./AORGcRXT.js";import{D}from"./Cm30m9Ds.js";import{u as N}from"./Dy34pbDW.js";import"./CqkleIqs.js";import"./CElwm-g9.js";import"./q317vMsK.js";import"./B9ygI19o.js";const P={class:"admin--popup-form"},W={class:"admin--form-group"},O={class:"admin--radio-group"},j={class:"admin--radio-label"},H={class:"admin--radio-label"},Q={class:"admin--form-group"},Z={class:"admin--form-group"},J={class:"admin--date-range"},K={class:"admin--form-group"},X={class:"admin--size-group"},Y={class:"admin--size-item"},$={class:"admin--size-item"},h={class:"admin--form-group"},ee={class:"admin--size-group"},le={class:"admin--size-item"},ae={class:"admin--size-item"},te={class:"admin--form-group"},se={class:"admin--radio-group"},oe={class:"admin--radio-label"},ne={class:"admin--radio-label"},ie={class:"admin--radio-label"},de={key:0,class:"admin--form-group"},ue={key:1,class:"admin--form-group"},re={key:0,class:"admin--image-preview"},me=["src"],pe={key:2,class:"admin--form-group"},ve={key:3,class:"admin--form-group"},ge={class:"admin--radio-group"},be={class:"admin--radio-label"},fe={class:"admin--radio-label"},ye={key:4,class:"admin--form-group"},ke={class:"admin--checkbox-label"},_e={key:1,class:"admin--form-hint",style:{"margin-top":"6px","font-size":"12px",color:"#888"}},Ve={class:"admin--form-actions"},ce=["disabled"],Ue={key:5,class:"admin--alert admin--alert-success"},xe={key:6,class:"admin--alert admin--alert-error"},Le={__name:"create",setup(qe){const q=L(),{post:C,upload:M}=N(),z=A().public.company==="w",g=r(!1),y=r(""),i=r(""),k=r(null),b=r(null),f=r(!1),a=r({type:"html",title:"",start_date:"",end_date:"",width:800,height:600,position_top:100,position_left:100,cookie_setting:"none",content:"",image_url:"",link_url:"",link_target:"_blank",gtag_code:""});G(f,u=>{u||(a.value.gtag_code="")});const E=u=>{const e=u.target.files[0];if(!e)return;if(!e.type.startsWith("image/")){alert("이미지 파일만 업로드 가능합니다.");return}b.value=e;const t=new FileReader;t.onload=_=>{k.value=_.target.result},t.readAsDataURL(e)},R=()=>{k.value=null,b.value=null,a.value.image_url=""},S=async()=>{if(y.value="",i.value="",!a.value.title){i.value="제목을 입력하세요.";return}if(!a.value.start_date||!a.value.end_date){i.value="시작일과 종료일을 선택하세요.";return}if(a.value.type==="html"&&!a.value.content){i.value="출력내용을 입력하세요.";return}if(a.value.type==="image"&&!b.value&&!a.value.image_url){i.value="이미지를 첨부하세요.";return}g.value=!0;try{let u=a.value.image_url;if(a.value.type==="image"&&b.value){const w=new FormData;w.append("file",b.value);const{data:V,error:c}=await M("/upload/image",w);if(console.log("[Popup Create] 이미지 업로드 응답:",{uploadData:V,uploadError:c}),c||!V?.success){i.value=c?.message||"이미지 업로드에 실패했습니다.",g.value=!1;return}u=V.data?.url||V.data}const e={...a.value,image_url:u},{data:t,error:_}=await C("/basic/popup",e);_||!t?.success?i.value=_?.message||t?.message||"등록에 실패했습니다.":(y.value=t.message||"팝업이 등록되었습니다.",setTimeout(()=>{q.push("/admin/basic/popup")},1e3))}catch(u){i.value="서버 오류가 발생했습니다.",console.error("Save error:",u)}finally{g.value=!1}},T=()=>{q.push("/admin/basic/popup")};return(u,e)=>(n(),o("div",P,[l("form",{onSubmit:F(S,["prevent"]),class:"admin--form"},[l("div",W,[e[20]||(e[20]=l("label",{class:"admin--form-label"},[m("형태 "),l("span",{class:"admin--required"},"*")],-1)),l("div",O,[l("label",j,[s(l("input",{"onUpdate:modelValue":e[0]||(e[0]=t=>a.value.type=t),type:"radio",value:"html",name:"type"},null,512),[[p,a.value.type]]),e[18]||(e[18]=l("span",null,"HTML",-1))]),l("label",H,[s(l("input",{"onUpdate:modelValue":e[1]||(e[1]=t=>a.value.type=t),type:"radio",value:"image",name:"type"},null,512),[[p,a.value.type]]),e[19]||(e[19]=l("span",null,"단일페이지",-1))])])]),l("div",Q,[e[21]||(e[21]=l("label",{class:"admin--form-label"},[m("제목 "),l("span",{class:"admin--required"},"*")],-1)),s(l("input",{"onUpdate:modelValue":e[2]||(e[2]=t=>a.value.title=t),type:"text",class:"admin--form-input",placeholder:"팝업 제목을 입력하세요",required:""},null,512),[[v,a.value.title]])]),l("div",Z,[e[23]||(e[23]=l("label",{class:"admin--form-label"},[m("시작일/종료일 "),l("span",{class:"admin--required"},"*")],-1)),l("div",J,[U(D,{modelValue:a.value.start_date,"onUpdate:modelValue":e[3]||(e[3]=t=>a.value.start_date=t),placeholder:"시작일 선택","max-date":a.value.end_date,required:""},null,8,["modelValue","max-date"]),e[22]||(e[22]=l("span",{class:"admin--date-separator"},"~",-1)),U(D,{modelValue:a.value.end_date,"onUpdate:modelValue":e[4]||(e[4]=t=>a.value.end_date=t),placeholder:"종료일 선택","min-date":a.value.start_date,required:""},null,8,["modelValue","min-date"])])]),l("div",K,[e[28]||(e[28]=l("label",{class:"admin--form-label"},[m("팝업창 사이즈 "),l("span",{class:"admin--required"},"*")],-1)),l("div",X,[l("div",Y,[e[24]||(e[24]=l("label",null,"가로",-1)),s(l("input",{"onUpdate:modelValue":e[5]||(e[5]=t=>a.value.width=t),type:"number",class:"admin--form-input",placeholder:"800",min:"100",required:""},null,512),[[v,a.value.width,void 0,{number:!0}]]),e[25]||(e[25]=l("span",null,"px",-1))]),l("div",$,[e[26]||(e[26]=l("label",null,"세로",-1)),s(l("input",{"onUpdate:modelValue":e[6]||(e[6]=t=>a.value.height=t),type:"number",class:"admin--form-input",placeholder:"600",min:"100",required:""},null,512),[[v,a.value.height,void 0,{number:!0}
1]]),e[27]||(e[27]=l("span",null,"px",-1))])])]),l("div",h,[e[33]||(e[33]=l("label",{class:"admin--form-label"},[m("팝업창 위치 "),l("span",{class:"admin--required"},"*")],-1)),l("div",ee,[l("div",le,[e[29]||(e[29]=l("label",null,"TOP",-1)),s(l("input",{"onUpdate:modelValue":e[7]||(e[7]=t=>a.value.position_top=t),type:"number",class:"admin--form-input",placeholder:"100",min:"0",required:""},null,512),[[v,a.value.position_top,void 0,{number:!0}]]),e[30]||(e[30]=l("span",null,"px",-1))]),l("div",ae,[e[31]||(e[31]=l("label",null,"LEFT",-1)),s(l("input",{"onUpdate:modelValue":e[8]||(e[8]=t=>a.value.position_left=t),type:"number",class:"admin--form-input",placeholder:"100",min:"0",required:""},null,512),[[v,a.value.position_left,void 0,{number:!0}]]),e[32]||(e[32]=l("span",null,"px",-1))])])]),l("div",te,[e[37]||(e[37]=l("label",{class:"admin--form-label"},"쿠키설정",-1)),l("div",se,[l("label",oe,[s(l("input",{"onUpdate:modelValue":e[9]||(e[9]=t=>a.value.cookie_setting=t),type:"radio",value:"today",name:"cookie_setting"},null,512),[[p,a.value.cookie_setting]]),e[34]||(e[34]=l("span",null,"오늘 하루 창 띄우지 않음",-1))]),l("label",ne,[s(l("input",{"onUpdate:modelValue":e[10]||(e[10]=t=>a.value.cookie_setting=t),type:"radio",value:"forever",name:"cookie_setting"},null,512),[[p,a.value.cookie_setting]]),e[35]||(e[35]=l("span",null,"다시는 창을 띄우지 않음",-1))]),l("label",ie,[s(l("input",{"onUpdate:modelValue":e[11]||(e[11]=t=>a.value.cookie_setting=t),type:"radio",value:"none",name:"cookie_setting"},null,512),[[p,a.value.cookie_setting]]),e[36]||(e[36]=l("span",null,"사용 안 함",-1))])])]),a.value.type==="html"?(n(),o("div",de,[e[38]||(e[38]=l("label",{class:"admin--form-label"},[m("출력내용 "),l("span",{class:"admin--required"},"*")],-1)),U(I,{modelValue:a.value.content,"onUpdate:modelValue":e[12]||(e[12]=t=>a.value.content=t),height:"400px",placeholder:"팝업 내용을 입력하세요"},null,8,["modelValue"])])):d("",!0),a.value.type==="image"?(n(),o("div",ue,[e[39]||(e[39]=l("label",{class:"admin--form-label"},[m("이미지 첨부 "),l("span",{class:"admin--required"},"*")],-1)),l("input",{type:"file",accept:"image/*",class:"admin--form-file",onChange:E},null,32),k.value?(n(),o("div",re,[l("img",{src:k.value,alt:"미리보기"},null,8,me),l("button",{type:"button",class:"admin--btn-remove-image",onClick:R}," 삭제 ")])):d("",!0)])):d("",!0),a.value.type==="image"?(n(),o("div",pe,[e[40]||(e[40]=l("label",{class:"admin--form-label"},"링크 URL",-1)),s(l("input",{"onUpdate:modelValue":e[13]||(e[13]=t=>a.value.link_url=t),type:"url",class:"admin--form-input",placeholder:"https://example.com"},null,512),[[v,a.value.link_url]])])):d("",!0),a.value.type==="image"?(n(),o("div",ve,[e[43]||(e[43]=l("label",{class:"admin--form-label"},"링크 열기 방식",-1)),l("div",ge,[l("label",be,[s(l("input",{"onUpdate:modelValue":e[14]||(e[14]=t=>a.value.link_target=t),type:"radio",value:"_blank",name:"link_target"},null,512),[[p,a.value.link_target]]),e[41]||(e[41]=l("span",null,"새창",-1))]),l("label",fe,[s(l("input",{"onUpdate:modelValue":e[15]||(e[15]=t=>a.value.link_target=t),type:"radio",value:"_self",name:"link_target"},null,512),[[p,a.value.link_target]]),e[42]||(e[42]=l("span",null,"현재창",-1))])])])):d("",!0),z?(n(),o("div",ye,[e[45]||(e[45]=l("label",{class:"admin--form-label"},"Google Ads 전환 추적",-1)),l("label",ke,[s(l("input",{"onUpdate:modelValue":e[16]||(e[16]=t=>f.value=t),type:"checkbox"},null,512),[[B,f.value]]),e[44]||(e[44]=l("span",null,"전환 추적 코드 사용",-1))]),f.value?s((n(),o("input",{key:0,"onUpdate:modelValue":e[17]||(e[17]=t=>a.value.gtag_code=t),type:"text",class:"admin--form-input",placeholder:"예: AW-11559048771/spBZCL6k0qQcEMOs5Icr",style:{"margin-top":"8px"}},null,512)),[[v,a.value.gtag_code]]):d("",!0),f.value?(n(),o("p",_e," ※ 팝업 내 링크 클릭 시 입력한 전환 코드로 Google Ads 이벤트가 발송됩니다. ")):d("",!0)])):d("",!0),l("div",Ve,[l("button",{type:"submit",class:"admin--btn admin--btn-primary",disabled:g.value},x(g.value?"저장 중...":"확인"),9,ce),l("button",{type:"button",class:"admin--btn admin--btn-secondary",onClick:T}," 목록 ")]),y.value?(n(),o("div",Ue,x(y.value),1)):d("",!0),i.value?(n(),o("div",xe,x(i.value),1)):d("",!0)],32)]))}};export{Le as default};

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.