News-Homepage // kategorie=pi �berblicksseite Presseinformation // kategorie=ps �berblicksseite Pressespiegel // kategorie=so �berblicksseite Newsletter // kategorie=fo �berblicksseite Forschung // kategorie=va �berblicksseite Veranstaltungen // kategorie=login Anmeldung f�r Administration // kategorie=admin Administration, ... // subkat=... // //system('locale -a | grep de'); => zum Herausfinden der Kategorien //�nderung 04.02.2005 von inkis@unix.sbg.ac.at: //von: setlocale ("LC_TIME", "de_at") und setlocale ("LC_TIME", "de") //auf: setlocale (LC_TIME, "de_at") und setlocale (LC_TIME, "de"): //LC_TIME ist kein String! setlocale(LC_ALL, "de_AT"); // Wir sind in �sterreich // (F�r Datum+Zeitangaben auf deutsch) setlocale(LC_ALL, "de"); // Wir sind in �sterreich // (F�r Datum+Zeitangaben auf deutsch) require "xtpl.php"; // Das Templeting-Sytem require "formulare.shtml"; // Erzeugung von Formularfeldern require "db.shtml"; // Datenbank require "backend.shtml"; // Sonstige Hilfsroutinen $MYCOOKIE = "prcookie"; $cookies_to_set = ""; // // Nur f�r Horus: SQL immer mit anzeigen // $TRACESQL = 0; // if ( strstr( getenv( 'REMOTE_ADDR' ), "193.83.27" ) ) $TRACESQL = 1; // // Genaue Logik der Ticker-Anzeige // $today = date("d.m.y"); $TICKERSQL = " ((katva='n' and ticker='j' and (datum >= sysdate-7)) " . " or (katva='j' and datum='$today')) " . " and archiv='n' "; // // Standardwerte, die in vielen Templates verwendet werden // $SKRIPT = $PHP_SELF; $WEBMASTER2 = 'Christine Spranger'; //wf gibt last mod von /texte dazu $lmod = stat('./texte'); $lmod = date('d.m.Y', $lmod[10]); //wf $defaults = array ( SKRIPT => $SKRIPT, // Dateiname des Skripts METHOD => "post", WEBMASTER => 'Christine Spranger', LMOD => $lmod ); // Navigation f�r Admin-Bereich $nav=<< [Suche] [Archivierung] [News hinzuf�gen] [Veranstaltung hinzuf�gen]

STRING; $bez = array ( pi => "Presseinformationen mit Pressefotos", ps => "Pressespiegel", va => "Veranstaltungen", fo => "Aktuelles aus der Forschung", so => "Newsletter", admin => "Anmeldung zur Administrationsseite", ); $rubrikmenu = array( pi => 'Presseinfo', ps => 'Pressespiegel', fo => 'Forschung', so => 'Newsletter' ); $rubrikmenuplus = $rubrikmenu; $rubrikmenuplus['va'] = "Veranstaltungen"; $datum_pattern = "/^\s*\d+\s*\.\s*\d+\s*\.\d+\s*$/"; $url_pattern = "/^[\w\-]+\.[\w\-]+/"; function iswas ( $wert ) { return isset( $wert ) and strlen( $wert ) > 0 ; } // // Subtemplate laden, mit Werten f�llen, // als String zur�ckgeben // function subtemplate ( $file, $name, $array ) { $sub_template = new XTemplate( $file ); $sub_template->assign( $array ); $sub_template->parse( $name ); return $sub_template->text( $name ); } function minitext ( $t) { $x = new XTemplate( 'minitext.html' ); $x->assign( "TEXT", $t); $x->parse( 'minitext' ); return $x->text( 'minitext' ); } function duplicate ( $id ) { global $datum_pattern, $defaults, $SKRIPT, $TRACESQL; global $datum, $datum2, $ausgef; $ok = 1; $error = array(); if ( ! $ausgef ) $ok = 0; $datum = trim( $datum ); $datum2 = trim( $datum2 ); if ( strlen( $datum ) < 1 ) { $error['datum'] = "Datum wurde auf heute gesetzt!"; $datum = date("d.m.y"); $ok = 0; } elseif ( ! preg_match ( $datum_pattern, $datum ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $ok = 0; } if ( strlen($datum2)>0 and ! preg_match ( $datum_pattern, $datum2 ) ) { $error['datum2'] = "Das 2. Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $ok = 0; } if (! $ok ) { $t = new XTemplate( "copyform.html" ); $t->assign( $defaults ); $t->assign("ID", $id); $t->assign("FORMDATUM", MakeTextField('datum', 10, $datum)); $t->assign("FORMDATUM2", MakeTextField('datum2', 10, $datum2) . $error['datum'] . $error['datum2']); $t->parse( "formular" ); $text .= $t->text( "formular" ); $text .= detail( $id ); } else { $datum = "'$datum'"; $datum2 = "'$datum2'"; // db_do("delete from meldung where id=$id"); $sql = "insert into meldung "; $sql .= "select id.nextVal as id, $datum as datum, $datum2 as datum2, "; $spalten = db_spalten(); array_shift($spalten); // id weg array_shift($spalten); // datum weg array_shift($spalten); // datum2 weg $sql .= join(", ", $spalten); $sql .= " from meldung where id=$id"; $id = db_insert( $sql ); $text = ""; if ($TRACESQL) $text .= "

$sql

"; $text .= "Der kopierte Datensatz hat nun die Nummer $id "; $text .= "[Ansicht]" ; $text .= "[Bearbeiten]" ; $text = minitext( $text ); } return $text; } function delete ( $id ) { global $ok; if (! $ok ) { $text =<<[Ja] [Nein] String; $text = minitext( $text ); $text .= detail( $id ); } else { db_do("delete from meldung where id=$id"); $text = minitext( "Meldung Nr. $id wurde gel�scht" ); } return $text; } function edit ( $id ) // // �ndern eines Datensatzes. // liest aus der db, setzt ein paar Variablen und ruft // dann entweder news_formular() oder veranstaltung_formular() auf // { global $id, $datum, $datum2, $u1, $body, $ausgef; global $kat, $arch, $header, $ticker, $u2, $body, $quelle, $url1; global $url2, $kname1, $kname2, $ktel, $kfax, $kmail, $kurl; $conn = db_logon(); $select = db_select($conn, "id = $id"); $array =& db_nextline( $select ); db_logoff( $conn ); if ( stristr( $array['katva'] , 'j' ) ) { // setze $id, $datum, $datum2, $u1, $body aus der Datenbank $id = $array['id']; $datum = $array['datum']; $datum2 = $array['datum2']; $u1 = $array['u1']; $header= $array['header'];//wf $body = bodyread( $id, $array['body'] ); $ausgef = 0; return veranstaltung_formular ( ); } else { $id = $array['id']; $datum = $array['datum']; $datum2= $array['datum2']; $u1 = $array['u1']; $ausgef= $array['ausgef']; $kat = getallkat( $array ); $arch = $array['arch']; $header= $array['header']; $ticker= $array['ticker']; $u2 = $array['u2']; $body = bodyread( $id, $array['body'] ); $quelle= $array['quelle']; $url1 = $array['url1']; $url2 = $array['url2']; $kname1= $array['kname1']; $kname2= $array['kname2']; $ktel = $array['ktel']; $kfax = $array['kfax']; $kmail = $array['kmail']; $kurl = $array['kurl']; $ausgef = 0; return news_formular(); } } function login () { global $defaults, $user, $pwd, $nav, $cookies_to_set; if ( checkuserpwd ( $user, $pwd) ) { $cookies_to_set = mkcookie( $user, $pwd, getenv ("REMOTE_ADDR") ); return $nav . minitext("

Willkommen user $user

" ) . $nav; } else { $t = new XTemplate("login.html"); $t->assign( $defaults ); $t->assign( "HIDDEN", MakeHidden("kategorie", "login") ); $t->parse( "login" ); $text = $t->text( "login" ); if (empty($user)){return $text;}//login wird erstmals aufgerufen elseif ($pwd=="pr2002"){return $text. minitext('Passwort wurde vom Admin ge�ndert.
Zur Ankündigung von Veranstaltungen steht nun unter
http://www.sbg.ac.at/pr/veranstaltungen/ ein Formular bereit.
Bitte teilen Sie uns mit diesem Formular Ihre Uni-News-Beiträge mit' );} //altes Passwort else {return $text. minitext('Username oder Passwort falsch
' );} } } function suchbox ( $kat ) // // Eingabeformular f�r die "kleine" Suche // { global $defaults, $bez; $sub_template = new XTemplate("suchbox.html"); $sub_template->assign( $defaults ); $sub_template->assign( "TITEL", $bez[$kat] ); $sub_template->assign( "RUBRIK", $kat ); $sub_template->parse( "suche" ); $suche = $sub_template->text( "suche" ); return $suche; } function textsuchesql ( $text ) { $text = strtolower( dbencode($text) ); return "( lower(body) like '%$text%' or lower(u1) like '%$text%' or lower(u2) like '%$text%')"; } function suche ( $kat, $text, $sucharchiv ) // // "kleine" Suche: hier nur Anzeige des Ergebnisses, // siehe function suchbox f�r das Eingabeformular //!!!!!! { global $bez; $sql = " kat$kat='j' "; $sql .= " and " . textsuchesql( $text ); if ( $kat == 'va' ) { $todaysql = " to_date(concat(sysdate ,' 00:00:00'),'DD-MM-YY HH24:MI:SS') "; if ( ! $sucharchiv ) $sql .= " and datum >= $todaysql "; } //else { //if ( ! $sucharchiv ) $sql .= " and archiv = 'n' "; //} /*/wf elseif ( $kat == 'pi' ) { // $todaysql = " to_date(concat(sysdate ,' 00:00:00'),'DD-MM-YY HH24:MI:SS') "; if ( isset($sucharchiv)) $sql .= " and datum >= '1.1.03'"; } else { if ( ! $sucharchiv ) $sql .= " and archiv = 'n' "; } /*///wf $sql .= " order by datum desc"; return liste( $sql, "Suche nach '$text' in " . $bez[ $kat ] , "main"); } function archivseite ( ) { global $TRACESQL, $datum_pattern, $defaults; global $rubrik, $datum, $rubrikmenuplus, $bestaetigt; $t = new XTemplate( "archivieren.html" ); $t->assign( $defaults ); $ok = 1; $error = array (); // Fehlermeldung neben dem einzelnen Feld $meldung = array(); // Fehlermeldung am Anfang der Seite $rubrikensql = array ( pi => " katinfo = 'j' ", fo => " katforsch = 'j' ", ps => " katsonst = 'j' ", so => " katnewsl = 'j' ", va => " katva = 'j' " ); if (! isset ($rubrik) ) $rubrik = "pi"; if ( strlen( $datum ) < 1 ) { $error['datum'] = "Datum wurde gesetzt!"; $datum = date("d.m.y", time() - 6*30*24*60*60 ); // - 6 monate $ok = 0; } elseif ( ! preg_match ( $datum_pattern, $datum ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $ok = 0; } if ( $ok and $bestaetigt ) { $sql = "update meldung set archiv='j' where kat$rubrik='j' "; $sql .= " and datum <= '$datum'"; db_do( $sql ); return minitext( "fertig " . ( $TRACESQL ? "$sql" : "" ) ); } elseif ( $ok ) { $t->assign("RUBRIK", $rubrikmenuplus[ $rubrik ] . MakeHidden('rubrik', $rubrik) ); $t->assign("DATUM", $datum . MakeHidden('datum', $datum) ); $sql = "select count(*) from meldung where kat$rubrik='j' "; $sql .= " and archiv='n' and datum <= '$datum'"; $conn = db_logon(); $count = db_docount($conn, $sql); db_logoff($conn); $t->assign("SUBMIT", "

$count Meldungen werden archiviert " . ( $TRACESQL ? "
$sql
" : "" ) . MakeHidden('bestaetigt', 1) . '' ); } else { $t->assign("RUBRIK", MakeMenu('rubrik', $rubrikmenuplus, $rubrik )); $t->assign("DATUM", MakeTextField('datum', 10, $datum) . $error['datum'] ); $t->assign("SUBMIT", ''); } $t->parse( "suche" ); return $t->text( "suche" ) . $extra; } function suchseite ( $admin ) // // "grosse" Suche f�r Admin-Bereich ($admin==1) und Vorderseite ($admin==0), // Anzeige des Suchformulars und anschliessende ausgabe des // Ergebnisses // { global $datum_pattern, $defaults, $bez, $TICKERSQL, $TRACESQL; global $rubrik, $ticker, $datum, $datum2, $suchtext; global $vomformular, $checkbox; $newsl; $result = ""; $t = new XTemplate( $admin ? "adminsuche.html" : "algsuche.html" ); $t->assign( $defaults ); $ok = 1; $error = array (); // Fehlermeldung neben dem einzelnen Feld $meldung = array(); // Fehlermeldung am Anfang der Seite $rubriken = array ( '*' => 'alle Bereiche', '!va' => 'Newsbereich', pi => '....Presseinfo', fo => '....Forschung', ps => '....Pressespiegel', so => '....Newsletter', va => 'Veranstaltungsbereich' ); $rubrikensql = array ( '*' => ' 1=1 ', '!va' => " (katpi = 'j' or katps = 'j' " . "or katfo = 'j' or katso = 'j' ) ", pi => " katpi = 'j' ", fo => " katfo = 'j' ", ps => " katps = 'j' ", so => " katso = 'j' ", va => " katva = 'j' " ); $tickermenu = array ( '*' => 'alle Nachrichten', 't' => 'nur Tickermeldungen' ); if (! isset ($rubrik) ) $rubrik = "*"; if ( strlen($datum)>0 and ! preg_match ( $datum_pattern, $datum ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $ok = 0; } if ( strlen($datum2)>0 and ! preg_match ( $datum_pattern, $datum2 ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $ok = 0; } $t->assign("RUBRIK", MakeMenu('rubrik', $rubriken, $rubrik ) ); $t->assign("TICKER", MakeMenu('ticker', $tickermenu, $ticker ) ); $t->assign("DATUM", MakeTextField('datum', 10, $datum)); $t->assign("DATUM2", MakeTextField2('datum2', 10, $datum2) . $error['datum'] ); $t->assign("SUCHTEXT", MakeTextField('suchtext', 20, $suchtext)); $t->parse( "suche" ); $result .= $t->text( "suche" ); if ( $ok and isset( $vomformular ) ) { $sql = $rubrikensql[ $rubrik ]; if ($ticker=="t") $sql .= " and $TICKERSQL "; if ( (strlen($datum)>0) and (strlen($datum2)>0) ) { $sql .= " and ( (datum >='$datum' and datum <='$datum2') "; $sql .= " or (datum2>='$datum' and datum2<='$datum2')) "; } elseif (strlen($datum)>0) { $sql .= " and (datum >= '$datum') "; } elseif (strlen($datum2)>0) { $sql .= " and (datum <= '$datum2') "; } # $sql .= " and ((datum = '$datum') or (datum<='$datum' and datum2>='$datum')) "; if (strlen($suchtext)>0) $sql .= " and " . textsuchesql( $suchtext ); if ( (! $checkbox == 'checkbox') and (! $admin) ) $sql .= " and not( archiv = 'j' ) "; if ($admin and $_POST['newsl']) $sql .= " order by header asc"; else $sql .= " order by datum desc"; if ($TRACESQL) $result .= "$sql"; if ( ! $admin ) { $result .= liste( $sql, "Suche nach '$suchtext' in der Datenbank", "main" ); } elseif ( $admin ) { if ($_POST['newsl']){// newsletter $conn = db_logon(); $sql2="select distinct header, datum, datum2 from meldung where ".$sql; $select = db_select($conn, $sql2); $g = new XTemplate( "admingefunden2.html" ); $g->assign( $defaults ); //neu // $g->assign( "TEST", $sql2 ); $g->assign( "DATUM", $datum2 ); while( $array =& db_nextline( $select ) ) { $headers_array[$array[header]]=""; } //print_r($headers_array); // $select = db_select($conn, $sql); $key=""; while( $array =& db_nextline( $select ) ) { $headers_array[$array['header']] .= '
'.$array['u1']; if ($array['header']== $key)$array['header']=""; else {$key = $array['header'];$array['header']="".$array['header'];} $g->assign( "BLOCK", $array ); $g->parse( "ergebnis.block" ); } /*print_r($array); Array ( [id] => 4891 [datum] => 24.03.04 [datum2] => [katva] => n [katpi] => j [katps] => n [katfo] => j [katso] => j [archiv] => n [ticker] => j [header] => [u1] => Kinder... [quelle] => Universit�t Salzburg/hg [url1] => [url2] => [img] => [kname1] => [kname2] => [ktel] => [kfax] => [kmail] => [kurl] => [imgtext] => [kategorie] => Aktuelles aus der Forschung ) */ while (list($key, $val)= each($headers_array)){ $g->assign( "HEADERS", "
$key$val" ); $g->parse( "ergebnis.headers" ); } $count = db_count( $select ); if ($count == 0) $count = "Keine "; $g->assign( "COUNT", $count ); $g->parse( "ergebnis" ); $result .= $g->text( "ergebnis" ); db_logoff($conn); }else {//normale Suche $conn = db_logon(); $select = db_select($conn, $sql); $g = new XTemplate( "admingefunden.html" ); $g->assign( $defaults ); while( $array =& db_nextline( $select ) ) { $array['kategorie'] = $bez[ getkat( $array ) ]; if ( strlen( $array['datum2'] ) > 1 ) $array['datum2'] = " - " . $array['datum2']; $g->assign( "BLOCK", $array ); if ( $array['archiv'] == 'j' ) { $g->parse( "ergebnis.block.archiv" ); } $g->parse( "ergebnis.block" ); } $count = db_count( $select ); if ($count == 0) $count = "Keine "; $g->assign( "COUNT", $count ); $g->parse( "ergebnis" ); $result .= $g->text( "ergebnis" ); db_logoff($conn); } } } return $result; } // // Ein ausf�llbares Formular anzeigen // function veranstaltung_formular ( ) { global $datum_pattern, $url_pattern, $defaults, $SKRIPT; global $id, $datum, $datum2, $u1, $body, $ausgef, $header; $t = new XTemplate( "veranstaltungform.html" ); $t->assign( $defaults ); $ok = 1; $error = array (); // Fehlermeldung neben dem einzelnen Feld $meldung = array(); // Fehlermeldung am Anfang der Seite // �berpr�fung der einzelnen Felder - - - - - - - - - - - - - - - - if ( ! $ausgef ) $ok = 0; $datum = trim( $datum ); $datum2 = trim( $datum2 ); if ( strlen( $datum ) < 1 ) { // $error['datum'] = "Bitte Datum eingeben!"; $meldung[] = "Datum fehlt"; //$datum = date("d.m.y"); //Datum in VA-Kalender nicht vorbef�llen $ok = 0; } elseif ( ! preg_match ( $datum_pattern, $datum ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $meldung[] = "Format des Datums stimmt nicht"; $ok = 0; } if ( strlen( $datum2 ) > 0 and !preg_match( $datum_pattern, $datum2)){ $error['datum2'] = "auch das 2. Datum bitte im Format t.m.y eingeben, " . "z.B. 24.12.02"; $meldung[] = "Format des 2. Datums stimmt nicht"; $ok = 0; } if ( strlen( $ticker ) < 1 ) { $ticker="j"; } if ( strlen( $u1 ) < 1 ) { $error['u1'] = "Feld muss ausgef�llt werden!"; $meldung[] = "�berschrift 1 fehlt"; $ok = 0; } if ( strlen( $u1 ) >= 250 ) { $error['u1'] = "maximal 250 Zeichen"; $meldung[] = "�berschrift 1 zu lange"; $ok = 0; } if ( strlen( $u2 ) >= 250 ) { $error['u1'] = "maximal 250 Zeichen"; $meldung[] = "�berschrift 2 zu lange"; $ok = 0; } if ( strlen( $body ) < 1 ) { $error['body'] = "Feld muss ausgef�llt werden!"; $meldung[] = "Bodytext fehlt"; $ok = 0; } // �berpr�fung fertig, .... - - - - - - - - - - - - - - - - - - - - if ( $ok ) { // jetzt schreib ichs in die db $sql = "insert into meldung "; if ( $id ) $sql = "update meldung "; $names = array(); $values = array(); // es fehlt noch: kat!!!! $names[] = "quelle"; $values[] = "Universit�t Salzburg"; if( iswas( $datum ) ) { $names[] = "datum"; $values[] = $datum ;} if( iswas( $datum2) ) { $names[] = "datum2"; $values[] = $datum2;} if( iswas( $header ) ){ $names[] = "header"; $values[] = enc($header);} //wf if( iswas( $u1 ) ) { $names[] = "u1"; $values[] = enc( $u1 ) ;} if( iswas( $body ) ) { $names[] = "body"; $values[] = justthewords( $body );} $names[]= "katva"; $values[]= "j"; for ($i=0;$i[Bearbeiten]" . "[Loeschen]" .detail($id) ); } else { $sql .= "(id, " . implode(", ", $names) . ") "; $sql .= "values(id.nextVal, '" . implode("', '", $values) . "')"; $id = db_insert( $sql ); bodywrite( $id, $body ); return minitext( "Datensatz unter der Nummer $id gespeichert - " . "[Bearbeiten]" . "[Loeschen]" .detail($id) ); } } else { // Anzeige des Formulars - - - - - - - - - - - - - - - - - if ( count( $meldung ) > 0 and isset( $ausgef ) ) { $mtext = "Fehlermeldung:

"; } else { $mtext = ""; } if ( ! $ausgef and strlen($id) > 0 ) $t->assign("ID", $id ); $t->assign("MELDUNG", $mtext ); $t->assign("FORMDATUM", MakeTextField('datum', 10, $datum)); $t->assign("FORMDATUM2", MakeTextField('datum2', 10, $datum2) . $error['datum'] . $error['datum2']); $t->assign("FORMARCH", MakeRadioButtons("arch", $arch)); $t->assign("FORMHEADER", MakeTextField('header', 40, $header, 250)); //header weg damit keine news schreiben $t->assign("FORMHEADER2", MakeMoreRadioButtons("header1", $header));//von mir dazu $t->assign("FORMTICKER", MakeRadioButtons("ticker", $ticker)); $t->assign("FORMU1", MakeTextField('u1', 40, $u1, 250)); //$t->assign("FORMBODY", MakeTextArea('body', 55,20, $body)); //$t->assign("FORMBODY", MakeNewTextArea('body','260','500',$body)); $t->assign("FORMBODY", MakeNewTextArea($body)); $t->parse( "formular" ); return $t->text( "formular" ); } } function news_formular ( ) // // Eingabe eines neuen Newsmeldung // { global $datum_pattern, $url_pattern, $defaults, $rubrikmenu, $ausgef, $TRACESQL; global $id, $kat,$datum, $arch, $header, $ticker, $u1, $u2, $body, $quelle, $url1, $url2, $img, $img_name, $img_size, $fertigesbild, $imgtext, $kname1, $kname2, $ktel, $kfax, $kmail, $kurl; $t = new XTemplate( "newsform.html" ); $t->assign( $defaults ); $ok = 1; $error = array (); // Fehlermeldung neben dem einzelnen Feld $meldung = array(); // Fehlermeldung am Anfang der Seite if ( ! $ausgef ) $ok = 0; // noch nie ausgef�llt? kann nicht fertig sein // �berpr�fung der einzelnen Felder - - - - - - - - - - - - - - - - $datum = trim( $datum ); if ( ! isset( $kat ) ) { $kat = array ( ); $ok = 0; } if ( count( $kat ) == 0 ) { $meldung[] = "Keine Kategorie ausgew�hlt"; $ok = 0; } if ( strlen( $datum ) < 1 ) { $error['datum'] = "Datum wurde auf heute gesetzt!"; $datum = date("d.m.y"); $ok = 0; } elseif ( ! preg_match ( $datum_pattern, $datum ) ) { $error['datum'] = "Das Datum bitte im Format t.m.y eingeben, z.B. 24.12.02"; $meldung[] = "Format des Datums stimmt nicht"; $ok = 0; } if ( ! isset ( $arch ) ) $arch = "n"; $header = trim( strip_html ( $header ) ); if ( ! isset ( $ticker ) ) $ticker = "j"; $u1 = trim( strip_html ( $u1 ) ); if ( strlen( $u1 ) < 1 ) { $error['u1'] = "Feld muss ausgef�llt werden!"; $meldung[] = "�berschrift 1 fehlt"; $ok = 0; } $u2 = trim( strip_html ( $u2 ) ); if ( strlen( $body ) < 1 ) { $error['body'] = "Feld muss ausgef�llt werden!"; $meldung[] = "Bodytext fehlt"; $ok = 0; } // if ( strlen( $body ) >= 4000 ) { // $error['u1'] = "maximal 4000 Zeichen"; // $meldung[] = "Body zu lange"; // $ok = 0; // } $quelle = trim( strip_html ( $quelle ) ); if ( strlen( $quelle ) < 1 ) $quelle = "Universit�t Salzburg"; $url1 = trim( $url1 ); if ( strlen( $url1 ) > 0 ) { if( preg_match ( '/^http/', $url1 ) ) { $meldung[] = "Format des 1. Internet-Links stimmt nicht"; $error['url1'] = "http:// darf nicht mit eingegeben werden!"; } elseif( ! preg_match ( $url_pattern, $url1 ) ) { $meldung[] = "Format des 1. Internet-Links stimmt nicht"; $error['url1'] = "Format der URL stimmt nicht"; } else { $url1x = rawurlencode( $url1 ); $error['url1'] =<<testen des Links http://$url1 STRING; } } $url2 = trim( $url2 ); if ( strlen( $url2 ) > 0 ) { if( preg_match ( '/^http/', $url2 ) ) { $meldung[] = "Format des 2. Internet-Links stimmt nicht"; $error['url2'] = "http:// darf nicht mit eingegeben werden!"; } elseif( ! preg_match ( $url_pattern, $url2 ) ) { $meldung[] = "Format des 2. Internet-Links stimmt nicht"; $error['url2'] = "Format der URL stimmt nicht"; } else { $url2x = rawurlencode( $url2 ); $error['url2'] =<<testen des Links http://$url2 STRING; } } if ( $fertigesbild ) { // bild schon da } elseif ( strlen($img)>0 and $img_size > 0 ) { $fertigesbild = "imgs/" . rawurlencode($img_name); while ( file_exists( $fertigesbild ) ) { $fertigesbild = str_replace( ".", "1.", $fertigesbild ); } if ( copy ($img, $fertigesbild ) ) { unlink( $img ); $img = ""; } else { $meldung[] = "Upload-Bild konnte nicht nach img/ kopiert werden"; $img = ""; $fertigesbild = ""; } } $imgtext = trim( strip_html ( $imgtext ) ); $kname1 = trim( strip_html ( $kname1 ) ); $kname2 = trim( strip_html ( $kname2 ) ); $ktel = trim( strip_html ( $ktel ) ); $kfax = trim( strip_html ( $kfax ) ); $kmail = trim( strip_html ( $kmail ) ); if ( strlen( $kmail ) > 0 ) { if ( ! strstr( strstr( $kmail, "@" ), "." ) ) { $error['kmail'] = " Format der E-Mail Adresse stimmt nicht"; $meldung[] = "Format der E-Mail Adresse bei den Kontakt-Daten stimmt nicht"; $ok = 0; } } $kurl = trim( $kurl ); if ( strlen( $kurl ) > 0 ) { if( preg_match ( '/^http/', $url2 ) ) { $meldung[] = "Format des Internet-Links in den Kontaktdaten stimmt nicht"; $error['kurl'] = "http:// darf nicht mit eingegeben werden!"; } elseif( ! preg_match ( $url_pattern, $kurl ) ) { $meldung[] = "Format des Internet-Links in den Kontaktdaten stimmt nicht"; $error['kurl'] = "Format der URL stimmt nicht"; } else { $ku = rawurlencode( $kurl ); $error['kurl'] =<<testen des Links http://$kurl STRING; } } // �berpr�fung fertig, .... - - - - - - - - - - - - - - - - - - - - if ( $ok ) { // jetzt schreib ichs in die db $names = array(); $values = array(); // es fehlt noch: kat!!!! while (list ($k, $forgetme) = each ($rubrikmenu)) { if ( in_array( $k, $kat ) ) { $names[] = "kat$k"; $values[] = "j"; } } // if( in_array("ps", $kat) ) { $names[] = "kat$k"; $values[] = "j"; if( iswas( $datum ) ) { $names[] = "datum"; $values[] = $datum ;} if( iswas( $arch ) ) { $names[] = "archiv"; $values[] = $arch ;} if( iswas( $header ) ){ $names[] = "header"; $values[] = enc($header);} if( iswas( $ticker ) ){ $names[] = "ticker"; $values[] = $ticker ;} if( iswas( $u1 ) ) { $names[] = "u1"; $values[] = enc($u1) ;} if( iswas( $u2 ) ) { $names[] = "u2"; $values[] = enc($u2) ;} if( iswas( $body ) ) { $names[] = "body"; $values[] = justthewords( $body ); } if( iswas( $quelle ) ){ $names[] = "quelle"; $values[] = enc($quelle);} if( iswas( $url1 ) ) { $names[] = "url1"; $values[] = trim($url1) ;} if( iswas( $url2 ) ) { $names[] = "url2"; $values[] = trim($url2) ;} if( iswas( $fertigesbild ) ) { $names[] = "img"; $values[] = $fertigesbild ;} if( iswas( $imgtext ) ){ $names[] = "imgtext"; $values[] = enc($imgtext);} if( iswas( $kname1 ) ){ $names[] = "kname1"; $values[] = enc($kname1);} if( iswas( $kname2 ) ){ $names[] = "kname2"; $values[] = enc($kname2);} if( iswas( $ktel ) ) { $names[] = "ktel"; $values[] = enc($ktel ) ;} if( iswas( $kfax ) ) { $names[] = "kfax"; $values[] = enc($kfax ) ;} if( iswas( $kmail ) ) { $names[] = "kmail"; $values[] = enc($kmail) ;} if( iswas( $kurl ) ) { $names[] = "kurl"; $values[] = trim($kurl) ;} for ($i=0;$i[Bearbeiten]" . "[Loeschen]" .detail($id) ); } else { // keine id vorhanden: neuer datensatz mit insert $sql = "insert into meldung "; $sql .= "(id, " . implode(", ", $names) . ") "; $sql .= "values(id.nextVal, '" ; $sql .= implode("', '", $values) ; $sql .= "')"; $id = db_insert( $sql ); bodywrite( $id, $body ); return minitext( "Datensatz unter der Nummer $id gespeichert - " . "[Bearbeiten]" . "[Loeschen]" .detail($id) ); } } else { // Anzeige des Formulars - - - - - - - - - - - - - - - - - // falls keine id da ist wird das formular erst zum ersten // mal angezeigt, dann gibts noch keine fehlermeldung if ( count( $meldung ) > 0 and isset( $id ) ) { $mtext = "Fehlermeldung:
  • " . implode("
  • ", $meldung) . "
"; } else { $mtext = ""; } if ( ! $ausgef and strlen($id) > 0 ) $t->assign("ID", $id ); $t->assign("MELDUNG", $mtext ); $t->assign("FORMKAT", MakeCheckBoxes('kat', $rubrikmenu , $kat ) ); $t->assign("FORMDATUM", MakeTextField('datum', 15, $datum) . $error['datum']); $t->assign("FORMARCH", MakeRadioButtons("arch", $arch)); $t->assign("FORMHEADER", MakeTextField('header', 40, $header, 250));//header weg damit keine news schreiben $t->assign("FORMTICKER", MakeRadioButtons("ticker", $ticker)); $t->assign("FORMU1", MakeTextArea('u1', 40,2, $u1)); $t->assign("FORMU2", MakeTextArea('u2', 40,2, $u2)); //$t->assign("FORMBODY", MakeTextArea('body', 55,20, $body)); $t->assign("FORMBODY", MakeNewTextArea($body)); $t->assign("FORMQUELLE", MakeTextField('quelle', 40, $quelle, 250)); $t->assign("FORMURL1", MakeTextField('url1', 20, $url1, 80) . $error['url1']); $t->assign("FORMURL2", MakeTextField('url2', 20, $url2, 80) . $error['url2']); if ( $fertigesbild ) { $t->assign("FORMUPLOAD", "" . MakeHidden('fertigesbild', $fertigesbild ) . $error['img'] ); } else { $t->assign("FORMUPLOAD", '' . $error['img'] ); } $t->assign("FORMIMGTEXT", MakeTextField('imgtext', 40, $imgtext, 160)); $t->assign("FORMKNAME1", MakeTextField('kname1', 20, $kname1, 80)); $t->assign("FORMKNAME2", MakeTextField('kname2', 20, $kname2, 80)); $t->assign("FORMKTEL", MakeTextField('ktel', 20, $ktel, 80)); $t->assign("FORMKFAX", MakeTextField('kfax', 20, $kfax, 80)); $t->assign("FORMKMAIL", MakeTextField('kmail', 20, $kmail, 80) . $error['kmail']); $t->assign("FORMKURL", MakeTextField('kurl', 20, $kurl, 80) . $error['kurl']); $t->parse( "formular" ); return $t->text( "formular" ); } } function arrayastext ( $array ) { $text = "Array: ("; while (list ($k, $v) = each ($array)) { $text .= "$k => '$v', "; } $text .= ")"; return $text; } function javascroller () // // Den Javascroller mit Text bef�llen // { global $bez, $SKRIPT, $TICKERSQL, $TRACESQL; $java_template = new XTemplate ("java.html"); $conn = db_logon(); $sql = $TICKERSQL; $select = db_select($conn, $sql); $maxline=0; $trace = ""; while( $array =& db_nextline( $select ) ) { $nachricht = array (); $nachricht[ 'KAT' ] = $bez[ getkat($array) ]; $nachricht[ 'URL' ] = "http://" . getenv( 'HTTP_HOST' ) . $SKRIPT . "?kategorie=detail&id=" . $array[ 'id' ]; $wraptext = $array['u1']; $wraptext = preg_replace( "/\n/", " ", $wraptext ); $wraptext = wordwrap( $wraptext, 27, "\n", 1 ); $wraparray = explode("\n", $wraptext); for ($l=1;$l<=10;$l++) { $nachricht[ "X$l" ] = $maxline+$l; if ($l < 6) $nachricht[ "zeile$l" ] = $wraparray[ $l-1 ]; } $maxline+=10; $java_template->assign("NACHRICHT", $nachricht ); $java_template->parse("java.nachricht"); /* parse block1 */ } db_logoff($conn); $java_template->assign("MAXLINE", $maxline); $java_template->parse("java"); /* parse block1 */ $text = $java_template->text("java"); // $text = htmlentities( $text ); return ($TRACESQL ? "$sql
" : "") . $java_template->text("java"); } // Archiv // // ================================================== // Hilfs-Funktionen, die von verschiedenen Vorg�ngen // verwendet werden // ================================================== function liste ( $sql, $text, $name, $template = "liste.html" ) // // Ausgabe einer Liste von Datens�tzen // { global $defaults, $TRACESQL; $conn = db_logon(); $select = db_select($conn, $sql); $g = new XTemplate( $template ); $g->assign( $defaults ); $g->assign( "KOPF", $text ); $g->assign( "TEXT", $text ); $g->assign( "NAME", $name ); while( $array =& db_nextline( $select ) ) { if ( $array['datum2'] ) $array['datum'] .= " - "; $array['body'] = bodyread( $array['id'], $array['body'] ); $g->assign( "BLOCK", $array ); $g->parse( "liste.block" ); } // echo "array war '$array'"; $count = db_count( $select ); if ($count == 0) $count = "Keine "; $g->assign( "COUNT", $count ); $g->parse( "liste" ); $result .= $g->text( "liste" ); db_logoff($conn); if ($TRACESQL) $result = "

$sql

$result"; return $result; } function detail ( $id ) // // Darstellung *eines* Datensatzes // { global $bez, $defaults; if (! isset( $id ) or ! preg_match ( "/^\d+$/", $id ) ) return minitext( "404 - Meldung muss eine Nummer haben, nicht '$id'" ); $conn = db_logon(); $select = db_select($conn, "id=$id"); $array =& db_nextline( $select ); db_logoff( $conn ); if (! $array) return minitext( "404 - Meldung mit Nummer '$id' nicht in der Datenbank" ); if ($array['url1']) $array['url1'] = "" . $array['url1'] . ""; if ($array['url2']) $array['url2'] = "" . $array['url2'] . ""; if ($array['kurl']) $array['kurl'] = "" . $array['kurl'] . ""; $array['body'] = bodyread( $array['id'], $array['text'] ); $t = new XTemplate( "detail.html" ); $t->assign( $defaults ); if ( strlen( $array['datum2'] ) > 1 ) $array['datum2'] = " - " . $array['datum2']; $t->assign( $array ); $t->assign( "TITEL",$bez[ getkat($array) ] ); if ( $array[ 'img' ] ) { $t->assign( "IMG", "" ); $t->assign( "IMGTEXT", $array['imgtext']); $t->parse("detail.bild"); } if ( $array['ktel'] ) $t->parse("detail.kontakt.ifktel"); if ( $array['kfax'] ) $t->parse("detail.kontakt.ifkfax"); if ( $array['kmail'] ) $t->parse("detail.kontakt.ifkmail"); if ( $array['kurl'] ) $t->parse("detail.kontakt.ifkurl"); if ( $array['kname1'] or $array['kname2'] or $array['ktel'] or $array['kfax'] or $array['kmail'] or $array['kurl'] ) { $t->parse("detail.kontakt"); } $t->parse( "detail" ); return $t->text( "detail" ); } function bloecke ($kategorie) { // // "verdichtete Liste": // was soll genau angezeigt werden? // bei Veranstaltungen: zwei Tage, drei Monate // bei Pressespiegel: drei Monate // global $TRACESQL; $block = array (); $conn = db_logon(); if ($kategorie == "va") { $todaysql = " to_date(concat(sysdate ,' 00:00:00'),'DD-MM-YY HH24:MI:SS') "; $today = db_docount($conn, "select distinct $todaysql as today from meldung"); $sql = "SELECT count(*) FROM meldung " . "where katva='j' and datum='$today'"; if ($TRACESQL) $tracetext .= "

" . htmlentities($sql) . "

"; $count = db_docount($conn, $sql); $block[] = array ( DATUM => "Heute - $today" , LINK => "kategorie=va&tag=$today", ANZ=> $count, BEZ=> $count == 1 ? "Veranstaltung" : "Veranstaltungen", ); $tomorrowsql = " to_date(concat(sysdate+1 ,' 00:00:00'),'DD-MM-YY HH24:MI:SS') "; $tomorrow = db_docount($conn, "select distinct $tomorrowsql as today from meldung"); $sql = "SELECT count(*) FROM meldung " . "where katva='j' and datum='$tomorrow'"; if ($TRACESQL) $tracetext .= "

" . htmlentities($sql) . "

"; $count = db_docount($conn, $sql); $block[] = array ( DATUM => "Morgen - $tomorrow" , LINK => "kategorie=va&tag=$tomorrow", ANZ=> $count, BEZ=> $count == 1 ? "Veranstaltung" : "Veranstaltungen", ); $dat = "TO_CHAR(datum, 'MONTH YYYY')"; $sql = "SELECT count(*) as count,$dat as monat, " . "min(datum) as datum FROM meldung " . "where katva='j' AND datum>sysdate GROUP BY $dat " . "HAVING min(datum)-sysdate<120 " . "order by datum"; if ($TRACESQL) $tracetext .= "

" . htmlentities($sql) . "

"; $select = db_select($conn, $sql); $count = 0; while( $count < 3 and $array =& db_nextline( $select ) ) { $block[] = array ( DATUM => $array['monat'], // LINK => "kategorie=va&monat=" . rawurlencode( $array['monat'] ), LINK => "kategorie=va&monat=" . rawurlencode( $array['datum'] ), ANZ=>$array['count'], BEZ=> $array['count'] == 1 ? "Veranstaltung" : "Veranstaltungen", ); $count++; } $inthreemonthssql = " ADD_MONTHS(to_date( concat( '01',to_char(sysdate,'.MM.YY')),'DD.MM.YY'),3) as drei"; //$inthreemonthssql = " ADD_MONTHS( concat( '01',to_char(sysdate,'.MM.YY')),3) as drei"; $inthreemonths = db_docount($conn, "select distinct $inthreemonthssql from meldung"); $sql = "SELECT count(*) as count " . "FROM meldung " . "where katva='j' AND datum>='$inthreemonths' "; if ($TRACESQL) $tracetext .= "

" . htmlentities($sql) . "

"; //var_dump('1'); $count = db_docount($conn, $sql); //var_dump('2'); $block[] = array ( DATUM => 'Vorschau', LINK => "kategorie=va&rest=$inthreemonths", ANZ=> $count, BEZ=> $count == 1 ? "Veranstaltung" : "Veranstaltungen", ); if ($TRACESQL) $block[] = array ( DATUM => 'TRACING', BEZ => $tracetext ); } elseif ($kategorie == 'ps') { $dat = "TO_CHAR(datum, 'MONTH YYYY')"; $sql = "SELECT count(*) as count,$dat as monat, " . "min(datum) AS datum FROM meldung " . "WHERE katps='j' GROUP BY $dat " . "ORDER by datum desc " ; /* $sql = "SELECT count(*) as count,$dat as monat, " . "min(datum) AS datum FROM meldung " . "WHERE katps='j' AND archiv='n' GROUP BY $dat " . "ORDER by datum desc " ;*/ $select = db_select($conn, $sql); if ($TRACESQL) $tracetext .= "

" . htmlentities($sql) . "

"; while( $array =& db_nextline( $select ) ) { $block[] = array ( DATUM => $array['monat'], LINK => "kategorie=ps&monat=" . rawurlencode( $array['monat'] ), ANZ=>$array['count'], BEZ=> $array['count'] == 1 ? "Meldung" : "Meldungen",); } if ($TRACESQL) $block[] = array ( DATUM => 'TRACING', BEZ => $tracetext ); } db_logoff($conn); return $block; } // ================================================== // Haupt-Programm // ================================================== // -------------------------------------------------- // Haupt-Template laden // -------------------------------------------------- if ( isset($tag) or isset($monat) or isset($rest) or in_array( $kategorie, array( "detail", "login", "admin") ) ) { $layout_template=new XTemplate ("layoutbreitneu.html"); } else { $layout_template=new XTemplate ("layoutneu.html"); } $layout_template->assign($defaults); // -------------------------------------------------- // Verzweigung zu den verschiedenen Vorg�ngen // -------------------------------------------------- if ( $kategorie === "login" ) { $layout_template->assign("INHALT", login()); } elseif ( $kategorie === "admin" ) { $layout_template->assign( $defaults ); // passt das cookie wirklich zu dieser ip-adresse? if (! checkcookie( $MYCOOKIE ) ) { $layout_template->assign("INHALT", "Zugriff nur nach " . "erfoglreichem login" . "" . $HTTP_COOKIE_VARS[ $MYCOOKIE ] . " von " . getenv ("REMOTE_ADDR") ); } else { $layout_template->assign("BOX",""); $in = ""; if ( $subkat === "index" ) { $in = suchseite( 1 ); } elseif ( $subkat === "archiv" ) { $in = archivseite() ; } elseif ( $subkat === "newnews" ) { $in = news_formular(); } elseif ( $subkat === "delete" ) { $in = delete( $id ); } elseif ( $subkat === "copy" ) { $in = duplicate( $id ); } elseif ( $subkat === "edit" ) { $in = edit( $id ); } elseif ( $subkat === "newveranst" ) { $in = veranstaltung_formular(); } else { $in = "404 - Link kaputt, oder Seite noch nicht implementiert! ($kategorie / $subkat)"; } $layout_template->assign("INHALT",$nav . $in . $nav); } } elseif ( $kategorie == "suche" ) { $sucharchiv = false; if ($checkbox=='checkbox') $sucharchiv = true; $layout_template->assign( $defaults ); $layout_template->assign("INHALT", suche( $thema, $textfield, $sucharchiv ) ); $suche = suchbox( $thema ); $layout_template->assign("BOX", $suche); } elseif ( $kategorie == 'detail' ) { $layout_template->assign( $defaults ); $layout_template->assign("INHALT", detail( $id ) ); $layout_template->assign("BOX", ""); } elseif ( isset($bez[$kategorie]) and !isset($tag) and !isset($monat) and !isset($rest)) { $layout_template->assign( $defaults ); $layout_template->assign("TITEL", $bez[$kategorie] ); $layout_template->assign("NAV", " > " . $bez[$kategorie] . ""); if ($kategorie == 'fo') $layout_template->assign("NAV", " > Forschung"); $suche = suchbox($kategorie); $layout_template->assign("BOX", $suche); if ( $kategorie == 'va' or $kategorie == 'ps') { $liste_template = new XTemplate ($kategorie . "dichteliste.html"); $liste_template->assign( $defaults ); $block = bloecke($kategorie); for ($i=0; $i < count($block); $i++) { $liste_template->assign("BLOCK", $block[$i]); $liste_template->parse("liste.block"); } $liste_template->assign("KOPF", $bez[$kategorie]); $liste_template->parse("liste"); $liste = $liste_template->text("liste"); $layout_template->assign("INHALT", $liste); } else {if ( $kategorie == 'fo') { $inhalt = liste( " kat$kategorie='j' order by datum desc" , $bez[ $kategorie ], "main" ); }else { $inhalt = liste( " kat$kategorie='j' and archiv='n' order by datum desc" , $bez[ $kategorie ], "main" ); } if ( $TRACESQL ) $inhalt = "Kategorie $kategorie:
$inhalt"; //wf!!! if ( $kategorie == 'pi') { $inhalt .= " ARCHIV 2012"; $inhalt .= "
ARCHIV 2011"; $inhalt .= "
ARCHIV 2010"; $inhalt .= "
ARCHIV 2009"; $inhalt .= "
ARCHIV 2008"; $inhalt .= "
ARCHIV 2007"; $inhalt .= "
ARCHIV 2006"; $inhalt .= "
ARCHIV 2005"; $inhalt .= "
ARCHIV 2004"; $inhalt .= "
ARCHIV 2003"; $inhalt .= "
ARCHIV 2002"; $inhalt .= "
ARCHIV 2001"; } // $layout_template->assign("INHALT", $inhalt); } } elseif ( $kategorie=='va' and isset($tag) ) { $suche = suchbox( $kategorie ); $bz = $bez[$kategorie]; $sql = " kat$kategorie = 'j' and datum='$tag' "; $layout_template->assign("TITEL"," $bz am $tag"); $layout_template->assign("NAV"," > $bz > $tag"); $layout_template->assign("INHALT", ($TRACESQL ? "

$sql

" : "") . liste( $sql , " am $tag", "main", "valiste.html" )); $layout_template->assign("BOX",$suche); } elseif ( isset($kategorie) and isset($tag) ) { $suche = suchbox( $kategorie ); $bz = $bez[$kategorie]; $sql = " kat$kategorie = 'j' and " . "( (datum='$tag' and datum2 is NULL) " . " or (datum<='$tag' and datum2>='$tag') )"; $layout_template->assign("TITEL"," - $bz am $tag"); $layout_template->assign("NAV"," > $bz am $tag"); $layout_template->assign("INHALT", ($TRACESQL ? "

$sql

" : "") . liste( $sql , "$bz am $tag", "main" )); $layout_template->assign("BOX",$suche); } elseif ( $kategorie == 'va' and isset($monat) ) { $inhalt_template = new XTemplate ("valayout.html"); $inhalt_template->assign( $defaults ); $m = substr($monat, strpos($monat, ".")+1, 2); $y = substr($monat, strrpos($monat, ".")+1); $epoch = mktime(0,0,0,$m,1,$y); $sql = "select distinct datum from meldung where " . "archiv = 'n' " . "and katva = 'j' " . "and to_char(datum, 'MM') like '$m' " . "and to_char(datum, 'YY') like '$y' "; // nur im aktuellen Monat: tages-nr. ist wichtig if( $m == date("m") ) $sql .= "and to_char(datum, 'dd') >= to_char(sysdate, 'dd') "; $sql .= "order by datum"; if ( $TRACESQL ) $inhalt = "

$sql (f�r '$monat')

"; // $inhalt = "

$sql (f�r '$monat')

"; $conn = db_logon(); $select = db_select($conn, $sql); $daten = array(); while( $array =& db_nextline( $select ) ) { $datum = $array['datum']; $daten[] = $datum; } $count = db_count( $select ); db_logoff($conn); $navigation .= "

An $count Tagen beginnen Veranstaltungen:

| "; $linkarray = array(); for ($i=0;$iassign( "BOX", calendar( $linkarray, $epoch )); $inhalt_template ->assign("FILTER", MakeFilterMenu('bereich', $datum, $bereich, $filter)); $inhalt_template->assign( "LISTE", $inhalt ); $inhalt_template->assign( "KOPF", $mj ); $inhalt_template->parse("inhalt"); $iganz = $inhalt_template->text("inhalt"); $layout_template->assign("TITEL"," Veranstaltungen $mj"); $layout_template->assign("NAV"," > Veranstaltungen > $mj"); $layout_template->assign("INHALT", $iganz) ; } elseif ( $kategorie == 'va' and isset($rest) ) { $inhalt_template = new XTemplate ("valayout.html"); $inhalt_template->assign( $defaults ); $dat = "TO_CHAR(datum, 'MONTH YYYY')"; $sql = "SELECT $dat as monat, " . "min(datum) as datum FROM meldung " . "where katva='j' AND datum>'$rest' GROUP BY $dat " . "order by datum"; $conn = db_logon(); $select = db_select($conn, $sql); $daten = array(); while( $array =& db_nextline( $select ) ) { $daten[] = $array['monat']; } $count = db_count( $select ); db_logoff($conn); if ($TRACESQL) $navigation .= "

$sql

"; $navigation .= "

$count Monate mit Veranstaltungen in der Vorschau

"; for ($i=0;$iassign( "BOX", ""); $inhalt_template->assign( "LISTE", $inhalt ); $inhalt_template->assign( "KOPF", "nach dem $rest" ); $inhalt_template->parse("inhalt"); $iganz = $inhalt_template->text("inhalt"); $layout_template->assign("TITEL"," Veranstaltungsvorschau"); $layout_template->assign("NAV"," > Veranstaltungen > Vorschau"); $layout_template->assign("INHALT", $iganz) ; } elseif ( $kategorie =='ps' and isset($monat) ) { $suche = suchbox( $kategorie ); $monat = rawurldecode( $monat ); // $dat = "TO_CHAR(datum, 'MONTH YYYY')"; $sql = "katps='j' and ( TO_CHAR(datum, 'MONTH YYYY') like '$monat' ) "; $sql .= " order by datum desc "; $inhalt = liste( $sql, "Pressespiegel $monat", "main", "psliste.html"); $layout_template->assign("TITEL"," - Pressespiegel"); $layout_template->assign("NAV"," > Pressespiegel"); $layout_template->assign("INHALT", $inhalt) ; $layout_template->assign("BOX", $suche); } ///////wf archiv elseif ( $kategorie =='archiv' ) { $suche = suchbox( 'pi' ); $jahr = rawurldecode( $jahr ); // $dat = "TO_CHAR(datum, 'MONTH YYYY')"; $sql = "katpi='j' and ( TO_CHAR(datum, 'YY') like '$jahr' ) "; $sql .= " order by datum desc "; $inhalt = liste( $sql, "Archiv 20$jahr", "main", "liste.html"); $layout_template->assign("TITEL"," - Archiv 20$jahr"); $layout_template->assign("NAV"," > Archiv 20$jahr"); $layout_template->assign("INHALT", $inhalt) ; $layout_template->assign("BOX", $suche); } ///////wf elseif ( isset($kategorie) ) { $layout_template->assign("INHALT", "404 - Seite $kategorie nicht gefunden"); $layout_template->assign("BOX", ""); } elseif ( $javascroller == 'test') { $java = javascroller(); $layout_template->assign( $defaults ); $layout_template->assign("INHALT", "
".htmlentities( $java ). "
" ); $layout_template->assign("TITEL",""); $layout_template->assign("NAV",""); $layout_template->assign("BOX",$java); } else { $inhalt = subtemplate("index.html", "inhalt", $defaults); $inhalt .= suchseite( 0 ); $java = javascroller(); $layout_template->assign( $defaults ); $layout_template->assign("INHALT", $inhalt); $layout_template->assign("TITEL",""); $layout_template->assign("NAV",""); $layout_template->assign("BOX",$java); } // -------------------------------------------------------------------- // letzte Patches if ($kategorie == "va") $layout_template->assign("WEBMASTER", $WEBMASTER2); // Cookies senden if ($cookies_to_set) setcookie( $MYCOOKIE, $cookies_to_set); // Output der fertigen Seite $layout_template->parse("layout"); $layout_template->out("layout"); // nur am Veranstaltungskalender: extra
-s f�rs runterscrollen if ( $kategorie == 'va' and isset($monat) ) { echo ("











"); echo ("











"); echo ("











"); } ?>