00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00047 function setDateView ($DateValues, $flag, $DB)
00048 {
00049 global $DP_language, $templatefolder, $actualtemplate, $DP_CSS;
00050
00051 $Gui = new Gui();
00052 $ttd = new TimestampToDate;
00053
00054 $Array = setJs();
00055 $DateValues[popupcall_1] = $Array[1] ;
00056 $DateValues[popupcall_2] = $Array[2] ;
00057 $DateValues[popupcall_3] = $Array[3] ;
00058 if(!$DateValues[text]) $DateValues[text] = $DateValues[DateArray][text];
00059 if(!$DateValues[shorttext]) $DateValues[shorttext] = $DateValues[DateArray][shorttext];
00060 if($DateValues[whole_day] == "1") $DateValues[checked] = "checked";
00061
00062 $date2 = $DateValues[date2];
00063 $date4 = $DateValues[date4];
00064 $date6 = $DateValues[date6];
00065
00066
00067 switch($flag) {
00068 case 'i':
00069 eval ("\$tab_start_date = \"".$Gui->getTemplate("date_startdate")."\";");
00070 eval ("\$tab_end_date = \"".$Gui->getTemplate("date_enddate")."\";");
00071 if($DateValues[rotation]) $DateValues[$DateValues[rotation]] = "selected";
00072 eval ("\$tab_rotation = \"".$Gui->getTemplate("date_rotation")."\";");
00073 $DateValues[Groupform] = setGroups($DateValues[group_id], $DB);
00074 eval ("\$tab_group = \"".$Gui->getTemplate("date_group")."\";");
00075 $DateValues[Keywordform] = setKeywords($DateValues[keyword_id], $DB);
00076 eval ("\$tab_keyword = \"".$Gui->getTemplate("date_keyword")."\";");
00077 eval ("\$tab_text = \"".$Gui->getTemplate("date_text")."\";");
00078 eval ("\$btn_in = \"".$Gui->getTemplate("date_btnin")."\";");
00079 eval ("\$btn_exit = \"".$Gui->getTemplate("date_btnexit")."\";");
00080 break;
00081 case 'ud_w':
00082
00083 $DateValues[old_keyword_id] = $DateValues[DateArray][old_keyword_id];
00084 eval ("\$tab_start_date = \"".$Gui->getTemplate("date_startdate")."\";");
00085 eval ("\$tab_end_date = \"".$Gui->getTemplate("date_enddate")."\";");
00086 if($DateValues[rotation]) {
00087 $DateValues[$DateValues[rotation]] = "selected";
00088 }else {
00089 $date6 = $DateValues[date6];
00090 $DateValues[$DateValues[DateArray][rotation]] = "selected";
00091 }
00092 eval ("\$tab_rotation = \"".$Gui->getTemplate("date_rotation")."\";");
00093 eval ("\$tab_group = \"".$Gui->getTemplate("date_group_ro")."\";");
00094 if($DateValues[keyword_id]) {
00095 $DateValues[Keywordform] = setKeywords($DateValues[keyword_id],$DB);
00096 }else {
00097 $DateValues[Keywordform] = setKeywords($DateValues[DateArray][keyword_id],$DB);
00098 }
00099 eval ("\$tab_keyword = \"".$Gui->getTemplate("date_keyword")."\";");
00100 eval ("\$tab_text = \"".$Gui->getTemplate("date_text")."\";");
00101
00102 $DateValues = parseDataForOutput ($DateValues);
00103 $DP_language[dv_message] = $DP_language[dv_message].$DP_language[dv_preview];
00104 eval ("\$tab_pretext = \"".$Gui->getTemplate("date_text_ro")."\";");
00105 eval ("\$btn_del = \"".$Gui->getTemplate("date_btndel")."\";");
00106 eval ("\$btn_upd = \"".$Gui->getTemplate("date_btnupd")."\";");
00107 eval ("\$btn_exit = \"".$Gui->getTemplate("date_btnexit")."\";");
00108 break;
00109 case 'ud_ro':
00110
00111
00112 $DateValues = parseDataForOutput ($DateValues);
00113
00114 $DateValues[start_ts] = $DateValues[DateArray][begin];
00115 $DateValues[end_ts] = $DateValues[DateArray][end];
00116 $DateValues[end_rotation_ts] = $DateValues[DateArray][end_rotation];
00117 $DateValues[keyword_id] = $DateValues[DateArray][keyword_id];
00118 $DateValues[old_keyword_id] = $DateValues[DateArray][old_keyword_id];
00119
00120
00121 if($DateValues[whole_day] != "1") {
00122 $ttd->ttd($DateValues[DateArray][begin]);
00123 $DateValues[starttime] = $ttd->middletime ;
00124 eval ("\$tab_start_date = \"".$Gui->getTemplate("date_startdate_ro")."\";");
00125 $ttd->ttd($DateValues[DateArray][end]);
00126 $DateValues[endtime] = $ttd->middletime ;
00127 $DateValues[whole_day_name] = "no";
00128 eval ("\$tab_end_date = \"".$Gui->getTemplate("date_enddate_ro")."\";");
00129 }else {
00130 $ttd->ttd($DateValues[DateArray][begin]);
00131 $DateValues[starttime] = $ttd->shorttime ;
00132 $DateValues[whole_day_name] = "yes";
00133 eval ("\$tab_start_date = \"".$Gui->getTemplate("date_startdate_ro")."\";");
00134 }
00135
00136 if($DateValues[DateArray][rotation] != 0 ) {
00137 $ttd->ttd($DateValues[DateArray][end_rotation]);
00138 $DateValues[end_rotationtime] = $ttd->shorttime ;
00139 eval ("\$tab_rotation = \"".$Gui->getTemplate("date_rotation_ro")."\";");
00140 }else {
00141 eval ("\$tab_rotation = \"".$Gui->getTemplate("date_rotation_ro")."\";");
00142 }
00143 eval ("\$tab_group = \"".$Gui->getTemplate("date_group_ro")."\";");
00144
00145 $DateValues[Keywordform] = setKeywords($DateValues[DateArray][keyword_id],$DB);
00146 eval ("\$tab_keyword = \"".$Gui->getTemplate("date_keyword")."\";");
00147 eval ("\$tab_text = \"".$Gui->getTemplate("date_text_ro")."\";");
00148 eval ("\$btn_del = \"".$Gui->getTemplate("date_btndel")."\";");
00149 eval ("\$btn_upd = \"".$Gui->getTemplate("date_btnupd")."\";");
00150 eval ("\$btn_exit = \"".$Gui->getTemplate("date_btnexit")."\";");
00151 break;
00152 default :
00153
00154 }
00155
00156 eval ("\$dateContent = \"".$Gui->getTemplate("date_content")."\";");
00157
00158 Return $dateContent;
00159
00160 }
00161
00170 function parseDataForOutput ($DateValues) {
00171
00172
00173 $text = $DateValues[text];
00174 $urlsearch[]="/([^]_a-z0-9-=\"'\/])((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
00175 $urlsearch[]="/^((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
00176 $urlreplace[]="\\1<A HREF='\\2\\4' target='_blank'>\\2\\4</A>";
00177 $urlreplace[]="<A HREF='\\1\\3' target='_blank'>\\1\\3</A>";
00178 $emailsearch[]="/([\s])([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";
00179 $emailsearch[]="/^([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";
00180 $emailreplace[]="\\1<a href='mailto:\\2'>\\2</a>";
00181 $emailreplace[]="<a href='mailto:\\0'>\\0</a>";
00182 $text = preg_replace($urlsearch, $urlreplace, $text);
00183 if (strpos($text, "@")) $text = preg_replace($emailsearch, $emailreplace, $text);
00184
00185 $text = str_replace("\r\n","<br>" , $text);
00186
00187 $text = preg_replace("!\[img\](.*)\[/img\]!U","<img alt='\\1' src='\\1'>",$text);
00188 $DateValues[text] = $text;
00189
00190
00191 $text = $DateValues[shorttext];
00192
00193 $urlsearch[]="/([^]_a-z0-9-=\"'\/])((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
00194 $urlsearch[]="/^((https?|ftp):\/\/|www\.)([^ \r\n\(\)\*\^\$!`\"'\|\[\]\{\};<>]*)/si";
00195 $urlreplace[]="\\1<A HREF='\\2\\4' target='_blank'>\\2\\4</A>";
00196 $urlreplace[]="<A HREF='\\1\\3' target='_blank'>\\1\\3</A>";
00197 $emailsearch[]="/([\s])([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";
00198 $emailsearch[]="/^([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";
00199 $emailreplace[]="\\1<a href='mailto:\\2'>\\2</a>";
00200 $emailreplace[]="<a href='mailto:\\0'>\\0</a>";
00201 $text = preg_replace($urlsearch, $urlreplace, $text);
00202 if (strpos($text, "@")) $text = preg_replace($emailsearch, $emailreplace, $text);
00203 $text = str_replace("\r\n","<br>" , $text);
00204 $DateValues[shorttext] = $text;
00205
00206 Return $DateValues;
00207
00208 }
00209
00218 function setJs() {
00219 global $DP_language;
00220
00221 $Array[1] = '
00222 <script language=JavaScript>
00223 var cal2 = new CalendarPopup();
00224 cal2.showYearNavigation(); cal2.setMonthNames(\''.$DP_language[long_01].'\',\''.$DP_language[long_02].'\',\''.$DP_language[long_03].'\',\''.$DP_language[long_04].'\',\''.$DP_language[long_05].'\',\''.$DP_language[long_06].'\',\''.$DP_language[long_07].'\',\''.$DP_language[long_08].'\',\''.$DP_language[long_09].'\',\''.$DP_language[long_10].'\',\''.$DP_language[long_11].'\',\''.$DP_language[long_12].'\');
00225 cal2.setDayHeaders(\''.$DP_language[Su_short].'\',\''.$DP_language[Mo_short].'\',\''.$DP_language[Tu_short].'\',\''.$DP_language[We_short].'\',\''.$DP_language[Th_short].'\',\''.$DP_language[Fr_short].'\',\''.$DP_language[Sa_short].'\');
00226 cal2.setWeekStartDay(1);
00227 cal2.setTodayText("'.$DP_language[today].'");
00228 </script>
00229 ';
00230
00231 $Array[2] = '
00232 <script language=JavaScript >
00233 var cal4 = new CalendarPopup(); cal4.setMonthNames(\''.$DP_language[long_01].'\',\''.$DP_language[long_02].'\',\''.$DP_language[long_03].'\',\''.$DP_language[long_04].'\',\''.$DP_language[long_05].'\',\''.$DP_language[long_06].'\',\''.$DP_language[long_07].'\',\''.$DP_language[long_08].'\',\''.$DP_language[long_09].'\',\''.$DP_language[long_10].'\',\''.$DP_language[long_11].'\',\''.$DP_language[long_12].'\');
00234 cal4.setDayHeaders(\''.$DP_language[Su_short].'\',\''.$DP_language[Mo_short].'\',\''.$DP_language[Tu_short].'\',\''.$DP_language[We_short].'\',\''.$DP_language[Th_short].'\',\''.$DP_language[Fr_short].'\',\''.$DP_language[Sa_short].'\');
00235 cal4.setWeekStartDay(1);
00236 cal4.setTodayText("'.$DP_language[today].'");
00237 cal4.showYearNavigation();
00238 </script>
00239 ';
00240
00241 $Array[3] = '
00242 <script language=JavaScript >
00243 var cal6 = new CalendarPopup(); cal6.setMonthNames(\''.$DP_language[long_01].'\',\''.$DP_language[long_02].'\',\''.$DP_language[long_03].'\',\''.$DP_language[long_04].'\',\''.$DP_language[long_05].'\',\''.$DP_language[long_06].'\',\''.$DP_language[long_07].'\',\''.$DP_language[long_08].'\',\''.$DP_language[long_09].'\',\''.$DP_language[long_10].'\',\''.$DP_language[long_11].'\',\''.$DP_language[long_12].'\');
00244 cal6.setDayHeaders(\''.$DP_language[Su_short].'\',\''.$DP_language[Mo_short].'\',\''.$DP_language[Tu_short].'\',\''.$DP_language[We_short].'\',\''.$DP_language[Th_short].'\',\''.$DP_language[Fr_short].'\',\''.$DP_language[Sa_short].'\');
00245 cal6.setWeekStartDay(1);
00246 cal6.setTodayText("'.$DP_language[today].'");
00247 cal6.showYearNavigation();
00248 </script>
00249 ';
00250 Return $Array ;
00251 }// end func
00252
00262 function setKeywords($keyword_id,$DB) {
00263 $Keywords = getKeywordContent($DB);
00264 if($Keywords) {
00265 for ($j = 0 ; $j < count($Keywords) ; $j++) {
00266 if($keyword_id == $Keywords[$j][0]) {
00267 $Keywordform = $Keywordform.'<option selected value="'.$Keywords[$j][0].'">'.$Keywords[$j][1].'</option>';
00268 }else {
00269 $Keywordform = $Keywordform.'<option value="'.$Keywords[$j][0].'">'.$Keywords[$j][1].'</option>';
00270 }
00271 }
00272 }
00273 Return $Keywordform;
00274
00275 }// end func
00276
00286 function setGroups($groupID,$DB) {
00287 $Groups = getGroupContent($DB);
00288 if($Groups) {
00289 for ($i = 0 ; $i < count($Groups) ; $i++) {
00290 if($groupID and $groupID == $Groups[$i][0] ) {
00291 $Groupform = $Groupform.'<option selected value="'.$Groups[$i][0].'">'.$Groups[$i][1].'</option>';
00292 }else {
00293 $Groupform = $Groupform.'<option value="'.$Groups[$i][0].'">'.$Groups[$i][1].'</option>';
00294 }
00295 }
00296 }
00297 Return $Groupform;
00298
00299 }// end func
00300
00310 function getGroupContent($DB) {
00311 global $DP_UId ;
00312 $Groups = $DB->getUserGroups ($DP_UId);
00313
00314 Return $Groups;
00315
00316 }// end func
00317
00327 function getKeywordContent($DB) {
00328 global $DP_UId ;
00329 $Keywords = $DB->getKeywords ($DP_UId);
00330
00331 Return $Keywords;
00332
00333 }// end func
00334
00347 function parseData ($DateValues, $Start_date, $End_date, $End_rotation) {
00348 global $DP_language;
00349 if($DateValues[start_ts] == "-1") $Valid[] = $DP_language[ERROR_STARTDATE];
00350 if($DateValues[whole_day] !=1 and $DateValues[end_ts] == "-1") $Valid[] = $DP_language[ERROR_ENDDATE];
00351 if($DateValues[end_rotation_ts] == "-1") $Valid[] = $DP_language[ERROR_ROTATIONEND];
00352 if($DateValues[whole_day] !=1 and $DateValues[start_ts] > $DateValues[end_ts]) $Valid[] = $DP_language[ERROR_END_START];
00353 if($DateValues[end_rotation_ts] and $DateValues[end_rotation_ts] < $DateValues[start_ts]) $Valid[] = $DP_language[ERROR_ROT_END_START];
00354
00355 if( $Start_date[0] != date ("d", mktime(0,0,0,$Start_date[1],$Start_date[0],$Start_date[2])) or
00356 $Start_date[1] != date ("m", mktime(0,0,0,$Start_date[1],$Start_date[0],$Start_date[2])) or
00357 $Start_date[2] != date ("Y", mktime(0,0,0,$Start_date[1],$Start_date[0],$Start_date[2])))
00358 {
00359 $Valid[] = $DP_language[ERROR_STARTDATE];
00360 }
00361 if( $End_date and $DateValues[begin_h] != date ("H", mktime($DateValues[begin_h],0,0,$Start_date[1],$Start_date[0],$Start_date[2])) or
00362 $DateValues[begin_min] != date ("i", mktime(0,$DateValues[begin_min],0,$Start_date[1],$Start_date[0],$Start_date[2])))
00363 {
00364 $Valid[] = $DP_language[ERROR_STARTTIME];
00365 }
00366 if( $End_date and ($End_date[0] != date ("d", mktime(0,0,0,$End_date[1],$End_date[0],$End_date[2])) or
00367 $End_date[1] != date ("m", mktime(0,0,0,$End_date[1],$End_date[0],$End_date[2])) or
00368 $End_date[2] != date ("Y", mktime(0,0,0,$End_date[1],$End_date[0],$End_date[2]))))
00369 {
00370 $Valid[] = $DP_language[ERROR_ENDDATE];
00371 }
00372 if( $DateValues[end_h] != date ("H", mktime($DateValues[end_h],0,0,$Start_date[1],$Start_date[0],$Start_date[2])) or
00373 $DateValues[end_min] != date ("i", mktime(0,$DateValues[end_min],0,$Start_date[1],$Start_date[0],$Start_date[2])))
00374 {
00375 $Valid[] = $DP_language[ERROR_ENDTIME];
00376 }
00377 if( $End_rotation and ($End_rotation[0] != date ("d", mktime(0,0,0,$End_rotation[1],$End_rotation[0],$End_rotation[2])) or
00378 $End_rotation[1] != date ("m", mktime(0,0,0,$End_rotation[1],$End_rotation[0],$End_rotation[2])) or
00379 $End_rotation[2] != date ("Y", mktime(0,0,0,$End_rotation[1],$End_rotation[0],$End_rotation[2]))))
00380 {
00381 $Valid[] = $DP_language[ERROR_ROTATIONEND];
00382 }
00383 if($DateValues[shorttext] == "") $Valid[] = $DP_language[ERROR_SHORTTEXT];
00384
00385 $Valid[] = "TRUE";
00386 Return $Valid;
00387
00388 }// end func
00389
00400 function setInsertDate($timestamp, $DateValues, $DB)
00401 {
00402
00403 $ttd = new TimestampToDate;
00404
00405 if(!$DateValues[referer]) {
00406 $ttd->ttd($timestamp);
00407 $DateValues[date2] = $ttd->day_of_month."/".$ttd->monthnumber_long."/".$ttd->year_long ;
00408 $DateValues[date4] = $ttd->day_of_month."/".$ttd->monthnumber_long."/".$ttd->year_long ;
00409 $DateValues[begin_h] = $DateValues[end_h] = $ttd->hour_long ;
00410 $DateValues[begin_min] = $DateValues[end_min] = $ttd->minutes ;
00411 }
00412
00413 $dateContent = setDateView ($DateValues, "i", $DB) ;
00414
00415 Return $dateContent;
00416
00417 }// end func
00418
00433 function setInsertAction( $startdate,$enddate, $endrotation, $DateValues,$DB ) {
00434 global $DP_UId, $DP_language;
00435
00436 $End_rotation = False ;
00437 $End_date = False ;
00438 $Start_date = explode ("/",$startdate);
00439 if($DateValues[whole_day] !=1){
00440 $DateValues[start_ts] = mktime($DateValues[begin_h],$DateValues[begin_min],0,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00441 $End_date = explode ("/",$enddate);
00442 $DateValues[end_ts] = mktime($DateValues[end_h],$DateValues[end_min],0,(int)$End_date[1],(int)$End_date[0],(int)$End_date[2]);
00443 } else {
00444 $DateValues[start_ts] = mktime(0,0,0,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00445 $DateValues[end_ts] = mktime(23,59,59,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00446 $End_date = False ;
00447 }
00448 if ($DateValues[rotation] != 0){
00449 if($endrotation == "") {
00450 $DateValues[end_rotation_ts] = 2147468399;
00451 $End_rotation = False ;
00452 }else {
00453 $End_rotation = explode ("/",$endrotation);
00454 $DateValues[end_rotation_ts] = mktime(23,59,59,$End_rotation[1],$End_rotation[0],$End_rotation[2]);
00455 }
00456 } else {
00457 $DateValues[end_rotation_ts] = 0;
00458 $End_rotation = False ;
00459 }
00460
00461 // error Managment
00462 $Valid = parseData ($DateValues, $Start_date, $End_date, $End_rotation);
00463
00464 if($Valid[0] == "TRUE") {
00465 $return = $DB->addDate ( $DateValues[start_ts],
00466 $DateValues[end_ts],
00467 $DateValues[group_id],
00468 $DP_UId,
00469 mktime(),
00470 $DateValues[rotation],
00471 $DateValues[end_rotation_ts],
00472 htmlspecialchars ($DateValues[shorttext]),
00473 htmlspecialchars ($DateValues[text]),
00474 $DateValues[keyword_id]);
00475
00476 switch ($return){
00477 case "0": $msg = False;
00478 break;
00479 case "1": $msg = $DP_language[ERROR_DATE_EXISTS]."<br>";
00480 break;
00481 case "2": $msg = $DP_language[ERROR_DB_CONNECT]."<br>";
00482 break;
00483 }
00484 }else
00485 {
00486 for($i=0; $i<(count($Valid)-1); $i++) {
00487 $msg = $msg.$Valid[$i]."<br>";
00488 }
00489 $msg = $msg.'
00490 <br>
00491 ';
00492 }
00493
00494 Return $msg;
00495 }// end func
00496
00512 function setUpdateDeleteDate($timestamp, $date_id, $DateArray, $DateValues, $DB)
00513 {
00514 global $js ,$DP_UId, $DP_language ;
00515
00516 if(!$DateValues[referer]) {
00517 $ttd = new TimestampToDate;
00518 $ttd->ttd($DateArray[begin]);
00519 $DateValues[date2] = $ttd->day_of_month."/".$ttd->monthnumber_long."/".$ttd->year_long ;
00520 $DateValues[begin_h] = $ttd->hour_long ;
00521 $DateValues[begin_min] = $ttd->minutes ;
00522 $DateValues[date_timestamp] = $timestamp;
00523
00524 if((int)$DateArray[end]-(int)$DateArray[begin] == 86399 ) $DateValues[whole_day] = "1" ;
00525
00526 if($DateArray[end]) {
00527 $ttd->ttd($DateArray[end]);
00528 $DateValues[date4] = $ttd->day_of_month."/".$ttd->monthnumber_long."/".$ttd->year_long ;
00529 $DateValues[end_h] = $ttd->hour_long ;
00530 $DateValues[end_min] = $ttd->minutes ;
00531 }
00532 if($DateArray[end_rotation]) {
00533 $ttd->ttd($DateArray[end_rotation]);
00534 $DateValues[date6] = $ttd->day_of_month."/".$ttd->monthnumber_long."/".$ttd->year_long ;
00535 }
00536 $DateValues[DateArray] = $DateArray;
00537 $DateValues[rotation] = $DateArray[rotation] ;
00538 switch($DateArray[rotation]) {
00539 case '0':
00540 $DateValues[rotation_name] = $DP_language[r_nonrecurring];
00541 break;
00542 case '1':
00543 $DateValues[rotation_name] = $DP_language[r_day];
00544 break;
00545 case '2':
00546 $DateValues[rotation_name] = $DP_language[r_week];
00547 break;
00548 case '3':
00549 $DateValues[rotation_name] = $DP_language[r_14];
00550 break;
00551 case '4':
00552 $DateValues[rotation_name] = $DP_language[r_4_weeks];
00553 break;
00554 case '5':
00555 $DateValues[rotation_name] = $DP_language[r_month];
00556 break;
00557 case '6':
00558 $DateValues[rotation_name] = $DP_language[r_halfyear];
00559 break;
00560 case '7':
00561 $DateValues[rotation_name] = $DP_language[r_year];
00562 break;
00563 }
00564 $DateValues[date_id] = $DateArray[date_id] ;
00565 $DateValues[Groupform] = $DB->getGroupName($DateArray[group_id]);
00566 if(!$DateValues[Groupform]) $DateValues[Groupform] = "none" ;
00567
00568 }
00569 // if u wish that more than the owner of a group can chane properties af a date , this row down is the row that has to be changed.
00570 if($DateArray[user_id] == $DP_UId or $DateArray[group_id] == 0) {
00571 $dateContent = setDateView ($DateValues, "ud_w", $DB) ;
00572 }else {
00573 $dateContent = setDateView ($DateValues, "ud_ro", $DB) ;
00574 $js = "ro";
00575 }
00576
00577 Return $dateContent;
00578
00579 }// end func
00580
00595 function setUpdateAction( $startdate,$enddate, $endrotation, $DateValues, $DB) {
00596 global $DP_UId, $DP_language;
00597 if($DateValues[writepermission] != "ro") {
00598 $End_rotation = False ;
00599 $End_date = False ;
00600 $Start_date = explode ("/",$startdate);
00601
00602 if($DateValues[whole_day] !=1){
00603 $DateValues[start_ts] = mktime($DateValues[begin_h],$DateValues[begin_min],0,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00604 $End_date = explode ("/",$enddate);
00605 $DateValues[end_ts] = mktime($DateValues[end_h],$DateValues[end_min],0,(int)$End_date[1],(int)$End_date[0],(int)$End_date[2]);
00606 } else {
00607 $DateValues[start_ts] = mktime(0,0,0,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00608 $DateValues[end_ts] = mktime(23,59,59,(int)$Start_date[1],(int)$Start_date[0],(int)$Start_date[2]);
00609 $End_date = False ;
00610 }
00611 if ($DateValues[rotation] != 0){
00612 if($endrotation == "") {
00613 $DateValues[end_rotation_ts] = 2147468399;
00614 $End_rotation = False ;
00615 }else {
00616 $End_rotation = explode ("/",$endrotation);
00617
00618 $DateValues[end_rotation_ts] = mktime(23,59,59,$End_rotation[1],$End_rotation[0],$End_rotation[2]);
00619 }
00620 } else {
00621 $DateValues[end_rotation_ts] = 0;
00622 $End_rotation = False ;
00623 }
00624
00625 // error Managment
00626 $Valid = parseData ($DateValues, $Start_date, $End_date, $End_rotation);
00627 }else {
00628 $Valid[0] = "TRUE";
00629 }
00630
00631 if($Valid[0] == "TRUE") {
00632 if($DateValues[writepermission] != "ro") {
00633 $return = $DB->updateDate ( $DateValues[date_id],
00634 $DateValues[start_ts],
00635 $DateValues[end_ts],
00636 $DP_UId,
00637 mktime(),
00638 $DateValues[rotation],
00639 $DateValues[end_rotation_ts],
00640 htmlspecialchars ($DateValues[shorttext]),
00641 htmlspecialchars ($DateValues[text]));
00642 }
00643
00644 $return = $DB->updateKeyword2Date (
00645 $DP_UId,
00646 $DateValues[date_id],
00647 $DateValues[keyword_id]);
00648 if($return) {
00649 $msg = False;
00650 }else {
00651 $msg = $DP_language[ERROR_DB]."<br>";
00652 }
00653 // $msg = $msg.' Damit der Timo debuggen kann :
00654
00655
00656 }else {
00657 for($i=0; $i<(count($Valid)-1); $i++) {
00658 $msg = $msg.$Valid[$i]."<br>";
00659 }
00660 $msg = $msg.'
00661 <br>
00662 ';
00663 }
00664 Return $msg;
00665 }
00666
00678 function setDeleteAction($DateValues, $DB) {
00679 global $DP_UId, $DP_language;
00680 $Gui = new Gui();
00681
00682 if($DateValues[rotation_id] != 0) {
00683 $DateValues[rotation_id] = 0 ;
00684 eval ("\$msg = \"".$Gui->getTemplate("date_msgdelrotation")."\";");
00685 Return $msg;
00686 }
00687 switch($DateValues[rotation_ack]) {
00688 case 'one':
00689 $return = $DB->delDate ( $DateValues[date_id],
00690 $DP_UId,
00691 $DateValues[date_timestamp]);
00692 break;
00693 case 'all':
00694 $return = $DB->delDate ( $DateValues[date_id],
00695 $DP_UId,
00696 "0");
00697 break;
00698 default :
00699 $return = $DB->delDate ( $DateValues[date_id],
00700 $DP_UId,
00701 "0");
00702 }
00703
00704 if($return) {
00705 $msg = false;
00706 }else {
00707 $msg = $DP_language[ERROR_DB]."";
00708 }
00709
00710
00711 return $msg;
00712 }
00713 ?>