Browse Source

Fixing document visibility

Julio Montoya 12 years ago
parent
commit
8cca582033

+ 1 - 5
main/document/document.php

@@ -369,7 +369,7 @@ if ($tool_visibility == '0' && $to_group_id == '0' && !($is_allowed_to_edit || $
     api_not_allowed(true);
 }
 
-$htmlHeadXtra[] ="<script type=\"text/javascript\">
+$htmlHeadXtra[] ="<script>
 function confirmation (name) {
     if (confirm(\" " . get_lang("AreYouSureToDelete") . " \"+ name + \" ?\"))
         {return true;}
@@ -433,13 +433,10 @@ if ($session_id == 0) {
 
 /* 	MAIN SECTION */
 
-
 // Slideshow inititalisation
 $_SESSION['image_files_only'] = '';
 $image_files_only = '';
 
-/* 	Header */
-
 if ($is_certificate_mode) {
     $interbreadcrumb[] = array('url' => '../gradebook/index.php', 'name' => get_lang('Gradebook'));
 } else {
@@ -499,7 +496,6 @@ $mediaplayer_path = api_get_path(WEB_LIBRARY_PATH) . 'mediaplayer/player.swf';
  */
 $docs_and_folders = DocumentManager::get_all_document_data($_course, $curdirpath, $to_group_id, null, $is_allowed_to_edit || $group_member_with_upload_rights, false);
 
-$format_list = '';
 $count = 1;
 
 if (!empty($docs_and_folders))

+ 2 - 3
main/inc/lib/document.lib.php

@@ -456,8 +456,7 @@ class DocumentManager {
     public static function get_all_document_data($_course, $path = '/', $to_group_id = 0, $to_user_id = NULL, $can_see_invisible = false, $search = false) {
         $TABLE_ITEMPROPERTY = Database::get_course_table(TABLE_ITEM_PROPERTY);
         $TABLE_DOCUMENT     = Database::get_course_table(TABLE_DOCUMENT);
-        $TABLE_COURSE       = Database::get_main_table(TABLE_MAIN_COURSE);
-
+        
         //if to_user_id = NULL -> change query (IS NULL)
         //$to_user_id = (is_null($to_user_id)) ? 'IS NULL' : '= '.$to_user_id;
         if (!is_null($to_user_id)) {
@@ -899,7 +898,7 @@ class DocumentManager {
         if ($document_id) {
             self::delete_document_from_db($document_id);            
             //checking
-            $file_exists_in_db = self::get_document_data_by_id($document_id, $_course['code']);            
+            //$file_exists_in_db = self::get_document_data_by_id($document_id, $_course['code']);            
             $file_deleted_from_db = true;
         }
         

+ 5 - 0
main/inc/lib/fileUpload.lib.php

@@ -260,8 +260,13 @@ function handle_uploaded_document($_course, $uploaded_file, $base_work_dir, $upl
 							if (is_numeric($document_id)) {
 								// Update filesize
 								update_existing_document($_course, $document_id, $uploaded_file['size']);
+                                
 								// Update document item_property
 								api_item_property_update($_course, TOOL_DOCUMENT, $document_id, 'DocumentUpdated', $user_id, $to_group_id, $to_user_id, null, null, $current_session_id);
+                                
+                                //Redo visibility
+                                //api_item_property_update($_course, TOOL_DOCUMENT, $document_id, 'visible', $user_id, $to_group_id, $to_user_id, null, null, $current_session_id);
+                                api_set_default_visibility(TOOL_DOCUMENT, $document_id);
 							}
 							// If the file is in a folder, we need to update all parent folders
 							item_property_update_on_folder($_course, $upload_path, $user_id);

+ 3 - 10
main/inc/lib/main_api.lib.php

@@ -6068,18 +6068,11 @@ function api_set_default_visibility($item_id, $tool_id) {
     }
     $setting = api_get_setting('tool_visible_by_default_at_creation'); 
     
-    if (isset($setting[$tool_id])) {
-        //$visibility_boolean = false;
-        $visibility = 'invisible';        
+    if (isset($setting[$tool_id])) {        
+        $visibility = 'invisible';    
         if ($setting[$tool_id] == 'true') {
-            $visibility = 'visible';
-            //$visibility_boolean = true;
+            $visibility = 'visible';            
         }
-        //Hack for gradebook because we don't use the item property table
-        /*
-        if ($tool_id == TOOL_GRADEBOOK) {
-            return $visibility_boolean;
-        }*/
         api_item_property_update(api_get_course_info(), $original_tool_id, $item_id, $visibility, api_get_user_id(), api_get_group_id(), null, null, null, api_get_session_id());            
     }
 }