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