![]() | ||||||||
![]() |
Karte | Kalender | Suche | Bookmarks | Experte | FAQ |
ModuleDownloadSMFinder_Query_composeDates4UIDsWird verwendet von:SMFinder_Main SMFinder_Query_Calendar SMFinder_Query_composeDates4UIDs SMFinder_Query_showEventList SMallGiessen_SMFinder Keine Erläuterungen gefunden. <?php /* published under GPL www.gnu.org/licenses/gpl.html */ function SMFinder_Query_composeDates4UIDs($UIDs,$start,$end,$details,$title){ include("SMFinder_Config.php"); include_once('SMFinder_Query_readEvent.php'); include_once('SMFinder_Query_expandSeries.php'); include_once("SMFinder_Query_validDate.php"); # if($GLOBALS['debug']){echo "<b>SMFinder_Query_composeDates4UIDs.php</b><br>";} $mm=-1; if (empty($start)){ list($year,$month,$day)=SMFinder_Query_validDate(date('Y'),date('m'),date('d')); $start=sprintf("%04d-%02d-%02d",$year,$month,$day); } if (empty($end)){ list($year,$month,$day)=SMFinder_Query_validDate(date('Y'),date('m')+2,date('d')); $end=sprintf("%04d-%02d-%02d",$year,$month,$day); } for ($n=0;$n<count($UIDs);$n++){ #echo "<br> ".$n." ".$UIDs[$n]."<br> "; $event=SMFinder_Query_readEvent($UIDs[$n]); $event['summary']=str_replace("<crlf />","<br>",$event['summary']); if($title==1){ $tmp=explode("<br>",$event['summary']); $event['summary']=$tmp[0]; }elseif($title==2 AND eregi("<br>",$event['summary'])){ $tmp=explode("<br>",$event['summary']); $event['summary']=$tmp[1]; } $dates4event=SMFinder_Query_expandSeries($event,$start,$end); $NoOfEvents=count($dates4event); #print_r($dates4event); echo " ".$NoOfEvents."<br>"; if (!empty($event['freq'])){$isSeries=true;}else{$isSeries=false;} for ($m=0;$m<$NoOfEvents;$m++){ $mm++; $allDates[$mm]=$dates4event[$m]; $allUIDs[$mm]=$event['UID']; $allSummaries[$mm]=$event['summary']; $allIsSeries[$mm]=$isSeries; $allDesc[$mm]=$event['desc']; $thisCats=explode(",",$event['cats']); #echo "cats<br>";print_r($thisCats);echo "cats<br>"; for ($c=0;$c<count($thisCats);$c++){ if (!empty($thisCats[$c])){ $allCats[$mm]=$thisCats[$c]; break; } if (empty($allCats[$mm])){$allCats[$mm]="";} } } #m #echo $n."<br> ";print_r($event);echo "<br>bla"; } #n #echo "<br>return: ";#print_r($allDates); echo"<br>UID: ";print_r($allUIDs); if (count($allDates)>1){ array_multisort($allDates,$allUIDs,$allSummaries,$allCats,$allIsSeries,$allDesc); } #echo "<br>return: ";print_r($allDates); echo"<br>UID: ";print_r($allUIDs); #exit(1); /* compose output */ $lastDate=""; for ($n=0;$n<count($allDates);$n++){ $bgcolor="class='light' "; $bgcolor=$color[$allCats[$n]]; if ($allDates[$n]!=$lastDate){ /* new day */ $m=0; $lastSummary=""; $lastDate=$allDates[$n]; $datesTensor[$allDates[$n]][$m]['UID']=$allUIDs[$n]; $datesTensor[$allDates[$n]][$m]['summary']=$allSummaries[$n]; $datesTensor[$allDates[$n]][$m]['cats']=$allCats[$n]; $datesTensor[$allDates[$n]][$m]['bgcolor']=$bgcolor; $datesTensor[$allDates[$n]][$m]['isSeries']=$allIsSeries[$n]; if ($details=="desc"){$datesTensor[$allDates[$n]][$m]['desc']=$allDesc[$n];} }else{ /* same day */ if ($lastSummary!=$allSummaries[$n]){ $m++; $datesTensor[$allDates[$n]][$m]['UID']=$allUIDs[$n]; $datesTensor[$allDates[$n]][$m]['summary']=$allSummaries[$n]; $datesTensor[$allDates[$n]][$m]['cats']=$allCats[$n]; $datesTensor[$allDates[$n]][$m]['bgcolor']=$bgcolor; $datesTensor[$allDates[$n]][$m]['isSeries']=$allIsSeries[$n]; if ($details=="desc"){$datesTensor[$allDates[$n]][$m]['desc']=$allDesc[$n];} }else{ /* at same day there are two dates with same summary, take the one which is not a series. */ if (!$allIsSeries[$n]){ $datesTensor[$allDates[$n]][$m]['UID']=$allUIDs[$n]; $datesTensor[$allDates[$n]][$m]['summary']=$allSummaries[$n]; $datesTensor[$allDates[$n]][$m]['cats']=$allCats[$n]; $datesTensor[$allDates[$n]][$m]['bgcolor']=$bgcolor; $datesTensor[$allDates[$n]][$m]['isSeries']=$allIsSeries[$n]; if ($details=="desc"){$datesTensor[$allDates[$n]][$m]['desc']=$allDesc[$n];} } } } $lastSummary=$allSummaries[$n]; } #n if ($GLOBALS['debug']){ $tmp=count($allDates); echo "<aj>SMFinder_Query_composeDates4UIDs:</aj> found dates: ".$tmp."<br>"; $tmp1=count($datesTensor); echo "Der datesTensor hat ".$tmp." Eintraege<br>"; #print_r($datesTensor); } return array($datesTensor,$allDates); } ?> IndexFür die Funktionalität des SM-Finders sind viele kleine Tools notwendig. Alle Funktionen beginnen mit SMFinder_ um deren Ursprung zu kennzeichnen. Dem schließt sich die Funktionsgruppe, z.B. Geo_ an, gefolgt vom eigentlichen Namen, der die Aufgabe der Funktion widerspiegeln soll, z.B. PLZ2DB. Der gesamte Sourcecode darf gemäß GNU General Public License weiterverbreitet werden. |
![]() |
Die hier zur Verfügung gestellten Informationen basieren auf dem Austauschnetzwerk des SM-Finders.
Änderungen an eurem Datensatz könnt ihr z.B. beim Arbeitskreis SM-Finder vornehmen.
Bei Fragen und Problemen schreibt bitte an: sm-finderki-co.org
Der AK-SM-Finder ist korporatives Mitglied der BVSM e.V.
Für Aktualität und Richtigkeit der dargebotenen Infomationen kann keine Gewähr übernommen werden!