123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623 |
- /**
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 진료 - 이미지편집 ( SSMRF03900.xrw - JScript )
-
- * Version :
- - Ver.1.00.01
-
- * 개발자: 이경희
-
- * 최초작성일:
- - 2007/07/12
-
- * 수정이력:
- - 2008/03/18
-
- * 기타:
-
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- /* viewmode
- 0 : 원본사이즈
- 1 : 스크린에 꽉차게
- 2 : 스크린 세로사이즈에 꽉차게
- 3 : 스크린 가로사이즈에 꽉차게
- 4 : 스크린 가로/사로 사이즈에 맞춤
- */
- var gNewImgeNo = 100000;
- var gIntervalId;
- var INTERVAL_TIME = 150;
- var gPageInfo;
- var gOnlyOneImge = false;
- var isLoadImage = false;
- /**
- * @ver : 2008-03-18
- * @desc : 이미지 편집기 화면 생성 시 실행되어 변수들을 초기화함.(페이지가 팝업인지 아닌지 검사하여 그에 따라 변수 설정이 다름.)
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fFormReady()
- {
- document.controls("obj_thumnail").attribute("visibility") = "hidden";
- obj_imge.SetDrawMode(true);
-
- // grup_bottom.attribute("height") = 56;
- // grup_bottom.refresh();
- grd_imgelist.rowheight(1) = 100;
-
- // for (var i = 0; i < grd_imgelist.cols; i++)
- // {
- // grd_imgelist.colHidden(i) = true;
- // }
- if (gPageInfo == null)
- {
- gPageInfo = new PAGEINFO();
- }
-
- if (isPopup())
- {
- if (model.getValue("/root/temp/modalif/openmode") == "")
- {
- gPageInfo.fstLevlItemCd = opener.window.javascript.getParameter("fstlevlitemcd");
- gPageInfo.formCd = opener.window.javascript.getParameter("formcd");
- gPageInfo.formDegnSeq = opener.window.javascript.getParameter("formdegnseq");
- }
- else
- {
- if (model.getValue("/root/temp/modalif/imgecd") != "")
- {
- var imgecd = model.getValue("/root/temp/modalif/imgecd");
-
- if (fRefImgeDateByImgeCd(imgecd))
- {
- fAddImgeByData(imgecd, "", model.getValue("/root/main/imgview2/image"));
- }
- }
- }
- }
-
- //fShowPltte();
- }
- /**
- * @ver : 2008-03-18
- * @desc : 이미지 코드로 DB에서 이미지 데이터를 얻어온다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fRefImgeDateByImgeCd(imgecd)
- {
- model.removenode("/root/main/imgview");
- model.makeValue("/root/send/imgecode", imgecd);
- return submit("TRMMR03603");
- }
- /**
- * @ver : 2008-03-18
- * @desc : 부모윈도우의 lookup버튼 속성을 보이게 한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fInitFormByParent()
- {
- btn_lookup.visible = true;
- }
- /**
- * @ver : 2008-03-18
- * @desc : 화면 상단의 이미지 리스트에서 이미지를 더블클릭했을때 실행되는 이벤트 함수이다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fDbClick()
- {
- var imgeno = grd_imgelist.colAttribute(grd_imgelist.col, "ref"); // 이미지 번호를 얻어온다.
- imgeno = imgeno.replace("imge", "");
-
- if(imgeno == "")
- {
- return;
- }
-
- var node = instance1.selectSingleNode(gPageInfo.recItemRef + "[degnitemno = '"+imgeno+"']");
-
- imgeInfo = new IMGE_INFO();
- imgeInfo.imgeno = node.getXPathString("degnitemno");
- imgeInfo.imgecd = node.getXPathString("degnitemcd");
- imgeInfo.width = node.getXPathString("width");
- imgeInfo.height = node.getXPathString("height");
- imgeInfo.recbase64 = node.getXPathString("recimge");
- imgeInfo.srcbase64 = node.getXPathString("srcimge");
- // imgeInfo.degnitemlevlcd = node.getXPathString("degnitemlevlcd");
- // imgeInfo.degnitemlevlno = node.getXPathString("degnitemlevlno");
-
- // caption 데이터 무조건 CDATA 처리
- imgeInfo.shape = fSetCdata(node.getXPathString("reccnts"));
-
- /*
- if(isSearchString(node.getXPathString("reccnts"), "&") == true)
- {
- // <shape caption 데이터 & 처리
- imgeInfo.shape = fSetCdata(node.getXPathString("reccnts"));
- }
- else
- {
- imgeInfo.shape = node.getXPathString("reccnts");
- }
- */
-
- imgeInfo.imgenm = node.getXPathString("degnitemnm");
- imgeInfo.colno = node.getXPathString("colno");
-
- gImgeInfo = imgeInfo;
-
- fClearImge();
- //fSetImge();
- fSetImge(gImgeInfo);
-
- for(var col = 0; col < grd_imgelist.cols; col++)
- {
- grd_imgelist.fixedcellischeck(0, col) = false;
- }
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = true;
-
- // gIntervalId = window.setInterval("fSetImge();", INTERVAL_TIME);
- }
- /**
- * @ver : 2008-03-18
- * @desc : 이미지 정보를 초기화한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function IMGE_INFO()
- {
- this.imgeno = "";
- this.imgecd = "";
- this.width = 0;
- this.height = 0;
- this.srcbase64 = "";
- this.recbase64 = "";
-
- this.shape = "";
- this.imgenm = "";
- this.filePath = "";
- this.degnitemlevlno = "";
- this.degnitemlevlcd = "";
- this.colno = "";
- this.rowno = "";
- }
- /**
- * @ver : 2008-03-18
- * @desc : 현재 보이는 이미지를 상단의 이미지 리스트에 추가한다.
- * @
- * @by : 이경희
- * @param: 1) imgeInfo - 이미지데이터(이미지번호, 코드, 가로/세로 사이즈, Base64코드, 이미지이름, 디자인아이템번호, 디자인아이템코드
- * @return:
- * @---------------------------------------------------
- */
- function fAddImgeList(imgeInfo)
- {
- var rowcnt = parseInt(getNodesetCnt(model, gPageInfo.recItemRef)) + 1;
- var path = gPageInfo.recItemRef + "["+rowcnt+"]/#colnm#";
- model.makeValue(path.replace("#colnm#", "width"), imgeInfo.width);
- model.makeValue(path.replace("#colnm#", "height"), imgeInfo.height);
- model.makeValue(path.replace("#colnm#", "instcd"), "");
- model.makeValue(path.replace("#colnm#", "rechistseq"), "");
- model.makeValue(path.replace("#colnm#", "recitemno"), "");
- model.makeValue(path.replace("#colnm#", "fstlevlitemcd"), gPageInfo.fstLevlItemCd);
- model.makeValue(path.replace("#colnm#", "formcd"), gPageInfo.formCd);
- model.makeValue(path.replace("#colnm#", "formdegnseq"), gPageInfo.formDegnSeq);
- model.makeValue(path.replace("#colnm#", "degnitemno"), imgeInfo.imgeno);
- model.makeValue(path.replace("#colnm#", "degnitemcd"), imgeInfo.imgecd);
- model.makeValue(path.replace("#colnm#", "degnitemkind"), "IMG");
- model.makeValue(path.replace("#colnm#", "degnitemlevlno"), imgeInfo.degnitemlevlno);
- model.makeValue(path.replace("#colnm#", "degnitemnm"), imgeInfo.imgenm);
- model.makeValue(path.replace("#colnm#", "degnitemlevlcd"), imgeInfo.degnitemlevlcd);
- model.makeValue(path.replace("#colnm#", "rectermcd"), "");
- model.makeValue(path.replace("#colnm#", "rectermnm"), "");
- model.makeValue(path.replace("#colnm#", "recitemcd"), "");
- model.makeNode(path.replace("#colnm#", "reccnts"));
- model.setValue(path.replace("#colnm#", "reccnts"), imgeInfo.shape, true);
-
- if(imgeInfo.imgenm == "LOCALIMG")
- model.makeValue(path.replace("#colnm#", "unitnm"), obj_imge.GetImageSizeEx(false));
- else
- model.makeValue(path.replace("#colnm#", "unitnm"), "");
-
- model.makeNode(path.replace("#colnm#", "recimge"));
- model.setValue(path.replace("#colnm#", "recimge"), imgeInfo.recbase64, true);
-
- model.makeNode(path.replace("#colnm#", "srcimge"));
- model.setValue(path.replace("#colnm#", "srcimge"), imgeInfo.srcbase64, true);
- model.makeValue(path.replace("#colnm#", "rowno"), imgeInfo.rowno);
- model.makeValue(path.replace("#colnm#", "colno"), imgeInfo.colno);
- fAddthumnail(imgeInfo.imgeno, imgeInfo.imgenm, imgeInfo.srcbase64);
- model.refresh();
- grd_imgelist.rebuild();
- }
- /**
- * @ver : 2008-03-18
- * @desc : fAddImgeList 함수내에서 실행되며 실질적으로 이미지를 상단의 이미지 리스트에 추가하는 기능을 수행한다.
- * @
- * @by : 이경희
- * @param: 1) pImgeno - 이미지번호
- 2) pImgenm - 이미지이름
- 3) pBase64 - 인코딩된 Base64 이미지 데이터
- * @return:
- * @---------------------------------------------------
- */
- function fAddthumnail(pImgeno, pImgenm, pBase64)
- {
- if (gOnlyOneImge) return;
-
- obj_thumnail.LoadImageBase64(pBase64); // Base64로 인코딩된 이미지를 로드한다.
- var colnm = "imge" + pImgeno;
- grd_imgelist.addColumn("ref:" + colnm + ";");
- grd_imgelist.col = grd_imgelist.colref(colnm);
- grd_imgelist.valueMatrix(0, grd_imgelist.col) = pImgenm;
- grd_imgelist.colstyle(grd_imgelist.col, "data", "background-position") = "center";
- grd_imgelist.colstyle(grd_imgelist.col, "data", "border-style") = "none";
- // 100x100 썸네일 이미지 사이즈
- // 썸네일 이미지와 실 크기의 이미지를 모두 저장
- var Thumbase64 = obj_thumnail.GetThumbnailBase64(100, 100);
- model.setValue("/root/temp/thumblist/" + colnm, Thumbase64, true);
- setImageRefInstance("/root/temp/thumblist/" + colnm);
- var base64 = obj_thumnail.SaveImageBase64();
- model.makeValue("/root/temp/imgelist/" + colnm, base64, true);
-
- grd_imgelist.fixedcellcheckbox(0, grd_imgelist.col) = true;
- grd_imgelist.rebuild();
- }
- /**
- * @ver : 2008-03-18
- * @desc : 상단 이미지리스트에서 이미지를 삭제한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fDelImgeList()
- {
- // 그리드에서 컬럼이 삭제되면 체크박스가 체크되었는지 확인하는 분기에서 제대로
- // 확인이 안되므로, 컬럼을 뒤쪽에서 삭제하도록 한다.
- for(var i = grd_imgelist.cols; i >= 0 ; i--)
- {
- if(grd_imgelist.fixedcellischeck(0, i + 1))
- {
- // 이미지 인스턴스 삭제
- var imgeno = grd_imgelist.colAttribute(i + 1, "ref");
- imgeno = imgeno.replace("imge", "");
-
- if (imgeno == model.getValue("/root/init/selectnode/imgeno"))
- {
- obj_imge.LoadImage("");
-
- model.makeValue("/root/init/selectnode/imgeno", "");
- model.makeValue("/root/init/selectnode/imgenm", "");
- ipt_filenm.refresh();
- }
- model.removeNodeset(gPageInfo.recItemRef + "[degnitemno = '"+imgeno+"']");
-
- grd_imgelist.deleteColumn(i + 1, false);
- }
- }
-
- grd_imgelist.rebuild();
- }
- function fDelImgeList_Old()
- {
- for(var i = 0; i < grd_imgelist.cols; i++)
- {
- if(grd_imgelist.fixedcellischeck(0, i + 1))
- {
- var imgeno = grd_imgelist.colAttribute(i + 1, "ref");
- imgeno = imgeno.replace("imge", "");
-
- if (imgeno == model.getValue("/root/init/selectnode/imgeno"))
- {
- obj_imge.LoadImage("");
-
- model.makeValue("/root/init/selectnode/imgeno", "");
- model.makeValue("/root/init/selectnode/imgenm", "");
- ipt_filenm.refresh();
- }
-
- model.removeNodeset(gPageInfo.recItemRef + "[degnitemno = '"+imgeno+"']");
-
- grd_imgelist.deleteColumn(i + 1);
- }
- }
- }
- /**
- * @ver : 2008-03-18
- * @desc : 상단 이미지리스트에서 이미지를 삭제한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- var gImgeInfo = null;
- var gOnImgeInfo = new IMGE_INFO();
- function fChgViewMode()
- {
- obj_imge.SetViewMode(parseInt(model.getValue("/root/init/selectnode/viewmode")));
-
- if (gImgeInfo != null)
- {
- if (obj_imge.IsLoadedImage())
- gImgeInfo.shape = obj_imge.GetShapeString(); // 라이브이미지에 그려진 도형정보를 반환한다.
- //fClearImge();
- //fSetImge();
- }
-
- // if (gImgeInfo != null)
- // {
- // gImgeInfo.shape = obj_imge.GetShapeString();
- // fClearImge();
- // fSetImge();
- // }
- }
- /**
- * @ver : 2008-03-18
- * @desc : 라이브이미지 ActiveX 컨트롤에 로드된 이미지를 Clear한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fClearImge()
- {
- if (model.getValue("/root/init/selectnode/imgeno") != "")
- {
- if(gImgeInfo != null)
- {
- var arrSz = fGetImgeSizeEx();
- gImgeInfo.width = arrSz[0];
- gImgeInfo.height = arrSz[1];
-
- if(gImgeInfo.colno == "MAST")
- {
- //if(getSrchStrCnt(obj_imge.GetShapeString(), ">") > 2)
- var tmpShape = removeXvgTag(obj_imge.GetShapeString());
-
- if(tmpShape != "")
- {
- if (gOnlyOneImge)
- {
- model.removeNodeset(gPageInfo.recItemRef);
- gOnImgeInfo.shape = obj_imge.GetShapeString();
- gOnImgeInfo.recbase64 = obj_imge.SaveJpegBase64();
- //gOnImgeInfo.recbase64 = obj_imge.SaveImageBase64();
- fAddImgeList(gOnImgeInfo); // 이미지 리스트에 이미지를 추가한다.
- }
- else
- {
- if (getNodesetCnt(model, gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']") == 0)
- {
- gOnImgeInfo.shape = obj_imge.GetShapeString();
- gOnImgeInfo.recbase64 = obj_imge.SaveJpegBase64();
- //gOnImgeInfo.recbase64 = obj_imge.SaveImageBase64();
- fAddImgeList(gOnImgeInfo);
- }
- else
- {
- model.setValue(gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']/reccnts", obj_imge.GetShapeString());
- model.setValue(gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']/recimge", obj_imge.SaveJpegBase64());
- }
- }
- }
- }
- if(gImgeInfo.colno == "FILE")
- {
- if (gOnlyOneImge)
- {
- model.removeNodeset(gPageInfo.recItemRef);
-
- gOnImgeInfo.shape = obj_imge.GetShapeString();
- //gOnImgeInfo.recbase64 = obj_imge.SaveJpegBase64();
- gOnImgeInfo.recbase64 = obj_imge.SaveImageBase64();
- fAddImgeList(gOnImgeInfo); // 이미지 리스트에 이미지를 추가한다.
- }
- else
- {
- // 최초 작성시
- if (getNodesetCnt(model, gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']") == 0)
- {
- gOnImgeInfo.shape = obj_imge.GetShapeString();
- //gOnImgeInfo.recbase64 = obj_imge.SaveJpegBase64();
- gOnImgeInfo.recbase64 = obj_imge.SaveImageBase64();
- fAddImgeList(gOnImgeInfo);
- }
- else
- {
- // 재 수정시
- model.setValue(gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']/unitnm", obj_imge.GetImageSizeEx(false));
- model.setValue(gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']/reccnts", obj_imge.GetShapeString());
- model.setValue(gPageInfo.recItemRef + "[degnitemno = '"+model.getValue("/root/init/selectnode/imgeno")+"']/recimge", obj_imge.SaveImageBase64());
- }
- }
- }
- }
- }
-
- obj_imge.Clear();
- isLoadImage = false;
- }
- function fLoadBase64str(imgecd, imgenm, base64str)
- {
- imgeInfo = new IMGE_INFO();
- imgeInfo.imgecd = imgecd;
- imgeInfo.imgenm = imgenm;
- imgeInfo.srcbase64 = base64str;
- imgeInfo.colno = "MAST";
-
- obj_imge.LoadImageBase64(base64str);
-
- var arrSz = fGetImgeSize();
-
- imgeInfo.width = arrSz[0];
- imgeInfo.height = arrSz[1];
-
- if(model.getValue("/root/init/selectnode/viewmode") != obj_imge.GetViewMode() )
- {
- obj_imge.SetViewMode(parseInt(model.getValue("/root/init/selectnode/viewmode")));
- model.refresh();
- }
-
- document.controls("obj_imge").attribute("visibility") = "visible";
- gImgeInfo = imgeInfo;
- gOnImgeInfo = imgeInfo;
- }
- /**
- * @ver : 2008-03-18
- * @desc : 라이브이미지 ActiveX 컨트롤에 로드된 이미지를 Clear한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fSetImge(imgeInfo)
- {
- try
- {
- if (imgeInfo == null)
- {
- imgeInfo = gImgeInfo;
- }
-
- model.makeValue("/root/init/selectnode/imgeno", imgeInfo.imgeno);
- model.makeValue("/root/init/selectnode/imgenm", imgeInfo.imgenm, true);
- ipt_filenm.refresh();
-
- // 뷰모드 체크
- var viewMode = obj_imge.GetViewMode();
-
- if(viewMode != model.getValue("/root/init/selectnode/viewmode"))
- {
- obj_imge.SetViewMode(model.getValue("/root/init/selectnode/viewmode"));
- }
-
- // 로컬 이미지인지 DB이미지인지 판단
- var localimgeYN = imgeInfo.colno;
-
- if(localimgeYN == "FILE") // 로컬 이미지
- {
- if(imgeInfo.srcbase64 == "" && imgeInfo.filePath != "")
- {
- obj_imge.LoadImage(imgeInfo.filePath);
- }
- else if(imgeInfo.srcbase64 != "")
- {
- obj_imge.LoadImageBase64(imgeInfo.srcbase64);
- }
- else if(imgeInfo.srcbase64 == "" && imgeInfo.recbase64 != "") // 원본이미지가 저장되지 않고 기록이미지만 저장된 경우
- {
- imgeInfo.srcbase64 = imgeInfo.recbase64;
- obj_imge.LoadImageBase64(imgeInfo.srcbase64);
- }
- else
- return;
-
- var arrSz = fGetImgeSizeEx();
-
- imgeInfo.width = arrSz[0];
- imgeInfo.height = arrSz[1];
-
- imgeInfo.srcbase64 = obj_imge.SaveImageBase64();
-
- if(imgeInfo.shape != "")
- {
- obj_imge.SetShapeString(imgeInfo.shape);
- }
- isLoadImage = true;
- }
- else if(localimgeYN = "MAST") // DB 이미지
- {
- // 이미지를 DB로부터 불러온다.
- if(imgeInfo.srcbase64 != "")
- {
- obj_imge.LoadImageBase64(imgeInfo.srcbase64);
- isLoadImage = true;
- }
- else
- {
- if(fRefImgeDateByImgeCd(imgeInfo.imgecd))
- {
- imgeInfo.srcbase64 = model.getValue("/root/main/imgview/image");
-
- obj_imge.LoadImageBase64(imgeInfo.srcbase64);
-
- isLoadImage = true;
- }
- }
-
- if(imgeInfo.shape != "")
- {
- obj_imge.SetShapeString(imgeInfo.shape);
- }
- }
-
- if ( model.getValue("/root/init/selectnode/viewmode") != obj_imge.GetViewMode() )
- {
- //model.setValue("/root/init/selectnode/viewmode", obj_imge.GetViewMode());
- obj_imge.SetViewMode(parseInt(model.getValue("/root/init/selectnode/viewmode")));
- model.refresh();
- }
-
- document.controls("obj_imge").attribute("visibility") = "visible";
- gImgeInfo = imgeInfo;
- gOnImgeInfo = imgeInfo;
- }
- catch (e)
- {
-
- }
- }
- function fAddImgeByRec()
- {
- var std = gPageInfo.recItemRef + "[#iIdx#]/#colnm#";
- var con = "";
- var cnt = getNodesetCnt(model, gPageInfo.recItemRef);
- if (cnt > 0)
- {
- for (var i = 1; i <= cnt; i++)
- {
- con = std.replace("#iIdx#", i);
- fAddthumnail(model.getValue(con.replace("#colnm#", "degnitemno")),
- model.getValue(con.replace("#colnm#", "degnitemnm")),
- model.getValue(con.replace("#colnm#", "recimge")));
- }
- model.refresh();
- }
- }
- /**
- * @ver : 2008-03-18
- * @desc : 라이브이미지 ActiveX 컨트롤에 이미지를 로드한다.
- * @
- * @by : 이경희
- * @param: 1) imgecd - 이미지코드
- 2) imgenm - 이미지이름
- 3) imgedata - 이미지데이터
- 4) shape - 도형정보
- * @return:
- * @---------------------------------------------------
- */
- function fAddImgeByData(imgecd, imgenm, imgedata, shape)
- {
- var imgeInfo = new IMGE_INFO();
- imgeInfo.imgeno = ++gNewImgeNo;
- imgeInfo.imgecd = imgecd;
- imgeInfo.imgenm = imgenm;
- imgeInfo.srcbase64 = imgedata;
-
- imgeInfo.degnitemlevlcd = gPageInfo.degnItemLevlCd +"."+ imgeInfo.imgecd;
- imgeInfo.degnitemlevlno = parseInt(gPageInfo.degnitemlevlno) + 1;
- imgeInfo.rowno = "NUIMG";
- imgeInfo.colno = "MAST";
-
- if (shape != null)
- {
- imgeInfo.shape = shape;
- }
- fClearImge(); // 화면을 Clear한다.
- fSetImge(imgeInfo); // 이미지를 로드한다.
- }
- /**
- * @ver : 2008-03-18
- * @desc : 라이브이미지 ActiveX 컨트롤에 이미지 파일을 불러들인다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fAddImgeByFile(filepath)
- {
- var bMulti = false;
- if(model.getValue("/root/temp/directstatus") == "direct")
- bMulti = true;
-
- //var selfile = openImageFileDialogEx(4096000, bMulti);
- // BLOB 사이즈가 2M로 설정됨에 따라 업로드 파일사이즈를 제한함.
- //var selfile = openImageFileDialogEx(2048000, bMulti);
-
- //이윤주 수정(20150202) ==> 4M로
- var selfile = openImageFileDialogEx(4194304, bMulti);
-
- if (selfile == "")
- return;
-
- var arrfile = selfile.split("|");
- for(var i = 0; i < arrfile.length; i++)
- {
- var filepath = arrfile[i];
- var pos = filepath.lastIndexOf("\\");
- var filenm = filepath.substring(pos+1, filepath.length);
- pos = filenm.lastIndexOf(".");
- filenm = filenm.substring(0, pos);
-
- imgeInfo = new IMGE_INFO();
- imgeInfo.imgeno = ++gNewImgeNo;
- imgeInfo.imgecd = "Z000000001";
- //imgeInfo.imgenm = filenm;
- imgeInfo.imgenm = "LOCALIMG";
- imgeInfo.srcbase64 = "";
- imgeInfo.recbase64 = "";
- imgeInfo.shape = ""; //filepath;
- imgeInfo.filePath = filepath;
-
- imgeInfo.degnitemlevlcd = gPageInfo.degnItemLevlCd +"."+ imgeInfo.imgecd;
- imgeInfo.degnitemlevlno = parseInt(gPageInfo.degnitemlevlno) + 1;
- imgeInfo.rowno = "NUIMG";
- imgeInfo.colno = "FILE";
-
-
-
- if(bMulti)
- {
- obj_thumnail.LoadImage(filepath);
- imgeInfo.shape = "";
- var viewMode = obj_imge.GetViewMode();
-
- if(viewMode != model.getValue("/root/init/selectnode/viewmode"))
- {
- obj_imge.SetViewMode(model.getValue("/root/init/selectnode/viewmode"));
- }
-
- var livectrl = document.controls("obj_imge");
-
- if(livectrl != null)
- {
- livectrl.attribute("visible") == false;
- }
-
- obj_imge.LoadImage(imgeInfo.filePath);
-
- var arrSz = fGetImgeSizeEx();
-
- imgeInfo.width = arrSz[0];
- imgeInfo.height = arrSz[1];
-
- imgeInfo.srcbase64 = obj_imge.SaveImageBase64();
- //imgeInfo.srcbase64 = obj_thumnail.SaveImageBase64();
- imgeInfo.recbase64 = imgeInfo.srcbase64;
- imgeInfo.shape = obj_imge.GetShapeString();
-
- if(livectrl != null)
- {
- obj_imge.clear();
- livectrl.attribute("visible") == true;
- }
-
- fAddImgeList(imgeInfo);
- }
- else
- {
- fClearImge();
- fSetImge(imgeInfo);
- }
- }
- }
- /**
- * @ver : 2008-03-18
- * @desc : 이미지 사이즈를 반환한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fGetImgeSize()
- {
- var sz = obj_imge.GetImageSize();
- var arrSz = sz.split("|");
- return arrSz;
- }
- /**
- * @ver : 2008-03-18
- * @desc : ActiveX 컨트롤 크기에 맞춰진 이미지 사이즈를 반환한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fGetImgeSizeEx()
- {
- var sz = obj_imge.GetImageSizeEx(false);
- var arrSz = sz.split("|");
- return arrSz;
- }
- /**
- * @ver : 2008-03-18
- * @desc : 색상을 입히기 위해 팔레트를 클릭했을때 발생하는 함수
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fColorClicked(bDetail)
- {
- if(bDetail == null)
- bDetail = false;
-
- var ctrl = document.controls(event.target);
- var color;
- if(bDetail) {
- color = obj_imge.GetRGBColorDlg();
-
- if(color == "") {
- return ;
- }
- }
- else
- color = ctrl.attribute("background-color");
-
- //alert(event.target + " : " + color);
-
- var clickbtn = colorpicker.attribute("mode");//model.getValue("/root/init/selectnode/colorbt");
-
- if(color == "transparent")
- {
- color = "";
- }
-
- if(clickbtn == "btn_bgcolor") // 배경색
- {
- obj_imge.SetShapeStyle("background-color", color);
-
- // 마지막으로 선택한 배경색을 인스턴스에 저장해둠.
- model.makeValue("/root/temp2/lastBackgroundColor", color);
- }
- else if(clickbtn == "btn_fontcolor" || clickbtn == "btn_text") // 텍스트
- {
- obj_imge.SetShapeStyle("color", color);
-
- model.makeValue("/root/temp2/lastFontColor", color);
- }
- else if(clickbtn == "btn_linecolor" || clickbtn == "btn_line" || clickbtn == "btn_freeline" || clickbtn == "btn_rect" || clickbtn == "btn_round" || clickbtn == "btn_point") // 선색
- {
- obj_imge.SetShapeStyle("border-color", color);
- obj_imge.SetShapeStyle("color", color);
-
- model.makeValue("/root/temp2/lastLineColor", color);
- }
- document.controls("C_SEL").attribute("background-color") = color;
- //colorpicker.attribute("visibility") = "hidden"
- }
- /**
- * @ver : 2008-03-18
- * @desc : 저장을 클릭했을 때 실행되는 함수
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fConfirm()
- {
- if(gImgeInfo != null)
- {
- if(gImgeInfo.colno == "FILE")
- {
- var strShape = obj_imge.GetShapeString();
- gImgeInfo.shape = strShape;
- }
- }
-
- obj_imge.SelectDrawType(0, true);
-
- fClearImge();
- fClearFile();
-
- if(gImgeInfo != null)
- {
- if(gImgeInfo.colno == "MAST")
- {
- // DB에서 불러온 이미지므로 원본이미지 Base64코드는 삭제한다.
- gImgeInfo.srcbase64 = "";
- }
- }
-
- // '<', '>', '&' 변환
- //var tempShape = gPageInfo.shape;
-
- //gPageInfo.shape = fConvertSpecialText(tempShape);
-
- parent.window.javascript.fConfirm(gPageInfo.fstLevlItemCd);
- }
- /**
- * @ver : 2008-03-18
- * @desc : 팔레트를 보여주는 함수
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fShowPltte()
- {
- var btnid = window.event.target;
-
- if(btnid == "btn_text" || btnid == "btn_fontcolor")
- {
- cap_colorpicker.text = "글자색";
-
- var color = "#000000";
- var lastFontColor = model.getValue("/root/temp2/lastFontColor");
-
- // 기본 글자색 설정
- if(lastFontColor != "")
- color = lastFontColor;
-
- model.setValue("/root/init/selectnode/fontcolor", color);
- obj_imge.SetShapeStyle("color", color);
-
- if(document.controls("C_SEL") != null)
- document.controls("C_SEL").attribute("background-color") = color;
-
- if(document.controls("combo_fontName") != null)
- document.controls("combo_fontName").disabled = false;
-
- if(document.controls("combo_fontSize") != null)
- document.controls("combo_fontSize").disabled = false;
-
- if(document.controls("img_font-style") != null)
- document.controls("img_font-style").disabled = false;
-
- if(document.controls("img_font-weight") != null)
- {
- document.controls("img_font-weight").disabled = false;
-
- document.controls("img_font-weight").attribute("background-image") = "../../../emr/commonweb/images/icon_13_select.gif";
- document.controls("img_font-weight").attribute("font-weight") = "bold";
- }
- }
- else if(btnid == "btn_linecolor" || btnid == "btn_line" || btnid == "btn_freeline" || btnid == "btn_rect" || btnid == "btn_round" || btnid == "btn_point")
- {
- cap_colorpicker.text = "선색";
-
- var color = "#ff0000";
- var lastLineColor = model.getValue("/root/temp2/lastLineColor");
-
- // 기본 선색 설정
- if(lastLineColor != "")
- color = lastLineColor;
-
- model.setValue("/root/init/selectnode/linecolor", color);
-
- obj_imge.SetShapeStyle("border-color", color);
- obj_imge.SetShapeStyle("color", color);
- document.controls("C_SEL").attribute("background-color") = color;
-
- // 기본 배경색 설정
- if(btnid != "btn_linecolor")
- obj_imge.SetShapeStyle("background-color", "");
-
- if(document.controls("combo_fontName") != null)
- document.controls("combo_fontName").disabled = true;
-
- if(document.controls("combo_fontSize") != null)
- document.controls("combo_fontSize").disabled = true;
-
- if(document.controls("img_font-weight") != null)
- document.controls("img_font-weight").disabled = true;
-
- if(document.controls("img_font-style") != null)
- document.controls("img_font-style").disabled = true;
- }
- else if(btnid == "btn_bgcolor")
- {
- cap_colorpicker.text = "배경색";
-
- var color = "";
- var lastBgColor = model.getValue("/root/temp2/lastBackgroundColor");
-
- // 기본 배경색 설정
- if(lastBgColor != "")
- color = lastBgColor;
-
- obj_imge.SetShapeStyle("background-color", "");
-
- if(color == "")
- document.controls("C_SEL").attribute("background-color") = "#ffffff";
- else
- document.controls("C_SEL").attribute("background-color") = color;
- }
- else if(btnid == "btn_select" || btnid == "btn_del" || btnid == "btn_drawcancel" || btnid == "btn_turnleft" || btnid == "btn_turnright" || btnid == "btn_undo" || btnid == "btn_redo")
- {
- colorpicker.visible = false;
- colorpicker.attribute("mode") = btnid;
- return;
- }
-
- if(colorpicker.attribute("mode") == "" || colorpicker.attribute("mode") != btnid)
- {
- colorpicker.visible = true;
- }
- else if(colorpicker.attribute("mode") == btnid)
- {
- if (colorpicker.visible)
- {
- //colorpicker.visible = false;
- colorpicker.visible = true;
- }
- else
- {
- colorpicker.visible = true;
- }
- }
- colorpicker.attribute("mode") = btnid;
-
- model.refresh();
- }
- /**
- * @ver : 2008-03-18
- * @desc : 여러 이미지를 하나의 이미지로 합쳐 로드한다.
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fMergeImge()
- {
- var cnt = 0;
- for(var col = 0; col < grd_imgelist.cols; col++)
- {
- if(grd_imgelist.fixedcellischeck(0, col + 1))
- {
- cnt++;
- }
- }
-
- if(isLoadImage == true)
- {
- if(cnt == 0)
- {
- messageBox("선택된 이미지가 최소 2개 이상인지 " ,"I007");
- //alert("이미지가 최소 2개 이상이어야 합니다.");
- checkbox1.deselect(0);
- return;
- }
- }
- else
- {
- if(cnt < 2)
- {
- messageBox("선택된 이미지가 최소 2개 이상인지 " ,"I007");
- //alert("선택된 이미지가 최소 2개 이상이어야 합니다.");
- checkbox1.deselect(0);
- return;
- }
- }
- if(!obj_imge.SetCanvas())
- {
- checkbox1.deselect(0);
- model.setValue("/root/temp/mergestatus", "cancel");
- //alert("한장으로 모으기 취소");
- return;
- }
-
- for(var i = 0; i < grd_imgelist.cols; i++)
- {
- if(grd_imgelist.fixedcellischeck(0, i + 1))
- {
- //alert("merge" + i + " : " + grd_imgelist.colAttribute(i + 1, "ref"));
- var AttriName = grd_imgelist.attribute("nodeset") + "/";
- var nodeName = AttriName.setReplaceWord("thumblist", "imgelist");
- //var imgeData = model.getValue(grd_imgelist.attribute("nodeset") + "/" + grd_imgelist.colAttribute(i + 1, "ref"));
-
- var degnitemno = grd_imgelist.colAttribute(i + 1, "ref");
- degnitemno = degnitemno.setReplaceWord("imge", "");
-
- var imgeData = model.getValue("/root/main/recinfo/recitem[degnitemno='" + degnitemno + "']/recimge");
- //var imgeData = model.getValue(nodeName + grd_imgelist.colAttribute(i + 1, "ref"));
- if(imgeData != "")
- {
- obj_imge.AddImageToCanvas(imgeData);
- }
- }
- }
-
- obj_imge.LoadCanvas(); // 합쳐진 이미지를 로드한다
- cmb_viewmode.disabled = true;
- model.setValue("/root/temp/mergestatus", "merge");
- model.refresh();
- }
- /**
- * @ver : 2008-08-01
- * @desc : 이미지 합친 상태를 취소
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fCancelMergeImage()
- {
- if(model.getValue("/root/temp/mergestatus") == "merge")
- {
- obj_imge.RestoreStatus();
- checkbox1.deselect(0);
- cmb_viewmode.disabled = false;
- model.setValue("/root/temp/mergestatus", "");
- return;
- }
- }
- /**
- * @ver : 2008-03-18
- * @desc : 상단 이미지 리스트에서 이미지를 선택했을때 발생하는 이벤트 함수
- * @
- * @by : 이경희
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fSelectImge()
- {
- //var status = grd_imgelist.fixedcellischeck(0, grd_imgelist.col);
-
- if(grd_imgelist.row == 0)
- {
- if(grd_imgelist.fixedcellischeck(0, grd_imgelist.col))
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = true;
- else
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = false;
- }
- else
- {
- if(grd_imgelist.fixedcellischeck(0, grd_imgelist.col))
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = false;
- else
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = true;
- }
- /*
- if(grd_imgelist.fixedcellischeck(0, grd_imgelist.col))
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = false;
- else
- grd_imgelist.fixedcellischeck(0, grd_imgelist.col) = true;
-
- */
- }
- /**
- * @desc : 메타데이터에서 caption을 CDATA로 감싼다.
- * @id :
- * @event :
- * @return :
- * @authur : 이경희
- */
- function fSetCdata(metadata)
- {
- var strMeta = metadata;
-
- // 1. CDATA로 감싸져 있는지 확인.
- if(isSearchString(strMeta, "CDATA") == false)
- {
- var strStCaptionOld = "";
- var strEdCaptionOld = "";
- var strStCaptionNew = "";
- var strEdCaptionNew = "";
-
- // 배열로 반환
- strStCaptionOld = fGetXvgStCaption(strMeta);
- strEdCaptionOld = fGetXvgEdCaption(strMeta);
-
- // for문으로 반복
- for(var idx = 0; idx < strStCaptionOld.length; idx++)
- {
- if(idx == 0)
- {
- // 모든 </caption> 을 ]]></caption> 으로 변경
- strEdCaptionNew = "]]>" + strEdCaptionOld[idx];
- strMeta = strMeta.setReplaceWord(strEdCaptionOld[idx], strEdCaptionNew);
- }
-
- strStCaptionNew = strStCaptionOld[idx] + "<![CDATA[";
-
- strMeta = strMeta.setReplaceWord(strStCaptionOld[idx], strStCaptionNew);
- }
- }
-
- return strMeta;
- }
- /**
- * @desc : 메타데이터에서 caption의 시작 태그를 반환한다.
- * @id :
- * @event :
- * @return :
- * @authur : 이경희
- */
- function fGetXvgStCaption(metadata)
- {
- var strMeta = metadata;
- var getStCaption = new Array();
- var grpexpSt = new RegExp('(<caption[^<>]+>)', 'igm');
-
- if(grpexpSt.test(strMeta) == true)
- {
- getStCaption = strMeta.match(grpexpSt);
-
- strMeta = strMeta.replace(grpexpSt, "");
- }
-
- if(getStCaption.length > 0)
- return getStCaption;
- else
- return "";
- }
- /**
- * @desc : 메타데이터에서 caption의 종료 태그를 반환한다.
- * @id :
- * @event :
- * @return :
- * @authur : 이경희
- */
- function fGetXvgEdCaption(metadata)
- {
- var strMeta = metadata;
- var getEdCaption = new Array();
- var grpexpEd = new RegExp('(</caption>)', 'igm');
-
- if (grpexpEd.test(strMeta) == true)
- {
- getEdCaption = strMeta.match(grpexpEd);
-
- strMeta = strMeta.replace(grpexpEd, "");
- }
-
- if(getEdCaption.length > 0)
- return getEdCaption;
- else
- return "";
- }
- /*
- function fConvertSpecialText(metadata)
- {
- var strMeta = metadata;
-
- strMeta = strMeta.setReplaceWord("<", "<");
-
- strMeta = strMeta.setReplaceWord(">", ">");
-
- strMeta = strMeta.setReplaceWord("&", "&");
-
- strMeta = strMeta.setReplaceWord("\"", """);
- }
- */
- /**
- * @ver : 2009-06-12 오후 9:16:34
- * @desc : 라이브이미지 ActiveX 컨트롤에 이미지 파일을 불러들인다.
- * @
- * @by : 강지훈
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fAddFixImgeByFile()
- {
- try{
- //저장되어있는 파일형식 : 저장일_저장시간_환자번호_파일명
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var f = fso.GetFolder("C:\\CdisImage");
- var fc = new Enumerator(f.files);
- var s = "";
- var selfile = "";
- var files = f.files;
-
- if(files.Count > 0){
-
- model.setValue("/root/hidden/updateflag", "Y");
- for (; !fc.atEnd(); fc.moveNext())
- {
- s = fc.item();
- var selfileName = s.name;
- var fstIndex = selfileName.indexOf("_");
- var scnIndex = selfileName.indexOf("_", fstIndex+1);
- var trdIndex = selfileName.indexOf("_", scnIndex+1);
-
- var selDate = selfileName.substr(0, fstIndex); //파일이 저장된 날짜를 가져온다.
- var selPid = selfileName.substring(scnIndex + 1, trdIndex); //파일이 저장된 날짜를 가져온다.
-
- var curDate = getCurrentDate();
- var curPid = getPatientId();
-
- if(selDate == curDate){
- if(selPid == curPid){
- selfile += s.path;
- selfile += "|";
- }
- }
- }
-
-
-
- selfile = selfile.substring(0, selfile.lastIndexOf("|"));
-
- if(selfile.length > 0){
- var arrfile = selfile.split("|");
- for(var i = 0; i < arrfile.length; i++)
- {
- var filepath = arrfile[i];
- var pos = filepath.lastIndexOf("\\");
- var filenm = filepath.substring(pos+1, filepath.length);
- pos = filenm.lastIndexOf(".");
- filenm = filenm.substring(0, pos);
-
- imgeInfo = new IMGE_INFO();
- imgeInfo.imgeno = ++gNewImgeNo;
- imgeInfo.imgecd = "Z000000001";
- //imgeInfo.imgenm = filenm;
- imgeInfo.imgenm = "LOCALIMG";
- imgeInfo.srcbase64 = "";
- imgeInfo.recbase64 = "";
- imgeInfo.shape = ""; //filepath;
- imgeInfo.filePath = filepath;
-
- imgeInfo.degnitemlevlcd = gPageInfo.degnItemLevlCd +"."+ imgeInfo.imgecd;
- imgeInfo.degnitemlevlno = parseInt(gPageInfo.degnitemlevlno) + 1;
- imgeInfo.rowno = "NUIMG";
- imgeInfo.colno = "FILE";
-
- obj_thumnail.LoadImage(filepath);
- imgeInfo.shape = "";
-
- var viewMode = obj_imge.GetViewMode();
-
- if(viewMode != model.getValue("/root/init/selectnode/viewmode"))
- {
- obj_imge.SetViewMode(model.getValue("/root/init/selectnode/viewmode"));
- }
-
- var livectrl = document.controls("obj_imge");
-
- if(livectrl != null)
- {
- livectrl.attribute("visible") == false;
- }
-
- obj_imge.LoadImage(imgeInfo.filePath);
-
- var arrSz = fGetImgeSizeEx();
-
- imgeInfo.width = arrSz[0];
- imgeInfo.height = arrSz[1];
-
- imgeInfo.srcbase64 = obj_imge.SaveImageBase64();
- //imgeInfo.srcbase64 = obj_thumnail.SaveImageBase64();
- imgeInfo.recbase64 = imgeInfo.srcbase64;
- imgeInfo.shape = obj_imge.GetShapeString();
-
- if(livectrl != null)
- {
- obj_imge.clear();
- livectrl.attribute("visible") == true;
- }
- fAddImgeList(imgeInfo);
- }
- }
- else{
- messageBox("금일 등록된 이미지가 " ,"I004");
- }
- }
- else{
- messageBox("금일 등록된 이미지가 " ,"I004");
- }
- }
- catch(e){
- }
- }
- /**
- * @ver : 2009-06-12 오후 9:16:34
- * @desc : 라이브이미지 ActiveX 컨트롤에 이미지 파일을 불러들인다.
- * @
- * @by : 강지훈
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fClearFile(){
- //저장되어있는 파일형식 : 저장일_저장시간_환자번호_파일명
- var fso = new ActiveXObject("Scripting.FileSystemObject");
-
-
- try{
- var f = fso.GetFolder("C:\\CdisImage");
- var fc = new Enumerator(f.files);
- var s = "";
- var selfile = "";
- var files = f.files;
-
- if(files.Count > 0){
- for (; !fc.atEnd(); fc.moveNext())
- {
-
- s = fc.item();
- var selfileName = s.name;
- var fstIndex = selfileName.indexOf("_");
- var scnIndex = selfileName.indexOf("_", fstIndex+1);
- var trdIndex = selfileName.indexOf("_", scnIndex+1);
-
-
- var selDate = selfileName.substr(0, fstIndex); //파일이 저장된 날짜를 가져온다.
- var selPid = selfileName.substring(scnIndex + 1, trdIndex); //파일이 저장된 날짜를 가져온다.
-
- var curDate = getCurrentDate();
- var curPid = getPatientId();
-
-
- //1. 과거날짜에 저장된 파일은 모두 지운다. 2. 현재날짜에 업로드된 파일또한 모두 지운다.
- if(selPid == curPid){
- if(selDate < curDate){
- fso.deletefile(s.path);
- }
- else if(selDate == curDate){
- var updateflag = model.getValue("/root/hidden/updateflag");
- if(updateflag == "Y"){
- fso.deletefile(s.path);
- }
- }
- }
- }
- }
- }
- catch(e){
- }
- }
- /**
- * @ver :
- * @desc : 클립보드상의 이미지를 로딩한다
- * @
- * @by : 박종훈
- * @param:
- * @return:
- * @---------------------------------------------------
- */
- function fClipBoardImgLoad()
- {
- var bMulti = false;
- if(model.getValue("/root/temp/directstatus") == "direct")
- bMulti = true;
-
- var clipbase64 = obj_imge.GetClipboardImage();
-
- if (clipbase64 == "")
- {
- return;
- }
-
- var selfile = obj_imge.GetClipboardImageFile();
-
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var clipf = fso.GetFile(selfile);
- var clipSize = clipf.size;
-
- if (clipSize > 2048000)
- {
- messageBox("허용용량(2MB)을" ,"E003");
- return;
- }
-
- if (selfile == "")
- return;
-
- var arrfile = selfile.split("|");
- for(var i = 0; i < arrfile.length; i++)
- {
- var filepath = arrfile[i];
- var pos = filepath.lastIndexOf("\\");
- var filenm = filepath.substring(pos+1, filepath.length);
- pos = filenm.lastIndexOf(".");
- filenm = filenm.substring(0, pos);
-
- imgeInfo = new IMGE_INFO();
- imgeInfo.imgeno = ++gNewImgeNo;
- imgeInfo.imgecd = "Z000000001";
- //imgeInfo.imgenm = filenm;
- imgeInfo.imgenm = "LOCALIMG";
- imgeInfo.srcbase64 = "";
- imgeInfo.recbase64 = "";
- imgeInfo.shape = ""; //filepath;
- imgeInfo.filePath = filepath;
-
- imgeInfo.degnitemlevlcd = gPageInfo.degnItemLevlCd +"."+ imgeInfo.imgecd;
- imgeInfo.degnitemlevlno = parseInt(gPageInfo.degnitemlevlno) + 1;
- imgeInfo.rowno = "NUIMG";
- imgeInfo.colno = "FILE";
-
-
-
- if(bMulti)
- {
- obj_thumnail.LoadImage(filepath);
- imgeInfo.shape = "";
- var viewMode = obj_imge.GetViewMode();
-
- if(viewMode != model.getValue("/root/init/selectnode/viewmode"))
- {
- obj_imge.SetViewMode(model.getValue("/root/init/selectnode/viewmode"));
- }
-
- var livectrl = document.controls("obj_imge");
-
- if(livectrl != null)
- {
- livectrl.attribute("visible") == false;
- }
-
- obj_imge.LoadImage(imgeInfo.filePath);
-
- var arrSz = fGetImgeSizeEx();
-
- imgeInfo.width = arrSz[0];
- imgeInfo.height = arrSz[1];
-
- imgeInfo.srcbase64 = obj_imge.SaveImageBase64();
- //imgeInfo.srcbase64 = obj_thumnail.SaveImageBase64();
- imgeInfo.recbase64 = imgeInfo.srcbase64;
- imgeInfo.shape = obj_imge.GetShapeString();
-
- if(livectrl != null)
- {
- obj_imge.clear();
- livectrl.attribute("visible") == true;
- }
-
- fAddImgeList(imgeInfo);
- }
- else
- {
- fClearImge();
- fSetImge(imgeInfo);
- }
- }
- /*///////////////////////////////////////////////////////////////////////////////////////////////////////////
- var sB64Code = obj_imge.GetClipboardImage();
- if(sB64Code != "")
- {
- obj_imge.SetViewMode(model.getValue("/root/init/selectnode/viewmode"));
- //obj_image.SetControlSize("437", "555");
- obj_imge.LoadImageBase64(sB64Code);
- }
- //alert(sB64Code);
- */
- }
|