
var FView = function(refData, Parent) { var refThis = this; refThis.refData = refData; this.Init = function() { var divView = _newElement("div", "FileView"); divView.id = refData.id; divView.path = refData.path; refThis.ToolBar(divView); divView.callback = function(flag, value) { switch(flag) { case 'path': { divView.tInput.value = value; if(refThis.list) { var url='/View.aspx?view=list&path='+value; refThis.list.Load(url); divView.lInput.value = ''; } } break; case 'url': { divView.url = value; } break; case 'listItem': { divView.lInput.value = value; if(refThis.preview) { if( value.indexOf(".gif") > 0 || value.indexOf(".jpg") > 0 || value.indexOf(".jpeg") > 0 || value.indexOf(".png") > 0 || value.indexOf(".bmp") > 0 ) { var img = _newElement("img"); img.src = divView.url+value; _removeChildNodes(refThis.preview.eContent); refThis.preview.eContent.appendChild(img); var msg = _newElement("p"); msg.innerHTML = img.width + " x " + img.height; _insertBefore(img, msg); ImageZoom(img, 128); } } } break; case 'list': { refThis.list = value; } break; } }; var table = _newElement("table", "tview"); var tbody = _newElement("tbody"); table.appendChild(tbody); var row = tbody.insertRow(0); var cell0 = row.insertCell(0); cell0.className = "td0"; var cell1 = row.insertCell(1); cell1.className = "td1"; var tFrame = _newElement("iframe", "tFrame"); tFrame.id = divView.id+"tFrame"+Math.random(); tFrame.name = tFrame.id; var lFrame = _newElement("iframe", "lFrame"); lFrame.id = divView.id+"lFrame"+Math.random(); lFrame.name = lFrame.id; cell0.appendChild(tFrame); cell1.appendChild(lFrame); var tInput = _newElement("input", "iText"); tInput.type = "text"; var lInput = _newElement("input", "iText"); lInput.type = "text"; var center = _newElement("center"); center.style.margin = "10px"; var msg = _newElement("span", "msg"); var btOK = _newElement("input", "OK"); btOK.type = "button"; btOK.value = Local.OK; btOK.onclick = function() { if(divView.lInput.value.length < 1) { alert("no selected file"); } else if(refThis.refData.cbox) { refData.url = divView.url + divView.lInput.value; refThis.refData.cbox.Close(); } }; center.appendChild(msg); center.appendChild(btOK); divView.tFrame = tFrame; divView.lFrame = lFrame; divView.tInput = tInput; divView.lInput = lInput; divView.appendChild(table); divView.appendChild(tInput); divView.appendChild(lInput); divView.appendChild(center); Parent.appendChild(divView); refThis.eView = divView; var cssHref = [ '/css/style.css', '/sys/list/list.css', '/sys/tree/tree.css' ]; AttachFrameOnLoad({id:tFrame.id, onLoad:function(doc) { var page = doc.createElement("div"); doc.body.appendChild(page); var url = '/View.aspx?view=tree&path='+divView.path; var obj = {id:'fviewtree', url:url, callback:divView.callback}; var tree = new Tree(obj, page); }, cssHref:cssHref}); AttachFrameOnLoad({id:lFrame.id, onLoad:function(doc) { var page = doc.createElement("div"); doc.body.appendChild(page); var obj = {id:'fviewlist', callback:divView.callback}; var list = new List(obj, page); }, cssHref:cssHref}); Parent.onSizeChanged = function() { var rect = getRect(Parent.parentNode); var h = rect.bottom-rect.top; if(h > 320) { h -= 160; lFrame.style.height = h + "px"; tFrame.style.height = h + "px"; } }; Parent.onClose = function() { if(refThis.preview) { refThis.preview.Close(); } if(refThis.upload) { refThis.upload.Close(); } }; }; this.ToolBar = function(divView) { function onSicon() { refThis.list.vStyle('sList'); } function onLicon() { refThis.list.vStyle("lList"); } function onRlist() { refThis.list.vStyle("rList"); } function onPreview() { if(!refThis.preview) { refThis.preview = new Cbox({title:Local.iPreview, cssName:"CDlg", width:200, height:180}, document.body); refThis.preview.Close = function() { _removeNode(refThis.preview.eCbox); delete refThis.preview; refThis.preview = null; } } } function onUpload() { if(!refThis.upload) { refThis.upload = new Cbox({id:'upload', title:Local.upload, cssName:"CDlg", width:320, height:128}, document.body); var iframe = _newElement("iframe"); iframe.src = "/Upload.aspx?id=upload"; iframe.frameBorder = 0; refThis.upload.eContent.appendChild(iframe); refThis.upload.Close = function() { _removeNode(refThis.upload.eCbox); delete refThis.upload; refThis.upload = null; }; } } var items = [ {icon:'/img/item.gif', text:Local.upload, onclick:onUpload}, {}, {icon:'/img/item.gif', alt:Local.sIcon, onclick:onSicon}, {icon:'/img/item.gif', alt:Local.lIcon, onclick:onLicon}, {icon:'/img/item.gif', alt:Local.rList, onclick:onRlist}, {}, {icon:'/img/item.gif', alt:Local.iPreview, onclick:onPreview} ]; var divBar = _newElement("div", "toolBar"); refThis.mbar = new Mbar({id:'mbar1', items:items}, divBar); divView.appendChild(divBar); }; this.Free = function() { _removeNode(refThis.eView.tFrame); _removeNode(refThis.eView.lFrame); delete refThis.eView.tFrame; delete refThis.eView.lFrame; _removeNode(refThis.eView); delete refThis; }; this.Init(); }; var FileView = function(refData, Parent, caller) { function doView() { var cbox = new Cbox({title:refData.title, screenCover:true, cssName:'CDlg', width:480,height:360, caller:caller}, Parent); var ref = {id:refData.id, path:refData.path,cbox:cbox}; var fview = new FView(ref, cbox.eContent); cbox.onClose = function() { if(refData.onOpen && ref.url) { refData.onOpen(ref.url); } fview.Free(); }; } if(caller != null) { doView(); } else { EnsureUser(doView); } }; 
