Changeset 1719 for sandbox/filemanager/js/draw_api.js
- Timestamp:
- 11/27/09 10:24:20 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
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
Note: See TracChangeset
for help on using the changeset viewer.