getCfg('offset'); if($config->get('sem_p065',0)>0) { $jahr = date("Y"); $sombeginn = mktime(2,0,0,3,31-date('w',mktime(2,0,0,3,31,$jahr)),$jahr); $somende = mktime(2,0,0,10,31-date('w',mktime(2,0,0,10,31,$jahr)),$jahr); $aktuell = time(); if($aktuell>$sombeginn AND $aktuell<$somende) { $offset++; } } $date = JFactory::getDate(); $date->setOffset($offset); $neudatum = $date->toformat(); $html = ""; $anzahl = $params->get('sem_m066',5); if(!function_exists('sem_m003')) { function sem_m003($row,$params) { $html = ""; if($params->get('sem_m067',0)>0 AND $row->showbegin>0) { $html .= "".JText::_('SEM_M053').": "; $htxt = JHTML::_('date',$row->begin,$params->get('sem_m043','%d.%m.%Y, %H:%M'),0); if($row->cancelled>0) { $htxt = "".$htxt.""; } $html .= $htxt."
"; } if($params->get('sem_m068',0)>0 AND $row->showend>0) { $html .= "".JText::_('SEM_M054').": "; $htxt = JHTML::_('date',$row->end,$params->get('sem_m043','%d.%m.%Y, %H:%M'),0); if($row->cancelled>0) { $htxt = "".$htxt.""; } $html .= $htxt."
"; } if($params->get('sem_m069',0)>0 AND $row->showbooked>0) { $html .= "".JText::_('SEM_M055').": "; $htxt = JHTML::_('date',$row->booked,$params->get('sem_m043','%d.%m.%Y, %H:%M'),0); if($row->cancelled>0) { $htxt = "".$htxt.""; } $html .= $htxt."
"; } if($params->get('sem_m070',0) > 0) { $html .= "".JText::_('SEM_M057').": ".JHTML::_('date',$row->publishdate,$params->get('sem_m043','%d.%m.%Y, %H:%M'),0)."
"; } if($params->get('sem_m079',0) > 0) { $htxt = str_replace(array("\r\n", "\n", "\r"),', ',trim($row->place)); $html .= "".JText::_('SEM_M080').": ".htmlspecialchars($htxt)."
"; } if($params->get('sem_m071',0) > 0) { $html .= "".htmlspecialchars($row->shortdesc)."
"; } return $html; } } if(!function_exists('sem_m001')) { function sem_m001($database,$my,$art,$params,$neudatum) { $where = array(); $utype = strtolower($my); switch( $utype ) { case "registered": $reglevel = 2; break; case "author": $reglevel = 2; break; case "editor": $reglevel = 2; break; case "publisher": $reglevel = 2; break; case "manager": $reglevel = 3; break; case "administrator": $reglevel = 3; break; case "super administrator": $reglevel = 3; break; default: $reglevel = 1; break; } $database->setQuery("SELECT id, access FROM #__categories WHERE section='com_seminar'"); $cats = $database->loadObjectList(); $allowedcat = array(); foreach($cats AS $cat) { if($cat->access<$reglevel) { $allowedcat[] = $cat->id; } } if(count($allowedcat)>0) { $allowedcat = implode(',',$allowedcat); $where[] = "catid IN ($allowedcat)"; } $where[] = "published = '1'"; $where[] = "pattern = ''"; if($params->get('sem_m050','') != "") { $temp = explode(" ",$params->get('sem_m050','')); $temq = array(); foreach($temp AS $el) { $temq[] .= "catid='".$el."'"; } $where[] = implode(" OR ",$temq); } if($params->get('sem_m082','') != "") { $temp = explode(" ",$params->get('sem_m082','')); $temq = array(); foreach($temp AS $el) { $temq[] .= "publisher='".$el."'"; } $where[] = implode(" OR ",$temq); } switch ($art) { case "0": $showend = "begin"; break; case "1": $showend = "booked"; break; default: $showend = "end"; break; } switch ($params->get('sem_m046',0)) { case 0: $where[] = "$showend > '$neudatum'"; break; case 1: $where[] = "$showend <= '$neudatum'"; break; } return $where; } } if(!function_exists('sem_m002')) { function sem_m002($id) { $database = &JFactory::getDBO(); $database->setQuery( "SELECT * FROM #__sembookings WHERE semid='".$id."'" ); $temps = $database->loadObjectList(); $gebucht = 0; $zertifiziert = 0; $bezahlt = 0; foreach($temps as $el) { $gebucht = $gebucht + $el->nrbooked; $zertifiziert = $zertifiziert + $el->certificated; $bezahlt = $bezahlt + $el->paid; } $zurueck->booked = $gebucht; $zurueck->certificated = $zertifiziert; $zurueck->paid = $bezahlt; $zurueck->number = count($temps); return $zurueck; } } $html = ""; $index = ""; if($params->get('sem_m074',0) > 0) { $html .= "get('sem_m023', 150)."px\" align=\"left\" behavior=\"".$params->get('sem_m017', 'scroll')."\" direction=\"".$params->get('sem_m021', 'up')."\" scrollamount=\"".$params->get('sem_m015', 1)."\" scrolldelay=\"".$params->get('sem_m019', 50)."\" truespeed onmouseover=\"this.stop();\" onmouseout=\"this.start();\">"; } switch($params->get('sem_m039',0)) { case "0"; $werte = array(); if($params->get('sem_m035',0) > 0) { $database->setQuery( "SELECT * FROM #__seminar WHERE published = '1' AND pattern = ''" ); $rows = $database->loadObjectList(); $rows[0]->header = JTEXT::_('SEM_M003'); $werte[] = $rows; } if($params->get('sem_m037',0) > 0) { $database->setQuery( "SELECT * FROM #__seminar WHERE published = '1' AND pattern = '' AND end > '$neudatum'" ); $rows = $database->loadObjectList(); $rows[0]->header = JTEXT::_('SEM_M026'); $werte[] = $rows; } if($params->get('sem_m036',0) > 0) { $database->setQuery( "SELECT * FROM #__seminar WHERE published = '1' AND pattern = '' AND end <= '$neudatum'" ); $rows = $database->loadObjectList(); $rows[0]->header = JTEXT::_('SEM_M025'); $werte[] = $rows; } foreach($werte AS $wert) { $hits = 0; $bookings = 0; $certificated = 0; $courses = 0; $paid = 0; $number = 0; $free = 0; $html .= "".$wert[0]->header."
"; foreach($wert as $row) { $gebucht = sem_m002($row->id); $hits += $row->hits; $bookings += $gebucht->booked; $freetemp = $row->maxpupil - $gebucht->booked; if($freetemp>0) { $free += $freetemp; } $certificated += $gebucht->certificated; $paid += $gebucht->paid; $number += $gebucht->number; $courses += 1; } $html .= JTEXT::_('SEM_M010').": ".$courses."
"; if($params->get('sem_m034',0) > 0) { $html .= JTEXT::_('SEM_M004').": ".$hits."
"; } if($params->get('sem_m028',0) > 0) { $html .= JTEXT::_('SEM_M005').": ".$bookings."
"; } if($params->get('sem_m033',0) > 0) { $html .= JTEXT::_('SEM_M001').": ".$free."
"; } if($params->get('sem_m029',0) > 0) { $html .= JTEXT::_('SEM_M006').": ".$number."
"; } if($params->get('sem_m030',0) > 0) { $html .= JTEXT::_('SEM_M007').": ".$paid."
"; } if($params->get('sem_m031',0) > 0) { $html .= JTEXT::_('SEM_M008').": ".$certificated."
"; } $html .= "
"; } break; case "1": $where = sem_m001($database,$my->usertype,$config->get('sem_p064',2),$params,$neudatum); $limit = ""; if($params->get('sem_m081',0)<1) { $limit = "\nLIMIT ".$params->get('sem_m066',5); } $sortierung = array("begin","end","booked","publishdate","hits","bookedpupil","certificated","grade","maxpupil"); $richtung = array(" ASC"," DESC"); $database->setQuery( "SELECT * FROM #__seminar" . (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "") . "\nORDER BY " . $sortierung[$params->get('sem_m052',0)] . $richtung[$params->get('sem_m063',1)] . $limit ); $rows = $database->loadObjectList(); if($params->get('sem_m081',0)==1) { $neu = array(); $rox = array(); $max = $params->get('sem_m066',5); if(count($rows)<$max) { $max=count($rows); } while(count($neu)<$max) { srand(microtime()*1000000); $zufall = rand(0,count($rows)-1); if(!in_array($zufall,$neu)) { $neu[] = $zufall; } } sort($neu); foreach($neu AS $el) { $rox[] = $rows[$el]; } $rows = $rox; } foreach($rows AS $row) { $buchdate = ""; if($my->id>0) { $database->setQuery("SELECT * FROM #__sembookings WHERE semid='$row->id' AND userid='$my->id'"); $temp = $database->loadObjectList(); if(count($temp)>0) { $buchdate = $temp[0]->bookingdate; } } $gebucht = sem_m002($row->id); if($params->get('sem_m078',0)>0) { $html .= "id,1,0)."'>"; } $html .= "".$row->title; if($row->cancelled>0) { $html .= " - ".JText::_('SEM_M009'); } else if($buchdate!="") { $html .= " - ".JText::_('SEM_M002'); } $html .= ""; if($params->get('sem_m078',0)>0) { $html .= ""; } $html .= "
"; $html .= sem_m003($row,$params); if($params->get('sem_m034',0) > 0) { $html .= "".JText::_('SEM_M004').": ".$row->hits."
"; } if($params->get('sem_m028',0) > 0) { $html .= "".JText::_('SEM_M005').": ".$gebucht->booked."
"; } if($params->get('sem_m033',0) > 0) { $free = $row->maxpupil - $gebucht->booked; if($free<0) { $free = 0; } $html .= "".JText::_('SEM_M001').": ".$free."
"; } if($params->get('sem_m029',0) > 0) { $html .= "".JText::_('SEM_M006').": ".$gebucht->number."
"; } if($params->get('sem_m030',0) > 0) { $html .= "".JText::_('SEM_M007').": ".$gebucht->paid."
"; } if($params->get('sem_m031',0) > 0) { $html .= "".JText::_('SEM_M008').": ".$gebucht->certificated."
"; } $html .= "
"; } break; case "2": // Kalender JHTML::_('behavior.tooltip'); $monatidx = JRequest::getInt('sem_midx',0); $jahridx = JRequest::getInt('sem_jidx',0); $startdatum = mktime(0,0,0,date('m')+$monatidx, 1, date('Y')+$jahridx); $monatkal = date('m',$startdatum); $jahrkal = date('Y',$startdatum); $monatstage = $monatkal==2 ? ($jahrkal % 4 ? 28 : ($jahrkal % 100 ? 29 : ($jahrkal % 400 ? 28:29))) : (($monatkal-1) % 7 % 2 ? 30 : 31); $where = sem_m001($database,$my->usertype,$config->get('sem_p064',2),$params,$neudatum); $where[] = "begin >= '".$jahrkal."-".$monatkal."-01 00:00:00'"; $where[] = "begin <= '".$jahrkal."-".$monatkal."-".$monatstage." 23:59:59'"; $database->setQuery( "SELECT * FROM #__seminar" . (count( $where ) ? "\nWHERE " . implode( ' AND ', $where ) : "") . "\nORDER BY begin" ); $rows = $database->loadObjectList(); $database->setQuery("SELECT semid AS id FROM #__sembookings WHERE (userid='$my->id' AND userid>0)"); $gebucht = $database->loadObjectList(); $html = "
get('sem_m084','')."\">"; $url_query = array_diff_key(JRequest::get('get'),array('sem_midx'=>0,'sem_jidx'=>0)); $url_query = http_build_query($url_query,"","&"); if($url_query!="") { $url_query .= "&"; } $vmonat = "sem_midx=".($monatidx-1)."&sem_jidx=".$jahridx; $nmonat = "sem_midx=".($monatidx+1)."&sem_jidx=".$jahridx; $vjahr = "sem_midx=".$monatidx."&sem_jidx=".($jahridx-1); $njahr = "sem_midx=".$monatidx."&sem_jidx=".($jahridx+1); $monat = gmmktime(0,0,0,$monatkal,1,$jahrkal); $monatsname = date('F',$monat); $html .= ""; $html .= ""; for($i = 0; $i < 7; $i++) { $tag = ($i + $params->get('sem_m088',1) + 3) * 86400; $html .= ""; } $html .= ""; $html .= ""; $tag = strftime("%w",$monat); $leertage = ($tag + 7 - $params->get('sem_m088',1)) % 7; if($leertage>0) { for($i=1;$i<=$leertage;$i++) { $html .= ""; } } $spalten = $leertage; $index = "&sem_midx=".$monatidx."&sem_jidx=".$jahridx; for($i=1;$i<=$monatstage;$i++) { if($spalten==7) { $html .= ""; $spalten = 0; } $temp = $where; $events = ""; $heutestil = ""; if($jahrkal==date('Y') AND $monatkal==date('m') AND $i==date('d')) { $heutestil = $params->get('sem_m087',''); } $tag = $i; if($tag<10) { $tag = "0".$tag; } $beginn = $jahrkal."-".$monatkal."-".$tag." 00:00:00"; $ende = $jahrkal."-".$monatkal."-".$tag." 23:59:59"; $stil = "style=\"".$params->get('sem_m085','').$heutestil."\""; foreach($rows AS $row) { if($row->begin>=$beginn AND $row->begin<=$ende) { $grafik = "2608"; foreach($gebucht AS $gebid) { if($gebid->id==$row->id) { $grafik = "2609"; break; } } $events .= "title)."::".sem_m003($row,$params)."\" style=\"text-decoration: none;\" href='".JROUTE::_('index.php?option=com_seminar&task=3&cid='.$row->id.$index,1,0)."'>"; } } if($events!="") { $stil = "style=\"".$params->get('sem_m086','').$heutestil."\""; } $html .= ""; $spalten ++; } if($spalten<7) { $leertage = (7 - $spalten); for($i=1;$i<=$leertage;$i++) { $html .= ""; } } $html .= "
get('sem_m089','')."\">get('sem_m091','')."\">« get('sem_m091','')."\">‹  ".JTEXT::_($monatsname)." ".$jahrkal."  get('sem_m091','')."\">› get('sem_m091','')."\">»
get('sem_m090','')."\">".substr(gmstrftime('%A',$tag),0,2)."
get('sem_m085','')."\"> 
".$i."
".$events."
get('sem_m085','')."\"> 
"; break; } if($params->get('sem_m074',0)>0) { $html .= "
"; } if($params->get('sem_m075',0)>0 AND $params->get('sem_m039',0)>0) { $html .= "
".JText::_('SEM_M076').""; } echo $html; ?>