![]() |
|---|
| [ Index ] |
Source Code Reference for V1.00 |
[Summary view] [Print] [Text view]
1 <?php /* $Id: viewgantt.php 115 2008-03-21 17:20:33Z pedroix $ $URL: https://web2project.svn.sourceforge.net/svnroot/web2project/trunk/modules/projects/viewgantt.php $ */ 2 if (!defined('W2P_BASE_DIR')) { 3 die('You should not access this file directly.'); 4 } 5 6 global $AppUI, $company_id, $dept_ids, $department, $min_view, $m, $a, $user_id, $tab, $cal_sdf; 7 $AppUI->loadCalendarJS(); 8 9 $min_view = defVal($min_view, false); 10 $project_id = defVal(w2PgetParam($_GET, 'project_id', null), 0); 11 $user_id = defVal(w2PgetParam($_GET, 'user_id', null), $AppUI->user_id); 12 // sdate and edate passed as unix time stamps 13 $sdate = w2PgetParam($_POST, 'project_start_date', 0); 14 $edate = w2PgetParam($_POST, 'project_end_date', 0); 15 $showInactive = w2PgetParam($_POST, 'showInactive', '0'); 16 $showLabels = w2PgetParam($_POST, 'showLabels', '0'); 17 $sortTasksByName = w2PgetParam($_POST, 'sortTasksByName', '0'); 18 $showAllGantt = w2PgetParam($_POST, 'showAllGantt', '0'); 19 $showTaskGantt = w2PgetParam($_POST, 'showTaskGantt', '0'); 20 $addPwOiD = w2PgetParam($_POST, 'add_pwoid', isset($addPwOiD) ? $addPwOiD : 0); 21 22 //if set GantChart includes user labels as captions of every GantBar 23 if ($showLabels != '0') { 24 $showLabels = '1'; 25 } 26 if ($showInactive != '0') { 27 $showInactive = '1'; 28 } 29 30 if ($showAllGantt != '0') { 31 $showAllGantt = '1'; 32 } 33 34 $projectStatus = w2PgetSysVal('ProjectStatus'); 35 36 if (isset($_POST['proFilter'])) { 37 $AppUI->setState('ProjectIdxFilter', $_POST['proFilter']); 38 } 39 $proFilter = $AppUI->getState('ProjectIdxFilter') !== null ? $AppUI->getState('ProjectIdxFilter') : '-1'; 40 41 $projFilter = arrayMerge(array('-1' => 'All Projects'), $projectStatus); 42 if ($AppUI->user_id == $user_id) { 43 $projFilter = arrayMerge(array('-3' => 'My projects'), $projFilter); 44 } else { 45 $projFilter = arrayMerge(array('-3' => 'User\'s projects'), $projFilter); 46 } 47 48 natsort($projFilter); 49 50 // months to scroll 51 $scroll_date = 1; 52 53 $display_option = w2PgetParam($_POST, 'display_option', 'this_month'); 54 55 // format dates 56 $df = $AppUI->getPref('SHDATEFORMAT'); 57 58 if ($display_option == 'custom') { 59 // custom dates 60 $start_date = intval($sdate) ? new CDate($sdate) : new CDate(); 61 $end_date = intval($edate) ? new CDate($edate) : new CDate(); 62 } else { 63 // month 64 $start_date = new CDate(); 65 $start_date->day = 1; 66 $end_date = new CDate($start_date); 67 $end_date->addMonths($scroll_date); 68 } 69 70 // setup the title block 71 if (!$min_view) { 72 $titleBlock = new CTitleBlock('Gantt Chart', 'applet-48.png', $m, $m . '.' . $a); 73 $titleBlock->addCrumb('?m=' . $m, 'projects list'); 74 $titleBlock->show(); 75 } 76 77 ?> 78 79 <script language="javascript"> 80 function setDate( frm_name, f_date ) { 81 fld_date = eval( 'document.' + frm_name + '.' + f_date ); 82 fld_real_date = eval( 'document.' + frm_name + '.' + 'project_' + f_date ); 83 if (fld_date.value.length>0) { 84 if ((parseDate(fld_date.value))==null) { 85 alert('The Date/Time you typed does not match your prefered format, please retype.'); 86 fld_real_date.value = ''; 87 fld_date.style.backgroundColor = 'red'; 88 } else { 89 fld_real_date.value = formatDate(parseDate(fld_date.value), 'yyyyMMdd'); 90 fld_date.value = formatDate(parseDate(fld_date.value), '<?php echo $cal_sdf ?>'); 91 fld_date.style.backgroundColor = ''; 92 } 93 } else { 94 fld_real_date.value = ''; 95 } 96 } 97 98 function scrollPrev() { 99 f = document.editFrm; 100 <?php 101 $new_start = new CDate($start_date); 102 $new_start->day = 1; 103 $new_end = new CDate($end_date); 104 $new_start->addMonths(-$scroll_date); 105 $new_end->addMonths(-$scroll_date); 106 107 echo "f.project_start_date.value='" . $new_start->format(FMT_TIMESTAMP_DATE) . "';"; 108 echo "f.project_end_date.value='" . $new_end->format(FMT_TIMESTAMP_DATE) . "';"; 109 ?> 110 document.editFrm.display_option.value = 'custom'; 111 f.submit() 112 } 113 114 function scrollNext() { 115 f = document.editFrm; 116 <?php 117 $new_start = new CDate($start_date); 118 $new_start->day = 1; 119 $new_end = new CDate($end_date); 120 $new_start->addMonths($scroll_date); 121 $new_end->addMonths($scroll_date); 122 echo "f.project_start_date.value='" . $new_start->format(FMT_TIMESTAMP_DATE) . "';"; 123 echo "f.project_end_date.value='" . $new_end->format(FMT_TIMESTAMP_DATE) . "';"; 124 ?> 125 document.editFrm.display_option.value = 'custom'; 126 f.submit() 127 } 128 129 function showThisMonth() { 130 document.editFrm.display_option.value = 'this_month'; 131 document.editFrm.submit(); 132 } 133 134 function showFullProject() { 135 document.editFrm.display_option.value = 'all'; 136 document.editFrm.submit(); 137 } 138 139 </script> 140 <table class="tbl" width="100%" border="0" cellpadding="4" cellspacing="0"> 141 <tr> 142 <td> 143 <table border="0" cellpadding="4" cellspacing="0" class="tbl"> 144 <form name="editFrm" method="post" action="?<?php echo 'm=' . $m . '&a=' . $a . (isset($user_id) ? '&user_id=' . $user_id : '') . '&tab=' . $tab; ?>"> 145 <input type="hidden" name="display_option" value="<?php echo $display_option; ?>" /> 146 147 <tr> 148 <td align="left" valign="top" width="20"> 149 <?php if ($display_option != "all") { ?> 150 <a href="javascript:scrollPrev()"> 151 <img src="<?php echo w2PfindImage('prev.gif'); ?>" width="16" height="16" alt="<?php echo $AppUI->_('previous'); ?>" border="0"> 152 </a> 153 <?php } ?> 154 </td> 155 156 <td align="right" nowrap="nowrap"><?php echo $AppUI->_('From'); ?>:</td> 157 <td align="left" nowrap="nowrap"> 158 <input type="hidden" name="project_start_date" id="project_start_date" value="<?php echo $start_date ? $start_date->format(FMT_TIMESTAMP_DATE) : ''; ?>" /> 159 <input type="text" name="start_date" id="start_date" onchange="setDate('editFrm', 'start_date');" value="<?php echo $start_date ? $start_date->format($df) : ''; ?>" class="text" /> 160 <a href="javascript: void(0);" onclick="return showCalendar('start_date', '<?php echo $df ?>', 'editFrm', null, true)"> 161 <img src="<?php echo w2PfindImage('calendar.gif'); ?>" width="24" height="12" alt="" border="0" /></a> 162 </td> 163 164 <td align="right" nowrap="nowrap"><?php echo $AppUI->_('To'); ?>:</td> 165 <td align="left" nowrap="nowrap"> 166 <input type="hidden" name="project_end_date" id="project_end_date" value="<?php echo $end_date ? $end_date->format(FMT_TIMESTAMP_DATE) : ''; ?>" /> 167 <input type="text" name="end_date" id="end_date" onchange="setDate('editFrm', 'end_date');" value="<?php echo $end_date ? $end_date->format($df) : ''; ?>" class="text" /> 168 <a href="javascript: void(0);" onclick="return showCalendar('end_date', '<?php echo $df ?>', 'editFrm', null, true)"> 169 <img src="<?php echo w2PfindImage('calendar.gif'); ?>" width="24" height="12" alt="" border="0" /></a> 170 <td> 171 <?php echo arraySelect($projFilter, 'proFilter', 'size="1" class="text"', $proFilter, true); ?> 172 </td> 173 <td> 174 <input type="checkbox" name="showLabels" id="showLabels" value="1" <?php echo (($showLabels == 1) ? 'checked="checked"' : ""); ?> /><td><label for="showLabels"><?php echo $AppUI->_('Show captions'); ?></label></td> 175 </td> 176 <td> 177 <input type="checkbox" value="1" name="showInactive" id="showInactive" <?php echo (($showInactive == 1) ? 'checked="checked"' : ""); ?> /><td><label for="showInactive"><?php echo $AppUI->_('Show Archived/Templates'); ?></label></td> 178 </td> 179 <td> 180 <input type="checkbox" value="1" name="showAllGantt" id="showAllGantt" <?php echo (($showAllGantt == 1) ? 'checked="checked"' : ""); ?> /><td><label for="showAllGantt"><?php echo $AppUI->_('Show Tasks'); ?></label></td> 181 </td> 182 <td valign="top"> 183 <input type="checkbox" value="1" name="sortTasksByName" id="sortTasksByName" <?php echo (($sortTasksByName == 1) ? 'checked="checked"' : ""); ?> /><td><label for="sortTasksByName"><?php echo $AppUI->_('Sort Tasks By Name'); ?></label></td> 184 </td> 185 <td align="left"> 186 <input type="button" class="button" value="<?php echo $AppUI->_('submit'); ?>" onclick='document.editFrm.display_option.value="custom";submit();' /> 187 </td> 188 189 <td align="right" valign="top" width="20"> 190 <?php if ($display_option != 'all') { ?> 191 <a href="javascript:scrollNext()"> 192 <img src="<?php echo w2PfindImage('next.gif'); ?>" width="16" height="16" alt="<?php echo $AppUI->_('next'); ?>" border="0" /> 193 </a> 194 <?php } ?> 195 </td> 196 </tr> 197 </form> 198 <tr> 199 <td align="center" valign="bottom" colspan="16"> 200 <?php echo "<a href='javascript:showThisMonth()'>" . $AppUI->_('show this month') . "</a> : <a href='javascript:showFullProject()'>" . $AppUI->_('show all') . "</a><br>"; ?> 201 </td> 202 </tr> 203 </table> 204 <table cellspacing="0" cellpadding="0" border="1" align="center" class="tbl"> 205 <tr> 206 <td> 207 <?php 208 $src = '?m=projects&a=gantt&suppressHeaders=1' . ($display_option == 'all' ? '' : '&start_date=' . $start_date->format('%Y-%m-%d') . '&end_date=' . $end_date->format('%Y-%m-%d')) . "&width=' + ((navigator.appName=='Netscape'?window.innerWidth:document.body.offsetWidth)*0.95) + '&showLabels=$showLabels&sortTasksByName=$sortTasksByName&proFilter=$proFilter&showInactive=$showInactive&company_id=$company_id&department=$department&dept_ids=$dept_ids&showAllGantt=$showAllGantt&user_id=$user_id&addPwOiD=$addPwOiD"; 209 echo "<script>document.write('<img src=\"$src\">')</script>"; 210 ?> 211 </td> 212 </tr> 213 </table> 214 </td> 215 </tr> 216 </table>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Fri Jan 9 03:00:02 2009 | Cross-referenced by PHPXref 0.7 |