3 * GForge Doc Mgr Facility
5 * Copyright 2002 GForge, LLC
15 by Quentin Cregan, SourceForge 06/2000
17 Complete OO rewrite by Tim Perdue 1/2003
20 require_once('pre.php');
21 require_once('include/doc_utils.php');
22 require_once('common/docman/DocumentFactory.class');
23 require_once('common/docman/DocumentGroupFactory.class');
25 $group_id = getIntFromRequest('group_id');
26 $language_id = getStringFromRequest('language_id');
31 $g =& group_get_object($group_id);
32 if (!$g || !is_object($g) || $g->isError()) {
36 $df = new DocumentFactory($g);
38 exit_error($Language->getText('general','error'),$df->getErrorMessage());
41 $dgf = new DocumentGroupFactory($g);
42 if ($dgf->isError()) {
43 exit_error($Language->getText('general','error'),$dgf->getErrorMessage());
46 // the "selected language" variable will be used in the links to navigate the
47 // document groups tree
50 if (session_loggedin()) {
51 $language_id = $LUSER->getLanguage();
56 $selected_language = $language_id;
57 } else if ($language_id == "*") {
59 $selected_language = "*";
61 $selected_language = $language_id;
64 // check if the user is docman's admin
65 $perm =& $g->getPermission( session_get_user() );
66 if (!$perm || $perm->isError() || !$perm->isDocEditor()) {
72 $df->setLanguageID($language_id);
74 docman_header($Language->getText('docman_display_doc','title'),$Language->getText('docman_display_doc','section'));
76 $d_arr =& $df->getDocuments();
77 if (!$d_arr || count($d_arr) <1){
78 $df->setLanguageId(0);
79 $d_arr = &$df->getDocuments();
82 if (!$d_arr || count($d_arr) < 1) {
83 print "<strong>".$Language->getText('docman','error_no_docs')."</strong>";
85 doc_droplist_count($group_id, $language_id, $g);
87 // Get the document groups info
88 $nested_groups =& $dgf->getNested();
91 //put the doc objects into an array keyed off the docgroup
92 foreach ($d_arr as $doc) {
93 $nested_docs[$doc->getDocGroupID()][] = $doc;
97 EXPERIMENTAL CODE TO USE JAVASCRIPT TREE
99 function docman_recursive_display($docgroup) {
100 global $nested_groups,$nested_docs,$group_id;
101 if (is_array($nested_groups[$docgroup])) {
102 foreach ($nested_groups[$docgroup] as $dg) {
103 $folder = '<span class="JSCookTreeFolderClosed"><i><img src=\"/jscook/ThemeXP/folder1.gif\"></i></span><span class="JSCookTreeFolderOpen"><i><img src=\"/jscook/ThemeXP/folderopen1.gif\"></i></span>';
104 echo "\n['$folder', '".$dg->getName()."', '#', '', '',";
105 docman_recursive_display($dg->getID());
106 if (is_array($nested_docs[$dg->getID()])) {
107 foreach ($nested_docs[$dg->getID()] as $d) {
108 echo "\n\t,['<img src=\"/jscook/ThemeXP/page.gif\">', '".addslashes($d->getName())." (".$d->getFileName().")', '/docman/view.php/".$group_id."/".$d->getID()."/".$d->getFileName()."', '', '".addslashes($d->getDescription())."']";
118 <script language="JavaScript" src="/jscook/JSCookTree.js"></script>
119 <link rel="stylesheet" href="/jscook/ThemeXP/theme.css" type="text/css" />
120 <script src="/jscook/ThemeXP/theme.js" type="text/javascript"></script>
122 <script language="JavaScript"><!--
125 ['<span class="JSCookTreeFolderClosed"><i><img src="/jscook/ThemeXP/folder1.gif"></i></span><span class="JSCookTreeFolderOpen"><i><img src="/jscook/ThemeXP/folderopen1.gif"></i></span>', '/', '#', '', '',
127 docman_recursive_display(0);
132 <div id="myMenuID"></div>
134 <script language="JavaScript"><!--
135 ctDraw ('myMenuID', myMenu, ctThemeXP1, 'ThemeXP', 0, 1);
140 docman_display_documents($nested_groups,$df,$is_editor);
144 docman_footer(array());