- Timestamp:
- 12/10/09 15:26:19 (14 years ago)
- Location:
- sandbox/filemanager
- Files:
-
- 1 added
- 1 deleted
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
sandbox/filemanager/inc/class.uifilemanager.inc.php
r1791 r1804 31 31 'dir_ls' => True, 32 32 'search' => True, 33 'showUploadboxes' => True, 33 34 'uploadModel'=>True 34 35 ); … … 69 70 var $edit_save_done_x; 70 71 var $edit_cancel_x; 71 var $upload_x;72 72 73 73 // this ones must be checked thorougly; … … 78 78 var $sortby; 79 79 var $messages; 80 var $show_upload_boxes;81 80 82 81 var $now; … … 347 346 echo "<script src='".$GLOBALS['phpgw_info']['flags']['currentapp']."/js/connector.js'></script>"; 348 347 echo "<script src='".$GLOBALS['phpgw_info']['flags']['currentapp']."/js/draw_api.js'></script>"; 348 echo "<script src='".$GLOBALS['phpgw_info']['flags']['currentapp']."/js/drag_area.js'></script>"; 349 349 include('load_lang.php'); 350 350 … … 412 412 } 413 413 414 # We determine if they're in their home directory or a group's directory, 415 # and set the VFS working_id appropriately 416 if((preg_match('+^'.$this->bo->fakebase.'\/(.*)(\/|$)+U', $this->path, $matches)) && $matches[1] != $this->bo->userinfo['account_lid']) //FIXME matches not defined 417 418 { 419 $this->bo->vfs->working_id = $GLOBALS['phpgw']->accounts->name2id($matches[1]);//FIXME matches not defined 420 421 } 422 else 423 { 424 $this->bo->vfs->working_id = $this->bo->userinfo['username']; 425 } 426 427 # Check available permissions for $this->path, so we can disable unusable operations in user interface 428 $path = explode('/',$this->path); 429 $owner_id = $this->bo->vfs->ownerOf($this->bo->fakebase,$path[2]); 430 $user_id = $GLOBALS['phpgw_info']['user']['account_id']; 431 if ($owner_id == $user_id) 414 /*Check permission*/ 415 if($this->bo->vfs->acl_check(array( 416 'string' => $this->path, 417 'relatives' => array(RELATIVE_NONE), 418 'operation' => PHPGW_ACL_READ 419 ))) 432 420 { 433 421 $this->can_read = True; 434 $this->can_add = True; 435 $this->can_edit = True; 436 $this->can_delete = True; 437 $this->can_private = True; 438 }else 439 { 440 $acl = CreateObject ('phpgwapi.acl', $owner_id); 441 $acl->account_id = $owner_id; 442 $acl->read_repository(); 443 $rights = $acl->get_rights($user_id); 444 $this->can_read = $rights & PHPGW_ACL_READ; 445 $this->can_add = $rights & PHPGW_ACL_ADD; 446 $this->can_edit = $rights & PHPGW_ACL_EDIT; 447 $this->can_delete = $rights & PHPGW_ACL_DELETE; 448 $this->can_private = $rights & PHPGW_ACL_PRIVATE; 449 } 450 422 } 423 451 424 # if is different path than home and no permission allowed 452 425 if($this->path != $this->bo->homedir && $this->path != $this->bo->fakebase && $this->path != '/' && !$this->can_read) … … 503 476 { 504 477 $this->createdir(); 505 }506 elseif($this->upload_x || $this->show_upload_boxes)507 {508 $this->showUploadboxes();509 478 } 510 479 elseif($this->copy_to_x) … … 907 876 function showUploadboxes() 908 877 { 878 $GLOBALS['phpgw_info']['flags'] = array 879 ( 880 'currentapp' => 'filemanager', 881 'noheader' => True, 882 'nonavbar' => True, 883 'nofooter' => True, 884 'noappheader' => True 885 ); 886 $GLOBALS['phpgw']->common->phpgw_header(); 887 909 888 $this->t->set_file(array('upload' => 'upload.tpl')); 910 889 $this->t->set_block('upload','upload_header','upload_header'); … … 912 891 $this->t->set_block('upload','upload_footer','upload_footer'); 913 892 914 if($this->path != '/' && $this->path != $this->bo->fakebase && $this->can_add)893 if($this->path != '/' && $this->path != $this->bo->fakebase) 915 894 { 916 895 $vars[max_size]=lang('Note: Uploaded is limited to %1MB',($this->current_config['filemanager_Max_file_size'])); -
sandbox/filemanager/inc/upload.php
r1745 r1804 31 31 if ($return == 1) 32 32 { 33 $_SESSION[' phpgw_info']['filemanager']['user']['messages'][] = lang('Error:').lang('One of the files sent was considered infected');33 $_SESSION['response'] = serialize(array(0 => lang('Error:').lang('One of the files sent was considered infected'))); 34 34 return; 35 35 } … … 41 41 if($badchar = $bo->bad_chars($_FILES['upload_file']['name'][$i], True, True)) 42 42 { 43 $ _SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Error:').lang('File names cannot contain "%1"', $badchar);43 $return[] = lang('Error:').lang('File names cannot contain "%1"', $badchar); 44 44 continue; 45 45 } … … 59 59 if($fileinfo['mime_type'] == 'Directory') 60 60 { 61 $ _SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Error:').lang('Cannot replace %1 because it is a directory', $fileinfo['name']);61 $return[] = lang('Error:').lang('Cannot replace %1 because it is a directory', $fileinfo['name']); 62 62 continue; 63 63 } … … 66 66 if ($_FILES['upload_file']['size'][$i] > ($upload_max_size*1024*1024)) 67 67 { 68 $ _SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('The size of %1 has exceded the limit: %2', $_FILES['upload_file']['name'][$i], $upload_max_size);68 $return[] = lang('The size of %1 has exceded the limit: %2', $_FILES['upload_file']['name'][$i], $upload_max_size); 69 69 continue; 70 70 } … … 94 94 ); 95 95 $bo->vfs->cp($tmp_arr); 96 97 $_SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Created new %1', $_FILES['upload_file']['name'][$i])."\n";98 96 } 99 97 else … … 114 112 )); 115 113 else{ 116 $ _SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Error:').lang('Your quota has exceeded the limit');114 $return[] = lang('Error:').lang('Your quota has exceeded the limit'); 117 115 return false; 118 116 } 119 117 120 $_SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Created %1,%2', $_FILES['upload_file']['name'][$i], $bo->borkb($_FILES['upload_file']['size'][$i]))."\n";121 118 } 122 119 } … … 137 134 )); 138 135 139 $_SESSION['phpgw_info']['filemanager']['user']['messages'][] = lang('Created %1,%2', $_FILES['upload_file']['name'][$i], $bo->borkb($file_size[$i]))."\n";140 141 136 } 142 137 } 138 if (count($return) > 0) 139 $_SESSION['response'] = serialize($return); 140 else 141 $_SESSION['response'] = serialize( array( 0 => 'Ok' ) ); 143 142 ?> -
sandbox/filemanager/js/common_functions.js
r1803 r1804 66 66 67 67 } 68 69 } 70 68 } 69 function newUpload(data){ 70 if (data == null) 71 { 72 address = document.location.toString(); 73 address = address.split("?"); 74 var url = address[0]+"?menuaction=filemanager.uifilemanager.showUploadboxes&path="+base64_encode(currentPath); 75 cExecute(url,newUpload); 76 } 77 else{ 78 draw_window(data); 79 } 80 } 71 81 72 82 /* … … 332 342 return parseInt(size/gbyte).toFixed(1) + 'GB'; 333 343 } 344 function addNewInput(){ 345 var line = document.getElementById('uploadOption'); 346 var newElement = document.createElement('TR'); 347 var newElement2 = document.createElement('TD'); 348 var newElement3 = document.createElement('TD'); 349 newElement2.innerHTML = '<input onchange="javascript:addNewInput();" maxlength="255" name="upload_file[]" type="file">'; 350 newElement3.innerHTML = '<input name="upload_comment[]" type="text">'; 351 newElement.appendChild(newElement2); 352 newElement.appendChild(newElement3); 353 line.parentNode.appendChild(newElement); 354 document.getElementById('show_upload_boxes').value +=1; 355 } 356 357 function sendFiles(){ 358 cExecuteForm(document.getElementById('form_up'),handler_upload); 359 document.getElementById('button_up').style.visibility = "hidden"; 360 var line = document.getElementById('uploadOption'); 361 line.parentNode.innerHTML = "<img src='"+templatePath+"images/progress.gif'>"; 362 } 363 364 function handler_upload(data){ 365 close_window(); 366 connector.hideProgressBar(); 367 var response = unserialize(data); 368 if (response[0] == "Ok") 369 write_msg('All files created sucessfuly'); 370 else 371 for (var i=0;i < response.length; i++) 372 write_error(response[i]); 373 toolbar.control('reload'); 374 } -
sandbox/filemanager/js/draw_api.js
r1803 r1804 9 9 } 10 10 } 11 document.onmousemove = getPointer;12 11 13 12 function loadHistory(filename){ … … 33 32 function close_window(){ 34 33 var menu = document.getElementById('dwindow'); 35 menu.style.visibility = 'hidden' 34 if (menu != null) 35 menu.style.visibility = 'hidden' 36 36 } 37 37 function draw_window(htmlData){ 38 38 var menu = document.getElementById('dwindow'); 39 buttonClose = '<input value="'+get_lang('close')+'" onclick="close_window()" type="button">'; 39 headerWin = '<div class="message_header" style="width: 100%; heigth: 22px;"'+ 40 ' onselectstart="return false">'+ 41 '<img align="right" alt="'+get_lang('close')+'" title="'+get_lang('close')+'" '+ 42 'onclick="close_window()" src="'+templatePath+'/images/button_cancel.png">'+ 43 get_lang('filemanager')+'</div>'; 40 44 if (!menu){ 41 45 menu = document.createElement('DIV'); 42 46 menu.id = "dwindow"; 43 menu.style.left = DocX - 500;47 menu.style.left = DocX - 200; 44 48 menu.style.width = "auto"; 45 49 menu.style.top = DocY; 46 50 menu.className = 'menubox'; 47 51 menu.style.zIndex='1'; 48 menu.innerHTML = h tmlData+buttonClose;52 menu.innerHTML = headerWin+htmlData; 49 53 document.getElementById('divAppboxHeader').appendChild(menu); 50 54 } 51 55 else{ 52 menu.innerHTML = h tmlData+buttonClose;56 menu.innerHTML = headerWin+htmlData; 53 57 menu.style.visibility = 'visible'; 54 58 } … … 63 67 menu.style.left = DocX; 64 68 menu.style.top = DocY; 65 //menu.style.left = left_pos+"px";66 //menu.style.top = top_pos+"px";67 69 for(j in elements) 68 70 { … … 276 278 } 277 279 folderList.prototype.updateQuota = function(quotaSize,usedSpace){ 278 if (parseInt(quotaSize) != 0) 279 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)+'% ('+borkb(usedSpace)+'/'+borkb(quotaSize)+')</span></td></tr></tbody></table></td></tr></table>'; 280 if (parseInt(quotaSize) != 0){ 281 var contentQuota = document.getElementById('content_quota'); 282 if (contentQuota != null) 283 contentQuota.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)+'% ('+borkb(usedSpace)+'/'+borkb(quotaSize)+')</span></td></tr></tbody></table></td></tr></table>'; 284 } 280 285 } 281 286 folderList.prototype.drawFiles = function(data){ … … 381 386 case 'new': 382 387 elements = new Array(); 383 elements[0] = new Array(); 384 elements[0]['text'] = get_lang('empty file'); 385 elements[0]['url'] = 'javascript:newEmptyFile();'; 388 elements[0] = { 'text': get_lang('empty file'), 389 'url': 'javascript:newEmptyFile()'}; 386 390 elements[1] = new Array(); 387 391 elements[1]['text'] = get_lang('File from model'); … … 389 393 address = address.split("?"); 390 394 elements[1]['url'] = address[0]+"?menuaction=filemanager.uifilemanager.fileModels"; 391 elements[2] = new Array(); 392 elements[2]['text'] = get_lang('Upload'); 393 address = document.location.toString(); 394 address = address.split("?"); 395 elements[2]['url'] = address[0]+"?menuaction=filemanager.uifilemanager.index&upload=clicked&upload.x=1&path="+base64_encode(currentPath); 395 elements[2] = { 'text' : get_lang('Upload'), 396 'url': 'javascript:newUpload()'}; 396 397 draw_menu(arg,elements); 397 398 break; -
sandbox/filemanager/setup/phpgw_pt-br.lang
r1787 r1804 33 33 This property will change the visibility of all users that have access to this file, continue? filemanager pt-br Esta propriedade altera visibilidade dos usuários que estão compartilhados, deseja continuar? 34 34 Click to change comments filemanager pt-br Clique para alterar comentários 35 created %1,%2 filemanager pt-br Criado %1, %2 35 All files created sucessfuly filemanager pt-br Arquivos foram criados com sucesso 36 36 created by filemanager pt-br Criado por 37 37 Error: filemanager pt-br Erro: -
sandbox/filemanager/templates/default/main.css
r1782 r1804 119 119 .message_header { 120 120 background-color:#ABC6E1; 121 -moz-user-select: none; 121 122 } 122 123 .tr_msg_read { -
sandbox/filemanager/templates/default/upload.tpl
r1693 r1804 1 1 <!-- BEGIN upload_header --> 2 <script src="filemanager/js/uploadForm.js" type="text/javascript"></script>3 2 <form id="form_up" method="post" action="{form_action}" enctype="multipart/form-data"> 4 3 <div>
Note: See TracChangeset
for help on using the changeset viewer.