Changeset 845

Show
Ignore:
Timestamp:
01/19/07 17:39:19 (2 years ago)
Author:
ben
Message:

Folders can now have multiple types, and switch between them. A photo gallery plugin is included as an example.

TODO: the one little niggle is that the 'close' button on Javascript previews for the images in the photogallery don't display. I will make another attempt after the weekend ...

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • devel/mod/file/lib.php

    r840 r845  
    226226         
    227227    } 
     228     
     229    function file_folder_type_switcher($folder, $label) { 
     230         
     231        global $CFG; 
     232        $html = ""; 
     233        if (is_array($CFG->folders->handler)) { 
     234            foreach($CFG->folders->handler as $key => $handler) { 
     235                $html .= "<option value=\"" . $key . "\""; 
     236                if ($key == $folder->handler) { 
     237                    $html .= " selected=\"selected\""; 
     238                } 
     239                $html .= ">" . $handler['menuitem'] . "</option>"; 
     240            } 
     241        } 
     242        $html = "<select name=\"$label\">$html</select"; 
     243        return $html; 
     244         
     245    } 
    228246 
    229247?> 
  • devel/units/files/edit_folder.php

    r827 r845  
    1717    $folder_details = get_record('file_folders','ident',$this_folder); 
    1818    if (!empty($folder)  && (run("permissions:check", array("files:edit",$folder_details->owner)) || run("permissions:check", array("files:edit",$folder_details->files_owner)))) { 
    19         $edit = __gettext("Edit this folder"); // gettext variable 
     19        // $edit = __gettext("Edit this folder"); // gettext variable 
    2020        $run_result .= <<< END 
    21     <h3> 
    22         $edit 
    23     </h3> 
    2421    <form action="" method="post"> 
    2522END; 
     
    2724        $parentFolder = __gettext("Parent folder:"); // gettext variable 
    2825        $folderType = __gettext("Folder type:"); // gettext variable 
     26        $folderTypePicker = file_folder_type_switcher($folder_details, "edit_folder_type"); 
    2927        $body = <<< END 
    3028        <table width="100%"> 
     
    4139            <tr> 
    4240                <td> 
     41                    <p><label for="new_folder_type">$folderType</label></p> 
     42                </td> 
     43                <td> 
     44                    <p>$folderTypePicker</p> 
     45                </td> 
     46            </tr> 
     47            <tr> 
     48                <td> 
    4349                    <p><label for="edit_folder_parent"> 
    4450                        $parentFolder 
     
    6066                <td><p> 
    6167END; 
     68 
     69         
     70 
    6271        $body .= run("display:access_level_select",array("edit_folder_access",$folder_details->access)); 
    6372        $keywords = __gettext("Keywords (comma separated):"); // gettext variable 
     
    109118$createLabel = __gettext("To create a new folder, enter its name:"); //gettext variable 
    110119$accessLabel = __gettext("Access restrictions:"); //gettext variable 
     120$folderType = __gettext("Folder type:"); // gettext variable 
     121$folderTypePicker = file_folder_type_switcher(null, "edit_folder_type"); 
    111122 
    112123$body = <<< END 
     
    121132                    <input type="text" name="new_folder_name" id="new_folder_name" value="" /> 
    122133                    </p> 
     134                </td> 
     135            </tr> 
     136            <tr> 
     137                <td> 
     138                    <p><label for="new_folder_type">$folderType</label></p> 
     139                </td> 
     140                <td> 
     141                    <p>$folderTypePicker</p> 
    123142                </td> 
    124143            </tr> 
     
    194213$fileDesc = __gettext("File Description:"); //gettext variable 
    195214$fileAccess = __gettext("Access restrictions:"); //gettext variable 
    196  
    197  
    198215$body .= <<< END 
    199216                </p></td> 
  • devel/units/files/files_actions.php

    r839 r845  
    2121            $f->files_owner = $page_owner; 
    2222            $f->owner = $USER->ident; 
     23            $f->handler = trim(optional_param('edit_folder_type')); 
    2324            $f = plugin_hook("folder","create",$f); 
    2425            if (!empty($f)) { 
     
    147148        $f->name = trim(optional_param('edit_folder_name')); 
    148149        $f->access = trim(optional_param('edit_folder_access')); 
     150        $f->handler = trim(optional_param('edit_folder_type')); 
    149151        $f->parent = optional_param('edit_folder_parent',0,PARAM_INT); 
    150152        if (!empty($f->ident) && !empty($f->name) && !empty($f->access) && !empty($f->parent)) {