| [ PHPXref.com ] | [ Generated: Sun Jul 20 19:53:39 2008 ] | [ PHProjekt 5.0.1 ] |
| [ Index ] [ Variables ] [ Functions ] [ Classes ] [ Constants ] [ Statistics ] | ||
[Summary view] [Print] [Text view]
1 <?php 2 3 // err_pro.php - PHProjekt Version 5.0 4 // copyright © 2000-2005 Albrecht Guenther ag@phprojekt.com 5 // www.phprojekt.com 6 // Author: Albrecht Guenther, $Author: nina $ 7 // $Id: err_pro.php,v 1.13 2005/06/29 21:41:09 nina Exp $ 8 9 // check whether the lib has been included - authentication! 10 if (!defined("lib_included")) die("Please use index.php!"); 11 12 13 if ($cancel) { 14 include_once ("./projects_view.php"); 15 } 16 else if ($upanf) { 17 $olddate = explode('-',$anfang); 18 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$diffa, $olddate[0])); 19 $_POST['anfang'] = $newdate; 20 $anfang=$newdate; 21 $_POST['upanf'] = ""; 22 include_once ("./projects_data.php"); 23 } 24 else if ($upboth) { 25 $olddate = explode('-',$anfang); 26 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$diffa, $olddate[0])); 27 $anfang = $newdate; 28 $_POST['anfang'] = $newdate; 29 $olddate = explode('-',$ende); 30 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$diffe, $olddate[0])); 31 $ende = $newdate; 32 $_POST['ende'] = $newdate; 33 $_POST['upboth'] = ""; 34 include_once ("./projects_data.php"); 35 } 36 else if ($upende) { 37 $olddate = explode('-',$ende); 38 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$diffe, $olddate[0])); 39 $ende = $newdate; 40 $_POST['ende'] = $newdate; 41 $_POST['upende'] = ""; 42 include_once ("./projects_data.php"); 43 } 44 else if ($downboth) { 45 move_for($parent,'ende',$diffe); 46 move_for_down($ID,'ende',$diffe); 47 move_back($parent,'anfang',$diffa); 48 move_back_down1($ID,'anfang',$anfang); 49 $_POST['donwboth'] = ""; 50 include_once ("./projects_data.php"); 51 } 52 else if ($downanf) { 53 move_back($parent,'anfang',$diffa); 54 #move_back_down1($ID,'anfang',$anfang); 55 $_POST['downanf'] = ""; 56 include_once ("./projects_data.php"); 57 } 58 else if ($downende) { 59 move_for($parent,'ende',$diffe); 60 #move_for_down($ID,'ende',$diffe); 61 $_POST['downende'] = ""; 62 include_once ("./projects_data.php"); 63 } 64 else if ($upanf1) { 65 $olddate = explode('-',$anfang); 66 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$diffa, $olddate[0])); 67 $_POST['anfang'] = $newdate; 68 $anfang=$newdate; 69 $_POST['upanf1'] = ""; 70 $uproj= $arr_empt; 71 include_once ("./projects_data.php"); 72 } 73 else if ($upboth1) { 74 $olddate = explode('-',$anfang); 75 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$diffa, $olddate[0])); 76 $anfang = $newdate; 77 $_POST['anfang'] = $newdate; 78 $olddate = explode('-',$ende); 79 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$diffe, $olddate[0])); 80 $ende = $newdate; 81 $_POST['ende'] = $newdate; 82 $_POST['upboth1'] = ""; 83 $uproj= $arr_empt; 84 include_once ("./projects_data.php"); 85 } 86 else if ($upende1) { 87 $olddate = explode('-',$ende); 88 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$diffe, $olddate[0])); 89 $ende = $newdate; 90 $uproj= $arr_empt; 91 $_POST['upende1'] = ""; 92 $_POST['ende'] = $newdate; 93 include_once ("./projects_data.php"); 94 } 95 else if ($downboth1) { 96 //move_back($parent,'ende',$diffe); 97 move_back_down($ID,'ende',$diffe); 98 //move_for($parent,'anfang',$diffa); 99 move_for_down($ID,'anfang',$diffa); 100 $uproj= $arr_empt; 101 $_POST['downboth1'] = ""; 102 include_once ("./projects_data.php"); 103 } 104 else if ($downanf1) { 105 //move_back($parent,'anfang',$diffa); 106 move_for_down($ID,'anfang',$diffa); 107 $uproj= $arr_empt; 108 $_POST['downanf1'] = ""; 109 include_once ("./projects_data.php"); 110 } 111 else if ($downende1) { 112 //move_for($parent,'ende',$diffe); 113 move_back_down1($ID,'ende',$ende); 114 $uproj= $arr_empt; 115 $_POST['downende1'] = ""; 116 include_once ("./projects_data.php"); 117 } 118 else { 119 include_once ("./projects_data.php"); 120 } 121 122 123 function oerror($parent) { 124 global $anfang, $ende; 125 126 $ana = $anfang; 127 $ena = $ende; 128 129 // the project is subproject? check whether the start and end time is within the limits of the parent project 130 $result2 = db_query("select anfang, ende,ID 131 from ".DB_PREFIX."projekte 132 where ID = '$parent'") or db_die(); 133 $row2 = db_fetch_row($result2); 134 // timespan exceeds timespan of parent -> die ... 135 $anfang = makeTime($anfang); 136 $anfangalt = makeTime($row2[0]); 137 $ende = makeTime($ende); 138 $endealt = makeTime($row2[1]); 139 if ($anfang < $anfangalt or $ende > $endealt) { 140 $diffa = $anfangalt-$anfang; 141 $diffa = floor($diffa/60/60/24); 142 $diffe = $ende -$endealt; 143 $diffe = floor($diffe/60/60/24); 144 echo set_page_header(); 145 //tabs 146 $tabs = array(); 147 echo get_tabs_area($tabs); 148 echo' <div class="status_bar"> 149 <span class="status_bar"> 150 '.__('Status').': '.__('A conflict exists with the following parent project:').' '. 151 slookup('projekte','name','ID', $parent)." - ".__('Begin').": ".slookup('projekte','anfang','ID', $parent)." 152 ".__('End').": ".slookup('projekte','ende','ID', $parent).' 153 </span></div>'; 154 echo "<form name='form' action='projects.php' method='POST'>"; 155 foreach ($_POST as $pk => $pval) { 156 echo "<input type='hidden' name='$pk' value='$pval' />\n"; 157 } 158 echo " 159 <input type='hidden' name='diffa' value='$diffa' /> 160 <input type='hidden' name='diffe' value='$diffe' /> 161 <input type='hidden' name='inclu' value='err_pro.php' />"; 162 echo"<div class='header'>".__('You can choose between the following options:')."</div>"; 163 echo"<div class='formbody_mailops'>"; 164 165 166 167 echo "<ul><li>".__('Discard changes')." ".get_go_button_with_name("cancel")."</li>"; 168 if ($anfang < $anfangalt && $ende > $endealt) { 169 echo " 170 <li> ".__('Delay project start for ')." $diffa ".__('days ').__('and'). 171 __('move up the End ')." 172 ".$diffe.__(' days')." ".get_go_button_with_name("upboth")." 173 </li> 174 <li> ".__('Delay the end of the parent project ')." $diffe ".__('days ').__('and')." ". 175 __('move up the Beginning ')." ".$diffa .__(' days')." ".get_go_button_with_name("downboth")." 176 </li>"; 177 178 } 179 else if ($anfang < $anfangalt) { 180 echo " 181 <li>".__('Delay project start for ')." $diffa ".__('days ')." 182 183 ".get_go_button_with_name("upanf")." 184 </li> 185 <li>".__('move up the Beginning of all affected parent projects ')."$diffa".__(' days')." 186 ".get_go_button_with_name("downanf")." 187 </li>"; 188 189 } 190 else if ($ende > $endealt) { 191 echo " 192 <li> ".__('move up the End ')."$diffe".__(' days')." ".get_go_button_with_name("upende")." 193 </li> 194 <li> ".__('Delay the end of all affected parent projects ')."$diffe ".__('days ')." 195 ".get_go_button_with_name("downende")." 196 </li> "; 197 } 198 echo "</ul><br /></div></form>\n"; 199 die(); 200 } 201 $anfang = $ana; 202 $ende = $ena; 203 } 204 205 function uerror($parent) { 206 global $anfang, $ende; 207 208 $ana = $anfang; 209 $ena = $ende; 210 $anfanga = explode('-',$anfang); 211 $anfang = mktime(0, 0, 0, $anfanga[1], $anfanga[2], $anfanga[0]); 212 $endea = explode('-',$ende); 213 $ende = mktime(0, 0, 0, $endea[1], $endea[2], $endea[0]); 214 foreach ($parent as $kidproj) { 215 // the project is subproject? check whether the start and end time is within the limits of the parent project 216 $result2 = db_query("select anfang, ende,ID 217 from ".DB_PREFIX."projekte 218 where ID = '$kidproj'") or db_die(); 219 $row2 = db_fetch_row($result2); 220 // timespan exceeds timespan of parent -> die ... 221 $anfangb = explode('-',$row2[0]); 222 $anfangalt = mktime(0, 0, 0, $anfangb[1], $anfangb[2], $anfangb[0]); 223 $endeb = explode('-',$row2[1]); 224 $endealt = mktime(0, 0, 0, $endeb[1], $endeb[2], $endeb[0]); 225 if (($anfang > $anfangalt or $ende < $endealt)&&$kidproj>0) { 226 $diffa = $anfang-$anfangalt; 227 $diffa = floor($diffa/60/60/24); 228 $diffe = $endealt -$ende; 229 $diffe = floor($diffe/60/60/24); 230 //tabs 231 $tabs = array(); 232 echo get_tabs_area($tabs); 233 echo' <div class="status_bar"> 234 <span class="status_bar"> 235 '.__('Status').': '.__('A conflict exists with the following subproject:').' '. 236 slookup('projekte','name','ID', $kidproj)." - ".__('Begin').": ".slookup('projekte','anfang','ID', $kidproj)." 237 ".__('End').": ".slookup('projekte','ende','ID', $kidproj).' 238 </span></div>'; 239 echo"<form name='form' action='projects.php' method='post'>"; 240 foreach($_POST as $pk => $pval){ 241 echo "<input type='hidden' name='$pk' value='$pval' />\n"; 242 } 243 echo " 244 <input type='hidden' name='diffa' value='$diffa' /> 245 <input type='hidden' name='diffe' value='$diffe' /> 246 <input type='hidden' name='inclu' value='err_pro.php' />"; 247 248 echo"<div class='header'>".__('You can choose between the following options:')."</div>"; 249 echo"<div class='formbody_mailops'>"; 250 echo "<ul><li>".__('Discard changes')." ".get_go_button_with_name("cancel")."</li>"; 251 if ($anfang > $anfangalt && $ende < $endealt) { 252 echo " 253 <li> ".__('Delay project start for ')." $diffa ".__('days ').__('and'). 254 __('move up the End ')." 255 ".$diffe.__(' days')." ".get_go_button_with_name("upboth1")." 256 </li> 257 <li> ".__('Delay the end of the subproject ')." $diffe ".__('days ').__('and')." ". 258 __('move up the Beginning ')." ".$diffa .__(' days')." ".get_go_button_with_name("downboth1")." 259 </li>"; 260 } 261 else if ($anfang > $anfangalt) { 262 echo " 263 <li>".__('Delay project start for ')." $diffa ".__('days ')." 264 ".get_go_button_with_name("upanf1")." 265 </li> 266 <li>".__('move up the Beginning of all affected subprojects ')."$diffa".__(' days')." 267 ".get_go_button_with_name("downanf1")." 268 </li>"; 269 } 270 else if ($ende < $endealt) { 271 echo " 272 <li> ".__('move up the End ')."$diffe".__(' days')." ".get_go_button_with_name("upende1")." 273 </li> 274 <li> ".__('Delay the end of all affected subprojects ')."$diffe ".__('days ')." 275 ".get_go_button_with_name("downende1")." 276 </li> "; 277 } 278 echo "</ul><br /></div></form>\n"; 279 die(); 280 } 281 } 282 $anfang = $ana; 283 $ende = $ena; 284 } 285 286 function move_for($ID, $field, $days, $calculated_newdate = '') { 287 // get the value 288 $result = db_query("select ".qss($field).", parent 289 from ".DB_PREFIX."projekte 290 where ID = '$ID'") or db_die(); 291 $row = db_fetch_row($result); 292 293 if($calculated_newdate != ''){ 294 $newdate = $calculated_newdate; 295 } 296 else{ 297 $olddate = explode('-',$row[0]); 298 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$days, $olddate[0])); 299 } 300 301 // leave here if $newdate is younger than $calculated_newdate 302 if(!(strlen($calculated_newdate) == 10 && strcmp($calculated_newdate, $row[0]) < 0)){ 303 $result = db_query("update ".DB_PREFIX."projekte 304 set ".qss($field)." = '$newdate' 305 where ID = '$ID'") or db_die(); 306 } 307 308 // loop over parents 309 $result = db_query("select ID 310 from ".DB_PREFIX."projekte 311 where ID = '$row[1]'") or db_die(); 312 while ($row = db_fetch_row($result)) { 313 move_for($row[0], $field, $days, $newdate); 314 } 315 } 316 317 function move_for_down($ID, $field, $days) { 318 $result = db_query("select ".qss($field).", parent 319 from ".DB_PREFIX."projekte 320 where ID = '$ID'") or db_die(); 321 $row = db_fetch_row($result); 322 $olddate = explode('-',$row[0]); 323 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]+$days, $olddate[0])); 324 $result = db_query("update ".DB_PREFIX."projekte 325 set ".qss($field)." = '$newdate' 326 where ID = '$ID'") or db_die(); 327 $result = db_query("select ID 328 from ".DB_PREFIX."projekte 329 where parent = '$ID'") or db_die(); 330 while ($row = db_fetch_row($result)) { 331 move_for_down($row[0], $field, $days); 332 } 333 } 334 335 function move_back($ID, $field, $days, $calculated_newdate = '') { 336 // get the value 337 $result = db_query("select ".qss($field).", parent 338 from ".DB_PREFIX."projekte 339 where ID = '$ID'") or db_die(); 340 $row = db_fetch_row($result); 341 if($calculated_newdate != ''){ 342 $newdate = $calculated_newdate; 343 } 344 else{ 345 $olddate = explode('-',$row[0]); 346 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$days, $olddate[0])); 347 } 348 349 // leave here if $newdate is older than $calculated_newdate 350 if(!(strlen($calculated_newdate) == 10 && strcmp($calculated_newdate, $row[0]) > -1)){ 351 $result = db_query("update ".DB_PREFIX."projekte 352 set ".qss($field)." = '$newdate' 353 where ID = '$ID'") or db_die(); 354 } 355 356 // loop over parents 357 $result = db_query("select ID 358 from ".DB_PREFIX."projekte 359 where ID = '$row[1]'") or db_die(); 360 while ($row = db_fetch_row($result)) { 361 move_back($row[0], $field, $days, $newdate); 362 } 363 } 364 365 function move_back_down($ID, $field, $days, $fneu="") { 366 // get the value 367 $result = db_query("select ".qss($field).",parent 368 from ".DB_PREFIX."projekte 369 where ID = '$ID'") or db_die(); 370 $row = db_fetch_row($result); 371 if ($fneu) $olddate = explode('-',$fneu); 372 else $olddate = explode('-',$row[0]); 373 $newdate = date("Y-m-d", mktime(0, 0, 0, $olddate[1], $olddate[2]-$days, $olddate[0])); 374 $result = db_query("update ".DB_PREFIX."projekte 375 set ".qss($field)." = '$newdate' 376 where ID = '$ID'") or db_die(); 377 $result = db_query("select ID 378 from ".DB_PREFIX."projekte 379 where parent= '$ID'") or db_die(); 380 while ($row = db_fetch_row($result)) { 381 move_back_down($row[0], $field, $days); 382 } 383 } 384 385 function move_back_down1($ID, $field, $fval, $do_update = true) { 386 if($do_update){ 387 $result = db_query(xss("update ".DB_PREFIX."projekte 388 set ".