Changeset 1719 for sandbox/filemanager/js
- Timestamp:
- 11/27/09 10:24:20 (14 years ago)
- Location:
- sandbox/filemanager/js
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/filemanager/js/common_functions.js
r1704 r1719 1 var menuTimeout;2 /* draw_menu(id of menu, left position, top position, menu elements) */3 function draw_menu(id,left_pos,top_pos,elements){4 var menu = document.getElementById('menu_newFile'+id);5 if (menu == null){6 menu = document.createElement('DIV');7 menu.id = "menu_newFile"+id;8 menu.style.left = left_pos+"px";9 menu.style.top = top_pos+"px";10 for(j in elements)11 {12 if (typeof(elements[j]['img']) != 'undefined'){13 var img = document.createElement( 'IMG' );14 img.src = elements[j]['img'];15 menu.appendChild(img);16 }17 var link = document.createElement( 'A' );18 link.href = elements[j]['url'];19 link.appendChild( document.createTextNode( elements[j]['text'] ) );20 menu.appendChild(link);21 menu.appendChild(document.createElement( 'BR' ));22 }23 24 menu.onmouseout = function () { menuTimeout = setTimeout("document.getElementById('menu_newFile"+id+"').style.visibility = 'hidden'",50);}25 menu.onmouseover = function () { clearTimeout(menuTimeout); };26 menu.className = 'menubox';27 menu.style.zIndex='1';28 document.getElementById('divAppboxHeader').appendChild(menu);29 }30 menu.style.visibility = 'visible';31 }32 1 function load(path){ 33 window.location = "/index.php?menuaction=filemanager.uifilemanager.index&path="+base64_encode(path); 2 currentPath = path; 3 cExecute('/index.php?menuaction=filemanager.uifilemanager.get_permissions&path='+base64_encode(path),loadPermissions); 34 4 } 35 5 … … 55 25 address = address.split("?"); 56 26 elements[2]['url'] = address[0]+"?menuaction=filemanager.uifilemanager.index&upload=clicked&upload.x=1&path="+base64_encode(currentPath); 57 draw_menu(arg, 50,130,elements);27 draw_menu(arg,elements); 58 28 break; 59 29 case 'rename': … … 69 39 var filename = nameLink.innerHTML; 70 40 inputName.value = filename; 71 inputName.onblur = function () { cExecute('/index.php?menuaction=filemanager.vfs_functions.rename&file='+base64_encode(this.id.substr(6))+'&to='+base64_encode(this.value)+"&path="+base64_encode(currentPath .value),updateRename) };41 inputName.onblur = function () { cExecute('/index.php?menuaction=filemanager.vfs_functions.rename&file='+base64_encode(this.id.substr(6))+'&to='+base64_encode(this.value)+"&path="+base64_encode(currentPath),updateRename) }; 72 42 nameLink.parentNode.appendChild(inputName); 73 43 nameLink.parentNode.removeChild(nameLink); … … 113 83 114 84 cExecute('/index.php?menuaction=filemanager.vfs_functions.delete&path='+ 115 base64_encode(currentPath .value)+filesUrl,handlerDelete);85 base64_encode(currentPath)+filesUrl,handlerDelete); 116 86 break; 117 87 case 'move_to': … … 133 103 } 134 104 var elements = new Array(); 135 inputEl = document.getElement sByName('todir');136 for(i=0; i< inputEl [0].childNodes.length; i++)105 inputEl = document.getElementById('content_folders'); 106 for(i=0; i< inputEl.childNodes.length; i++) 137 107 { 108 if (inputEl.childNodes[i].nodeName != 'SPAN') 109 continue; 138 110 elements[i] = new Array(); 139 elements[i]['text'] =inputEl[0].childNodes[i].innerHTML;111 elements[i]['text']=inputEl.childNodes[i].innerHTML; 140 112 address = document.location.toString(); 141 113 address = address.split("&"); 142 114 elements[i]['url'] = address[0]+ 143 115 "&"+escape(arg)+".x=10"+ 144 "&to="+base64_encode(inputEl [0].childNodes[i].innerHTML)+116 "&to="+base64_encode(inputEl.childNodes[i].innerHTML)+ 145 117 filesUrl; 146 118 147 119 } 148 draw_menu(arg, button.offsetLeft+220,button.parentNode.offsetTop-20,elements);120 draw_menu(arg,elements); 149 121 break; 150 122 case 'reload': 151 window.location = "/index.php?menuaction=filemanager.uifilemanager.index&path="+base64_encode(currentPath);123 cExecute('/index.php?menuaction=filemanager.uifilemanager.dir_ls&path='+base64_encode(currentPath)+'&criteria='+criteria+'&otype='+order_type,drawFiles); 152 124 return; 153 125 case 'tools': … … 156 128 elements[0]['text'] = get_lang('Preferences'); 157 129 elements[0]['url'] = 'preferences/preferences.php?appname=filemanager'; 158 elements[0]['img'] = 'filemanager/templates/default/images/preferences.png';130 elements[0]['img'] = templatePath+'images/preferences.png'; 159 131 elements[1] = new Array(); 160 132 elements[1]['text'] = get_lang('Search'); … … 162 134 document.getElementById("menu_newFiletools").style.visibility="hidden";\ 163 135 document.getElementById("em_message_search").focus();'; 164 elements[1]['img'] = 'filemanager/templates/default/images/search.gif';136 elements[1]['img'] = templatePath+'images/search.gif'; 165 137 /* 166 138 elements[2] = new Array(); 167 139 elements[2]['text'] = get_lang('Edit Folders'); 168 140 elements[2]['url'] = 'javascript:EditFolders()'; 169 elements[2]['img'] = ' filemanager/templates/default/images/mime16_directory.png';141 elements[2]['img'] = 'images/mime16_directory.png'; 170 142 */ 171 143 elements[3] = new Array(); 172 144 elements[3]['text'] = get_lang('Share Folders'); 173 145 elements[3]['url'] = "index.php?menuaction=preferences.uiaclprefs.index&acl_app=filemanager"; 174 elements[3]['img'] = 'filemanager/templates/default/images/mime16_directory.png';146 elements[3]['img'] = templatePath+'images/mime16_directory.png'; 175 147 elements[4] = new Array(); 176 148 elements[4]['text'] = get_lang('Edit Columns'); 177 149 elements[4]['url'] = "javascript:EditColumns()"; 178 elements[4]['img'] = 'filemanager/templates/default/images/editpaste.png';179 draw_menu(arg, 50,190,elements);150 elements[4]['img'] = templatePath+'images/editpaste.png'; 151 draw_menu(arg,elements); 180 152 break; 181 153 default: … … 301 273 302 274 303 function setRestricted( link){275 function setRestricted(name){ 304 276 var continue_set = confirm(get_lang('This property will change the visibility of all users that have access to this file, continue?')); 305 277 if (continue_set) 306 cExecute( link,setRestricted_handler);278 cExecute('/index.php?menuaction=filemanager.vfs_functions.setRestricted&file='+base64_encode(name)+'&path='+base64_encode(currentPath),setRestricted_handler); 307 279 } 308 280 … … 391 363 var inputName = document.getElementById('input_'+returnVal[1]); 392 364 nameLink.innerHTML = returnVal[2]; 393 nameLink.href="./index.php?menuaction=filemanager.uifilemanager.view&file="+base64_encode(returnVal[2])+"&path="+base64_encode(currentPath .value);365 nameLink.href="./index.php?menuaction=filemanager.uifilemanager.view&file="+base64_encode(returnVal[2])+"&path="+base64_encode(currentPath); 394 366 inputName.parentNode.appendChild(nameLink); 395 367 inputName.parentNode.removeChild(inputName); … … 426 398 preferences[checkBoxes[i].value] = '0'; 427 399 } 428 cExecute('/index.php?menuaction=filemanager.user.save_preferences&preferences='+base64_encode(serialize(preferences)),function () { toolbar_control('reload') })400 cExecute('/index.php?menuaction=filemanager.user.save_preferences&preferences='+base64_encode(serialize(preferences)),function () { toolbar_control('reload'); EditColumns('close'); }) 429 401 return; 430 402 } -
sandbox/filemanager/js/connector.js
r1704 r1719 43 43 var div = document.getElementById('divProgressBar'); 44 44 45 if(! div) { 45 if(! div) { 46 46 div = document.createElement("DIV"); 47 div.style.visibility= "hidden";47 //div.style.visibility = "hidden"; 48 48 div.style.width = "103px"; 49 49 div.id = 'divProgressBar'; … … 54 54 div.style.top = '0px'; 55 55 div.style.right = '0px'; 56 document.body.appendChild(div); 56 document.body.appendChild(div); 57 57 58 58 if(is_ie) { … … 81 81 if (! div){ 82 82 connector.buildBar(); 83 connector.showProgressBar();84 83 return; 85 84 } … … 115 114 116 115 function cExecute(requestURL,handler){ 116 if (connector.isVisibleBar == true){ 117 setTimeout('cExecute("'+requestURL+'",'+handler+')',150); 118 return; 119 } 120 connector.showProgressBar(); 117 121 var AjaxRequest = function () { 118 122 Ajax = false; … … 131 135 var responseRequest = function (){ 132 136 if (Ajax.readyState == 4) 133 if (Ajax.status == 200) 137 if (Ajax.status == 200){ 134 138 handler(Ajax.responseText); 139 connector.hideProgressBar(); 140 } 135 141 else 136 142 throw("Connection error!"); -
sandbox/filemanager/js/draw_api.js
r1704 r1719 1 2 function getPointer(e) { 3 if (is_ie) { 4 DocX = event.clientX + document.body.scrollLeft; 5 DocY = event.clientY + document.body.scrollTop; 6 } else { 7 DocX = e.pageX; 8 DocY = e.pageY; 9 } 10 } 11 document.onmousemove = getPointer; 12 13 14 function draw_menu(id,elements){ 15 var menu = document.getElementById('menu_newFile'+id); 16 if (menu == null){ 17 menu = document.createElement('DIV'); 18 menu.id = "menu_newFile"+id; 19 menu.style.left = DocX; 20 menu.style.top = DocY; 21 //menu.style.left = left_pos+"px"; 22 //menu.style.top = top_pos+"px"; 23 for(j in elements) 24 { 25 if (typeof(elements[j]['img']) != 'undefined'){ 26 var img = document.createElement( 'IMG' ); 27 img.src = elements[j]['img']; 28 menu.appendChild(img); 29 } 30 var link = document.createElement( 'A' ); 31 link.href = elements[j]['url']; 32 link.appendChild( document.createTextNode( elements[j]['text'] ) ); 33 menu.appendChild(link); 34 menu.appendChild(document.createElement( 'BR' )); 35 } 36 37 menu.onmouseout = function () { menuTimeout = setTimeout("document.getElementById('menu_newFile"+id+"').style.visibility = 'hidden'",50);} 38 menu.onmouseover = function () { clearTimeout(menuTimeout); }; 39 menu.className = 'menubox'; 40 menu.style.zIndex='1'; 41 document.getElementById('divAppboxHeader').appendChild(menu); 42 } 43 menu.style.visibility = 'visible'; 44 } 45 1 46 function resizeDiv(){ 2 47 defaultHeight = document.body.clientHeight ? document.body.clientHeight : document.body.offsetHeight; … … 4 49 document.getElementById('content_folders').style.height = defaultHeight - (is_ie ? 230 : 215); 5 50 6 }7 function initDrawApi(){8 cExecute ('/index.php?menuaction=filemanager.user.get_preferences', save_preferences);9 var quotaSize = document.getElementById('quotaSize').value;10 var usedSpace = document.getElementById('usedSpace').value;11 var currentPath = document.getElementById('currentPath').value;12 document.getElementById('divAppboxHeader').innerHTML = title_app;13 14 15 if (parseInt(quotaSize) != 0)16 document.getElementById('content_quota').innerHTML = '<table width="102" cellspacing="0" cellpadding="0" border="0" id="table_quota"><tbody><tr><td width="102" nowrap="true" height="15" background="../phpgwapi/templates/default/images/dsunused.gif"><table cellspacing="0" cellpadding="0" border="0" style="width: '+parseInt((usedSpace/quotaSize)*100)+'%;"><tbody><tr><td height="15" class="dsused"/></tr></tbody></table></td><td nowrap="true" align="center"><span class="boxHeaderText">'+parseInt(usedSpace/quotaSize*100)+'% ('+(usedSpace/1024/1024).toFixed(1)+'M/'+(quotaSize/1024/1024)+'M)</span></td></tr></tbody></table></td></tr></table>';17 displayMessages();18 resizeDiv();19 window.onresize = resizeDiv;20 // Disabled for now21 // document.getElementById('main_table').style.visibility = "";22 51 } 23 52 var headerMsgLock = false; … … 57 86 } 58 87 } 59 var preferences; 60 function save_preferences(data){ 61 preferences = unserialize(data); 62 } 88 89 function loadPreferences(){ 90 preferencesEl = document.getElementById('userPreferences'); 91 preferences = unserialize(preferencesEl.value); 92 } 93 94 95 function reloadFiles(newCriteria){ 96 if (newCriteria == criteria) 97 order_type = (order_type=='1'?'0':'1') 98 else 99 criteria = newCriteria; 100 toolbar_control('reload'); 101 } 102 function selectAll(el){ 103 checkBoxes = document.getElementsByName('fileman'); 104 if (el.checked) 105 for (i=0; i < checkBoxes.length; i++) 106 checkBoxes[i].checked = true; 107 else 108 for (i=0; i < checkBoxes.length; i++) 109 checkBoxes[i].checked = false; 110 111 } 112 function borkb(size){ 113 kbyte = 1024; 114 mbyte = kbyte*1024; 115 gbyte = mbyte*1024; 116 if (!size) 117 size = 0; 118 if (size < kbyte) 119 return size + 'B'; 120 else if (size < mbyte) 121 return parseInt(size/kbyte) + 'KB'; 122 else if (size < gbyte) 123 return (size/mbyte).toFixed(1) + 'MB'; 124 else 125 return parseInt(size/gbyte).toFixed(1) + 'GB'; 126 } 127 128 function drawFiles(data){ 129 var fmFileWindow = document.getElementById('fmFileWindow'); 130 var files = unserialize(data); 131 fmFileWindow.innerHTML = ""; 132 var newpage; 133 var td_hd = '<td style="padding-left: 2px; padding-right: 2px;" valign="middle">'; 134 var sp_hd = '<span name="head" style="cursor: pointer; cursor: hand;" onclick="reloadFiles(\''; 135 var sp_tl = '</span></td>'; 136 newpage = '<table cellspacing="0" cellpadding="2"><tbody><tr class="message_header">'; 137 newpage += td_hd+'<input onclick="selectAll(this)" type="checkbox"></td><td></td><td></td>'; 138 newpage += td_hd+sp_hd+'name\')" id="name">'+get_lang('file name')+sp_tl; 139 if (preferences.mime_type =='1') 140 newpage += td_hd+sp_hd+'mime\')" id="mime">'+get_lang('mime type')+sp_tl; 141 if (preferences.size =='1') 142 newpage += td_hd+sp_hd+'size\')" id="size">'+get_lang('size')+'</a>'+sp_tl; 143 if (preferences.created =='1') 144 newpage += td_hd+sp_hd+'created\')" id="created">'+get_lang('created')+'</a>'+sp_tl; 145 if (preferences.modified =='1') 146 newpage += td_hd+sp_hd+'modified\')" id="modified">'+get_lang('modified')+'</a>'+sp_tl; 147 if (preferences.owner =='1') 148 newpage += td_hd+sp_hd+'owner\')" id="owner">'+get_lang('owner')+'</a>'+sp_tl; 149 if (preferences.createdby_id =='1') 150 newpage += td_hd+sp_hd+'creatdby\')" id="creatdby">'+get_lang('created by')+'</a>'+sp_tl; 151 if (preferences.modifiedby_id =='1') 152 newpage += td_hd+sp_hd+'modifdby\')" id="modifdby">'+get_lang('modified by')+'</a>'+sp_tl; 153 if (preferences.comment =='1') 154 newpage += td_hd+sp_hd+'comm\')" id="comm">'+get_lang('comment')+'</a>'+sp_tl; 155 if (preferences.version =='1') newpage += td_hd+sp_hd+'vers\')" id="vers">'+get_lang('version')+'</a>'+sp_tl+'</tr>'; 156 157 var classTr = "tr_msg_read"; 158 for (var i=0; i < files.length; i++) 159 { 160 newpage += '<tr class="'+classTr+'">'+td_hd; 161 newpage += '<input name="fileman" value="'+files[i].name+'" type="checkbox"></td>'; 162 if (permissions['private']) { 163 newpage += '<td><img id="restrict_'+files[i].name+'" onclick="setRestricted(\''+files[i].name+'\')" '; 164 newpage += 'src="'+templatePath+'images/button_'+(files[i].pub == '1'?'lock':'unlock')+'.png"></td>'; 165 } 166 else 167 newpage += '<td></td>'; 168 169 if (files[i].mime == 'text/html') 170 newpage += '<td><a href="/index.php?menuaction=filemanager.uifilemanager.export&file='+base64_encode(files[i].name)+';path='+base64_encode(currentPath)+'"><img alt="'+get_lang('export')+'" title="'+get_lang('export')+'" src="'+templatePath+'images/button_export.png"></a></td>'; 171 else 172 newpage += '<td></td>'; 173 newpage += td_hd+'<img src="'+(files[i].icon)+'">'; 174 newpage += '<a id="name_'+files[i].name+'" href="/index.php?menuaction=filemanager.uifilemanager.view&file='+base64_encode(files[i].name)+'&path='+base64_encode(currentPath)+'" target="_blank">'+files[i].name+'</a> </td>'; 175 if (preferences.mime_type =='1') newpage += td_hd+files[i].mime+'</td>'; 176 if (preferences.size =='1') newpage += td_hd+borkb(files[i].size)+'</td>'; 177 if (preferences.created =='1') newpage += td_hd+files[i].creatd+'</td>'; 178 if (preferences.modified =='1') newpage += td_hd+files[i].modifd+'</td>'; 179 if (preferences.owner =='1') newpage += td_hd+files[i].owner+'</td>'; 180 if (preferences.createdby_id =='1') newpage += td_hd+files[i].creatdby+'</td>'; 181 if (preferences.modifiedby_id =='1') newpage += td_hd+files[i].modifdby+'</td>'; 182 if (files[i].comm == null || files[i].comm.length == 0) 183 files[i].comm = "<"+get_lang("no comments")+">"; 184 if (preferences.comment =='1') newpage += td_hd+'<span id="'+files[i].name+'" onclick="setComments(this)">'+files[i].comm+'</span></td>'; 185 if (preferences.version =='1') newpage += td_hd+'<span onclick="loadHistory(\''+files[i].name+'\')">'+files[i].vers+'</span></td></tr>'; 186 // /index.php?menuaction=filemanager.uifilemanager.history&file=MDAxMC5lbWw%253D&path=L2hvbWUvem9yZWlh 187 classTr = (classTr == "tr_msg_read"?"tr_msg_read2":"tr_msg_read"); 188 189 } 190 fmFileWindow.innerHTML = newpage; 191 header = document.getElementsByName('head'); 192 for (var i=0; i < header.length; i++) 193 { 194 if (header[i].id == criteria){ 195 header[i].style.fontWeight = 'bold'; 196 arrow = document.createElement('IMG'); 197 if (order_type == '1') 198 arrow.src = templatePath+'images/arrow_ascendant.gif'; 199 else 200 arrow.src = templatePath+'images/arrow_descendant.gif'; 201 header[i].appendChild(arrow); 202 } 203 } 204 } 205 206 207 function loadToolbar(){ 208 if (permissions['read'] == 0) 209 return; 210 var toolbar = document.getElementById('fmMenu'); 211 var pageContent = '<table><tbody><tr>'; 212 var createButton = function(name) { return '<td name="'+name+'" class="toolButton" onclick="toolbar_control(\''+name+'\');" title="'+name+'"><img src="'+templatePath+'images/button_'+name+'.png" alt="'+name+'"><small>'+get_lang(name.replace('_',' '))+'</small></td>'; } 213 214 if (permissions['edit'] != 0){ 215 pageContent += createButton('edit'); 216 pageContent += createButton('rename'); 217 } 218 if (permissions['delete'] != 0){ 219 pageContent += createButton('delete'); 220 pageContent += createButton('move_to'); 221 } 222 pageContent += createButton('copy_to'); 223 224 toolbar.innerHTML = pageContent+'</tr></tbody></table>'; 225 226 227 } 228 229 function loadPermissions(data){ 230 var permission = parseInt(data); 231 var ACL_READ = 1; 232 var ACL_ADD = 2; 233 var ACL_EDIT = 4; 234 var ACL_DELETE = 8; 235 var ACL_PRIVATE = 16; 236 237 permissions['read']=(permission & ACL_READ); 238 permissions['add']=(permission & ACL_ADD); 239 permissions['edit']=(permission & ACL_EDIT); 240 permissions['delete']=(permission & ACL_DELETE); 241 permissions['private']=(permission & ACL_PRIVATE); 242 loadToolbar(); 243 loadPreferences(); 244 toolbar_control('reload'); 245 } 246 247 function initDrawApi(){ 248 currentPath = document.getElementById('currentPath').value; 249 cExecute('/index.php?menuaction=filemanager.uifilemanager.get_permissions&path='+base64_encode(currentPath),loadPermissions); 250 quotaSize = document.getElementById('quotaSize').value; 251 usedSpace = document.getElementById('usedSpace').value; 252 253 document.getElementById('divAppboxHeader').innerHTML = title_app; 254 255 if (parseInt(quotaSize) != 0) 256 document.getElementById('content_quota').innerHTML = '<table width="102" cellspacing="0" cellpadding="0" border="0" id="table_quota"><tbody><tr><td width="102" nowrap="true" height="15" background="../phpgwapi/templates/default/images/dsunused.gif"><table cellspacing="0" cellpadding="0" border="0" style="width: '+parseInt((usedSpace/quotaSize)*100)+'%;"><tbody><tr><td height="15" class="dsused"/></tr></tbody></table></td><td nowrap="true" align="center"><span class="boxHeaderText">'+parseInt(usedSpace/quotaSize*100)+'% ('+(usedSpace/1024/1024).toFixed(1)+'M/'+(quotaSize/1024/1024)+'M)</span></td></tr></tbody></table></td></tr></table>'; 257 displayMessages(); 258 resizeDiv(); 259 window.onresize = resizeDiv; 260 document.body.style.overflow = "hidden"; 261 262 // Disabled for now 263 // document.getElementById('main_table').style.visibility = ""; 264 265 } 266 -
sandbox/filemanager/js/global.js
r1627 r1719 6 6 '</tr></table>'; 7 7 8 var currentPath = ""; 9 var quotaSize; 10 var usedSpace; 11 12 var templatePath = '/filemanager/templates/default/'; 13 14 var menuTimeout; 15 var DocX,DocY; 16 var criteria='name'; 17 var order_type = '1'; // Ascending is 1, descending is 0 18 19 // Store permissions of current path use it BUT DO NOT rely on it 20 var permissions = new Array(); 21 var preferences = new Array(); -
sandbox/filemanager/js/uploadForm.js
r1694 r1719 16 16 document.getElementById('button_up').style.visibility = "hidden"; 17 17 var line = document.getElementById('uploadOption'); 18 line.parentNode.innerHTML = "<img src=' ./filemanager/templates/default/images/progress.gif'>";18 line.parentNode.innerHTML = "<img src='"+templatePath+"images/progress.gif'>"; 19 19 } 20 20
Note: See TracChangeset
for help on using the changeset viewer.