=====Listfiles Action===== >>==See also:== Documentation: ListfilesActionInfo.>>This is the development page for the Listfiles action.::c:: This is another (complete) transformation of the files action from Mod015fFilesAction (check also the FilesManagementHandler). It allows to get the links to the attached files but not to upload nor to delete any. ===Dependancy=== This relies of the [[WikkaBugsResolved | ExistsPage]] function developed by JavaWoman and part of release 1.1.6.0. You can find this version at WikkaBugsResolved under the heading "check of user-names against page-names".. ===The code=== %%(php) GetPageTag(); $uFile = $vars['file']; if ($uFile) $file = $uFile; // it is not useful to provide a title if there is no file parameter if ($file) { $uTitle = $vars['title']; if ($uTitle) $title = $uTitle; } // ***** End PARAMETERS Interface ***** // ***** MAIN SECTION ***** // check if the page exists (the function exists from wikka 1.1.6.0) if ($this->ExistsPage($page)) { // check if the user is allowed to read if ($this->HasAccess('read', $page)) { // upload path $upload_path = $this->config['upload_path'].'/'.$page; // check if the upload path does not exist if(is_dir($upload_path) ){ $handle = opendir($upload_path); while( (gettype( $name = readdir($handle)) != "boolean")){ $name_array[] = $name; } foreach($name_array as $temp) $folder_content .= $temp; closedir($handle); if($folder_content == "...") { print "
"; // the upload path is empty print "There are no files attached to this page."; } else { // uploaded files $dir = opendir($upload_path); // if a file parameter has been provided if ($file) { $pathandfile = $upload_path."/".urlencode($file); if (file_exists($pathandfile)) { print "
"; // only one file to list if ($title) $thetitle = $title; else $thetitle = $file; $download_link = "".$thetitle.""; print $download_link; } else { print "
"; print "The file (".$file.") does not exist on this page (".$page.")."; } } // all files have to be listed else { print "
"; // the upload path contains attachements while ($file = readdir($dir)) { if ($file != '.' && $file != '..') { $download_link = "".$file.""; print $download_link; print '
'; } } } closedir($dir); } } else { print "
"; // the upload path does not exist print "There is no attachement folder linked to this page (".$page.")."; } } // the users is not allowed to read the page else { print "
"; print "You are not allowed to read this page (".$page.")."; } } // the page doesn't exist else { print "
"; print "The page (".$page.") does not exist."; } print "
"; // ***** End MAIN SECTION ***** ?> %% Then add some nice CSS to the stylesheet file: %%(css) .fulllist { border: 2px solid #CCAAAA; background-color: #cccccc; padding: 0px; margin: 0px; } .emptylist { } .singlelist { } .inexistinglist { } .errorlist{ } %% ===To Do=== Nothing I can think about right now. ---- CategoryDevelopmentActions