3 * GForge Doc Mgr Facility
5 * Copyright 2002 GForge, LLC
14 by Quentin Cregan, SourceForge 06/2000
16 Complete OO rewrite by Tim Perdue 1/2003
19 require_once('../env.inc.php');
20 require_once $gfwww.'include/pre.php';
21 require_once $gfwww.'docman/include/doc_utils.php';
22 require_once $gfcommon.'docman/DocumentFactory.class.php';
23 require_once $gfcommon.'docman/DocumentGroupFactory.class.php';
26 EXPERIMENTAL CODE TO USE JAVASCRIPT TREE
28 function docman_recursive_display($docgroup) {
29 global $nested_groups,$nested_docs,$group_id;
30 if (is_array(@$nested_groups[$docgroup])) {
31 foreach ($nested_groups[$docgroup] as $dg) {
33 ['".'<span class="JSCookTreeFolderClosed"><i><img alt="" src="\' + ctThemeXPBase + \'folder1.gif" /></i></span><span class="JSCookTreeFolderOpen"><i><img alt="" src="\' + ctThemeXPBase + \'folderopen1.gif"></i></span>'."', '".$dg->getName()."', '#', '', '',";
34 docman_recursive_display($dg->getID());
35 if (isset($nested_docs[$dg->getID()]) && is_array($nested_docs[$dg->getID()])) {
36 foreach ($nested_docs[$dg->getID()] as $d) {
37 $docurl=util_make_url ('/docman/view.php/'.$group_id.'/'.$d->getID().'/'.urlencode($d->getFileName()));
38 $docname=addslashes($d->getName())." (".addslashes($d->getFileName()).")";
39 $docdesc=addslashes($d->getDescription());
40 echo ",['','".$docname."','".$docurl."','','".$docdesc."' ]";
50 $group_id = getIntFromRequest('group_id');
51 $language_id = getStringFromRequest('language_id');
56 $g =& group_get_object($group_id);
57 if (!$g || !is_object($g) || $g->isError()) {
61 $df = new DocumentFactory($g);
63 exit_error(_('Error'),$df->getErrorMessage());
66 $dgf = new DocumentGroupFactory($g);
67 if ($dgf->isError()) {
68 exit_error(_('Error'),$dgf->getErrorMessage());
72 // Save chosen language in docman and print document details in documents list
75 setcookie("my_language_id", "$language_id", time()+3600*24*999);
77 if (!$language_id && isset($_COOKIE["my_language_id"]))
79 $language_id = $_COOKIE["my_language_id"];
82 // the "selected language" variable will be used in the links to navigate the
83 // document groups tree
86 if (session_loggedin()) {
87 $language_id = $LUSER->getLanguage();
92 $selected_language = $language_id;
93 } else if ($language_id == "*") {
95 $selected_language = "*";
97 $selected_language = $language_id;
100 // check if the user is docman's admin
101 $perm =& $g->getPermission( session_get_user() );
102 if (!$perm || $perm->isError() || !$perm->isDocEditor()) {
108 $df->setLanguageID($language_id);
110 docman_header(_('Document Manager: Display Document'),_('Project: %1$s'));
112 $d_arr =& $df->getDocuments();
113 if (!$d_arr || count($d_arr) <1){
114 $df->setLanguageId(0);
115 $d_arr = &$df->getDocuments();
118 if (!$d_arr || count($d_arr) < 1) {
119 print "<strong>"._('This project has no visible documents')."</strong>";
121 doc_droplist_count($group_id, $language_id, $g);
123 // Get the document groups info
124 $nested_groups =& $dgf->getNested();
126 $nested_docs=array();
127 //put the doc objects into an array keyed off the docgroup
128 foreach ($d_arr as $doc) {
129 $nested_docs[$doc->getDocGroupID()][] = $doc;
132 <script language="JavaScript"><!--
133 var myThemeXPBase = "<?php echo util_make_url ('/jscook/ThemeXP/'); ?>";
135 <script language="JavaScript" src="<?php echo util_make_url ('/jscook/JSCookTree.js'); ?>"></script>
136 <link rel="stylesheet" href="<?php echo util_make_url ('/jscook/ThemeXP/theme.css'); ?>" type="text/css" />
137 <script src="<?php echo util_make_url ('/jscook/ThemeXP/theme.js'); ?>" type="text/javascript"></script>
141 <input style="width: 100px" type="button" value="<?php echo _('expand all'); ?>" onclick="ctExpandTree('myMenuID',9);" />
142 <input style="width: 100px" type="button" value="<?php echo _('collapse all'); ?>" onclick="ctCollapseTree('myMenuID');" />
145 <div id="myMenuID"></div>
147 <script language="JavaScript"><!--
150 ['<span class="JSCookTreeFolderClosed"><i><img alt="" src="' + ctThemeXPBase + 'folder1.gif" /></i></span><span class="JSCookTreeFolderOpen"><i><img alt="" src="' + ctThemeXPBase + 'folderopen1.gif" /></i></span>', '/', '#', '', '', <?php docman_recursive_display(0); ?>
153 ctDraw ('myMenuID', myMenu, ctThemeXP1, 'ThemeXP', 0, 1);
157 <?php docman_display_documents($nested_groups,$df,$is_editor); ?>
161 docman_footer(array());
165 // c-file-style: "bsd"