function getFolders($parent, $level = 0) { global $AppUI, $allowed_folders_ary, $denied_folders_ary, $tab, $m, $a, $company_id, $allowed_companies, $project_id, $task_id, $current_uri, $file_types; // retrieve all children of $parent $file_folder = new CFileFolder(); $folders = $file_folder->getFoldersByParent($parent); $s = ''; // display each child foreach ($folders as $row) { if (array_key_exists($row['file_folder_id'], $allowed_folders_ary) or array_key_exists($parent, $allowed_folders_ary)) { $file_count = countFiles($row['file_folder_id']); $s .= '<tr><td colspan="20">'; if ($m == 'files') { $s .= '<a href="./index.php?m=' . $m . '&a=' . $a . '&tab=' . $tab . '&folder=' . $row['file_folder_id'] . '" name="ff' . $row['file_folder_id'] . '">'; } $s .= '<img src="' . w2PfindImage('folder5_small.png', 'files') . '" width="16" height="16" style="float: left; border: 0px;" />'; $s .= $row['file_folder_name']; if ($m == 'files') { $s .= '</a>'; } if ($file_count > 0) { $s .= ' <a href="javascript: void(0);" onClick="expand(\'files_' . $row['file_folder_id'] . '\')" class="has-files">(' . $file_count . ' files) +</a>'; } $s .= '<form name="frm_remove_folder_' . $row['file_folder_id'] . '" action="?m=files" method="post" accept-charset="utf-8"> <input type="hidden" name="dosql" value="do_folder_aed" /> <input type="hidden" name="del" value="1" /> <input type="hidden" name="file_folder_id" value="' . $row['file_folder_id'] . '" /> </form>'; $s .= '<a style="float:left;" href="./index.php?m=files&a=addedit_folder&folder=' . $row['file_folder_id'] . '">' . w2PshowImage('filesaveas.png', '16', '16', 'edit icon', 'edit this folder', 'files') . '</a>' . '<a style="float:left;" href="./index.php?m=files&a=addedit_folder&file_folder_parent=' . $row['file_folder_id'] . '&file_folder_id=0">' . w2PshowImage('edit_add.png', '', '', 'new folder', 'add a new subfolder', 'files') . '</a>' . '<a style="float:right;" href="javascript: void(0);" onclick="if (confirm(\'Are you sure you want to delete this folder?\')) {document.frm_remove_folder_' . $row['file_folder_id'] . '.submit()}">' . w2PshowImage('remove.png', '', '', 'delete icon', 'delete this folder', 'files') . '</a>' . '<a style="float:left;" href="./index.php?m=files&a=addedit&folder=' . $row['file_folder_id'] . '&project_id=' . $project_id . '&file_id=0">' . w2PshowImage('folder_new.png', '', '', 'new file', 'add new file to this folder', 'files') . '</a>'; $s .= '</td></tr>'; if ($file_count > 0) { $s .= '<div class="files-list" id="files_' . $row['file_folder_id'] . '" style="display: none;">'; $s .= displayFiles($AppUI, $row['file_folder_id'], $task_id, $project_id, $company_id); $s .= "</div>"; } } } return $s; }
function getFolders($parent, $level = 0) { global $AppUI, $allowed_folders_ary, $denied_folders_ary, $tab, $m, $a, $company_id, $allowed_companies, $project_id, $task_id, $current_uri, $file_types; // retrieve all children of $parent $file_folder = new CFileFolder(); $folders = $file_folder->getFoldersByParent($parent); $s = ''; // display each child foreach ($folders as $row) { if (array_key_exists($row['file_folder_id'], $allowed_folders_ary) or array_key_exists($parent, $allowed_folders_ary)) { $file_count = countFiles($row['file_folder_id']); $s .= '<tr><td colspan="20">'; if ($m == 'files') { $s .= '<a href="./index.php?m=' . $m . '&a=' . $a . '&tab=' . $tab . '&folder=' . $row['file_folder_id'] . '" name="ff' . $row['file_folder_id'] . '">'; } $s .= '<img src="' . w2PfindImage('folder5_small.png', 'files') . '" width="16" height="16" style="float: left; border: 0px;" />'; $s .= $row['file_folder_name']; if ($m == 'files') { $s .= '</a>'; } if ($file_count > 0) { $s .= ' <a href="javascript: void(0);" onClick="expand(\'files_' . $row['file_folder_id'] . '\')" class="has-files">(' . $file_count . ' files) +</a>'; } $s .= '<form name="frm_remove_folder_' . $row['file_folder_id'] . '" action="?m=files" method="post" accept-charset="utf-8"> <input type="hidden" name="dosql" value="do_folder_aed" /> <input type="hidden" name="del" value="1" /> <input type="hidden" name="file_folder_id" value="' . $row['file_folder_id'] . '" /> </form>'; $s .= '<a style="float:left;" href="./index.php?m=files&a=addedit_folder&folder=' . $row['file_folder_id'] . '">' . w2PshowImage('filesaveas.png', '16', '16', 'edit icon', 'edit this folder', 'files') . '</a>' . '<a style="float:left;" href="./index.php?m=files&a=addedit_folder&file_folder_parent=' . $row['file_folder_id'] . '&file_folder_id=0">' . w2PshowImage('edit_add.png', '', '', 'new folder', 'add a new subfolder', 'files') . '</a>' . '<a style="float:right;" href="javascript: void(0);" onclick="if (confirm(\'Are you sure you want to delete this folder?\')) {document.frm_remove_folder_' . $row['file_folder_id'] . '.submit()}">' . w2PshowImage('remove.png', '', '', 'delete icon', 'delete this folder', 'files') . '</a>' . '<a style="float:left;" href="./index.php?m=files&a=addedit&folder=' . $row['file_folder_id'] . '&project_id=' . $project_id . '&file_id=0">' . w2PshowImage('folder_new.png', '', '', 'new file', 'add new file to this folder', 'files') . '</a>'; $s .= '</td></tr>'; if ($file_count > 0) { $s .= '<div class="files-list" id="files_' . $row['file_folder_id'] . '" style="display: none;">'; $s .= displayFiles($AppUI, $row['file_folder_id'], $task_id, $project_id, $company_id); $s .= "</div>"; } } // call this function again to display this // child's children // getFolders *always* returns true, so there's no point in checking it //$s .= getFolders($row['file_folder_id'], $level + 1).'</li></ul>'; } /* * getFolders would *alway* return true and would echo the results. It * makes more sense to simply return the results. Then the calling code can * echo it, capture it for parsing, or whatever else needs to be done. There * should be less inadvertent actions as a result. */ return $s; }