From fb1fc4ae57e7aee77b25ce179525ff1e41dd236f Mon Sep 17 00:00:00 2001 From: Gerald Simane Date: Thu, 18 Jun 2009 11:34:47 +0000 Subject: [PATCH] --- cis/testtool/admin/edit_gebiet.php | 362 ++++---- cis/testtool/admin/index.php | 1248 ++++++++++++++-------------- 2 files changed, 805 insertions(+), 805 deletions(-) diff --git a/cis/testtool/admin/edit_gebiet.php b/cis/testtool/admin/edit_gebiet.php index a2ca0e74e..d5800188e 100644 --- a/cis/testtool/admin/edit_gebiet.php +++ b/cis/testtool/admin/edit_gebiet.php @@ -1,182 +1,182 @@ -, - * Andreas Oesterreicher , - * Rudolf Hangl and - * Gerald Simane-Sequens - */ -/** - * Seite zum Editieren von Testtool-Gebieten - */ - -require_once('../../config.inc.php'); -require_once('../../../include/functions.inc.php'); -require_once('../../../include/gebiet.class.php'); -require_once('../../../include/benutzerberechtigung.class.php'); - -if(!$conn = pg_pconnect(CONN_STRING)) - die('Fehler beim Connecten zur DB'); - -$user = get_uid(); -$rechte = new benutzerberechtigung($conn); -$rechte->getBerechtigungen($user); - -echo ' - - - - - - - -'; - -if(isset($_GET['gebiet_id'])) - $gebiet_id=$_GET['gebiet_id']; -else - $gebiet_id=''; - - -echo '

 Gebiet bearbeiten

'; - -if(!$rechte->isBerechtigt('admin')) - die('Sie haben keine Berechtigung fuer diese Seite'); - -$gebiet = new gebiet($conn); -$gebiet->getAll(); - -echo 'Zurück zur Admin Seite

'; - -//Liste der Gebiete anzeigen -echo '
'; -echo 'Gebiet: - -
'; - -echo '

'; - -//Speichern der Daten -if(isset($_POST['speichern'])) -{ - $gebiet = new gebiet($conn); - if($gebiet->load($gebiet_id)) - { - $gebiet->kurzbz = $_POST['kurzbz']; - $gebiet->bezeichnung = $_POST['bezeichnung']; - $gebiet->beschreibung = $_POST['beschreibung']; - $gebiet->zeit = $_POST['zeit']; - $gebiet->multipleresponse = isset($_POST['multipleresponse']); - $gebiet->kategorien = isset($_POST['kategorien']); - $gebiet->zufallfrage = isset($_POST['zufallfrage']); - $gebiet->zufallvorschlag = isset($_POST['zufallvorschlag']); - $gebiet->levelgleichverteilung = isset($_POST['levelgleichverteilung']); - $gebiet->maxpunkte = $_POST['maxpunkte']; - $gebiet->maxfragen = $_POST['maxfragen']; - $gebiet->level_start = $_POST['level_start']; - $gebiet->level_sprung_auf = $_POST['level_sprung_auf']; - $gebiet->level_sprung_ab = $_POST['level_sprung_ab']; - $gebiet->updateamum = date('Y-m-d H:i:s'); - $gebiet->updatevon = $user; - $gebiet->antwortenprozeile = $_POST['antwortenprozeile']; - - if($gebiet->save(false)) - { - echo 'Daten erfolgreich gespeichert'; - } - else - { - echo 'Fehler beim Speichern: '.$gebiet->errormsg.''; - } - } - else - { - echo 'Fehler beim Laden des Gebiets'; - } -} - -if($gebiet_id!='') -{ - $gebiet = new gebiet($conn, $gebiet_id); - - echo "
"; - echo '
'; - echo ''; - - echo ''; - //Kurzbz - echo ''; - echo ''; - //Bezeichnung - echo ''; - echo ''; - //Beschreibung - echo ''; - echo ''; - //Zeit - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - // empfohlene maximalpunkte berechnen und anzeigen - $maximalpunkte = $gebiet->berechneMaximalpunkte($gebiet_id); - if($gebiet->maxpunkte!=$maximalpunkte) - $hinweis = 'empfohlene Maximalpunkteanzahl: '.$maximalpunkte.''; - else - $hinweis =''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo '
Kurzbz
Bezeichnung
Beschreibung
Zeit hh:mm:ss
Multiple Responsemultipleresponse?'checked="checked"':'').'>
Kategorienkategorien?'checked="checked"':'').'>
Zufällige Fragereihenfolgezufallfrage?'checked="checked"':'').'>
Zufällige Vorschlagreihenfolgezufallvorschlag?'checked="checked"':'').'>
Levelgleichverteilunglevelgleichverteilung?'checked="checked"':'').'>
Maximale Punkteanzahl'.$hinweis.'
Maximale Fragenanzahl
Antworten pro Zeile
Start Level
Richtige Fragen bis Levelaufstieg
Falsche Fragen bis Levelabstieg
'; - - echo '
'; -} - -echo ''; +, + * Andreas Oesterreicher , + * Rudolf Hangl and + * Gerald Simane-Sequens + */ +/** + * Seite zum Editieren von Testtool-Gebieten + */ + +require_once('../../config.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/gebiet.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); + +if(!$conn = pg_pconnect(CONN_STRING)) + die('Fehler beim Connecten zur DB'); + +$user = get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +echo ' + + + + + + + +'; + +if(isset($_GET['gebiet_id'])) + $gebiet_id=$_GET['gebiet_id']; +else + $gebiet_id=''; + + +echo '

 Gebiet bearbeiten

'; + +if(!$rechte->isBerechtigt('admin')) + die('Sie haben keine Berechtigung fuer diese Seite'); + +$gebiet = new gebiet($conn); +$gebiet->getAll(); + +echo 'Zurück zur Admin Seite

'; + +//Liste der Gebiete anzeigen +echo '
'; +echo 'Gebiet: + +
'; + +echo '

'; + +//Speichern der Daten +if(isset($_POST['speichern'])) +{ + $gebiet = new gebiet($conn); + if($gebiet->load($gebiet_id)) + { + $gebiet->kurzbz = $_POST['kurzbz']; + $gebiet->bezeichnung = $_POST['bezeichnung']; + $gebiet->beschreibung = $_POST['beschreibung']; + $gebiet->zeit = $_POST['zeit']; + $gebiet->multipleresponse = isset($_POST['multipleresponse']); + $gebiet->kategorien = isset($_POST['kategorien']); + $gebiet->zufallfrage = isset($_POST['zufallfrage']); + $gebiet->zufallvorschlag = isset($_POST['zufallvorschlag']); + $gebiet->levelgleichverteilung = isset($_POST['levelgleichverteilung']); + $gebiet->maxpunkte = $_POST['maxpunkte']; + $gebiet->maxfragen = $_POST['maxfragen']; + $gebiet->level_start = $_POST['level_start']; + $gebiet->level_sprung_auf = $_POST['level_sprung_auf']; + $gebiet->level_sprung_ab = $_POST['level_sprung_ab']; + $gebiet->updateamum = date('Y-m-d H:i:s'); + $gebiet->updatevon = $user; + $gebiet->antwortenprozeile = $_POST['antwortenprozeile']; + + if($gebiet->save(false)) + { + echo 'Daten erfolgreich gespeichert'; + } + else + { + echo 'Fehler beim Speichern: '.$gebiet->errormsg.''; + } + } + else + { + echo 'Fehler beim Laden des Gebiets'; + } +} + +if($gebiet_id!='') +{ + $gebiet = new gebiet($conn, $gebiet_id); + + echo "
"; + echo '
'; + echo ''; + + echo ''; + //Kurzbz + echo ''; + echo ''; + //Bezeichnung + echo ''; + echo ''; + //Beschreibung + echo ''; + echo ''; + //Zeit + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + // empfohlene maximalpunkte berechnen und anzeigen + $maximalpunkte = $gebiet->berechneMaximalpunkte($gebiet_id); + if($gebiet->maxpunkte!=$maximalpunkte) + $hinweis = 'empfohlene Maximalpunkteanzahl: '.$maximalpunkte.''; + else + $hinweis =''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
Kurzbz
Bezeichnung
Beschreibung
Zeit hh:mm:ss
Multiple Responsemultipleresponse?'checked="checked"':'').'>
Kategorienkategorien?'checked="checked"':'').'>
Zufällige Fragereihenfolgezufallfrage?'checked="checked"':'').'>
Zufällige Vorschlagreihenfolgezufallvorschlag?'checked="checked"':'').'>
Levelgleichverteilunglevelgleichverteilung?'checked="checked"':'').'>
Maximale Punkteanzahl'.$hinweis.'
Maximale Fragenanzahl
Antworten pro Zeile
Start Level
Richtige Fragen bis Levelaufstieg
Falsche Fragen bis Levelabstieg
'; + + echo '
'; +} + +echo ''; ?> \ No newline at end of file diff --git a/cis/testtool/admin/index.php b/cis/testtool/admin/index.php index a32248171..a6030771d 100644 --- a/cis/testtool/admin/index.php +++ b/cis/testtool/admin/index.php @@ -1,624 +1,624 @@ -, - * Andreas Oesterreicher and - * Rudolf Hangl . - */ -/** - * Administrationsseite fuer das Testtool - */ - -header('Content-type: application/xhtml+xml'); - -require_once('../../config.inc.php'); -require_once('../../../include/functions.inc.php'); -require_once('../../../include/frage.class.php'); -require_once('../../../include/vorschlag.class.php'); -require_once('../../../include/benutzerberechtigung.class.php'); - -$PHP_SELF=$_SERVER['PHP_SELF']; - -session_start(); - -//wandelt einen String in HEX-Werte um -function strhex($string) -{ - $hex=''; - for ($i=0;$igetBerechtigungen($user); -if(!$rechte->isBerechtigt('admin')) - die('Sie haben keine Berechtigung fuer diese Seite'); - -if(isset($_GET['gebiet_id'])) - $gebiet_id = $_GET['gebiet_id']; -else - $gebiet_id = ''; - -if(isset($_GET['nummer'])) - $nummer = $_GET['nummer']; -else - $nummer = ''; - -if(isset($_GET['frage_id'])) - $frage_id = $_GET['frage_id']; -else - $frage_id = ''; - -if(isset($_GET['vorschlag_id'])) - $vorschlag_id = $_GET['vorschlag_id']; -else - $vorschlag_id = ''; - -$save_vorschlag_error=false; -?> - - - - - - - - - - - - - -

-
Testtool - Administrationsseite
- -

-getFrageSprache($_GET['frage_id'], $sprache)) - { - //HEX Wert in die Datenbank speichern - $frage->bild = $content; - $frage->new = false; - if($frage->save_fragesprache()) - echo "Bild gespeichert
"; - else - echo ''.$frage->errormsg.'
'; - } - else - echo ''.$frage->errormsg.'
'; - } - else - echo "File ist kein gueltiges Bild
"; - } -} -//Bei Upload eines Audiofiles -if(isset($_POST['submitaudio'])) -{ - if(isset($_FILES['audio']['tmp_name'])) - { - //Extension herausfiltern - $ext = explode('.',$_FILES['audio']['name']); - $ext = mb_strtolower($ext[count($ext)-1]); - - //--check that it's a mp3 - if ($ext=='mp3' || $ext=='ogg') - { - $filename = $_FILES['audio']['tmp_name']; - //File oeffnen - $fp = fopen($filename,'r'); - //auslesen - $content = fread($fp, filesize($filename)); - fclose($fp); - //in HEX-Werte umrechnen - $content = strhex($content); - - $frage = new frage($conn); - if($frage->getFrageSprache($_GET['frage_id'], $sprache)) - { - //HEX Wert in die Datenbank speichern - $frage->audio = $content; - $frage->new = false; - if($frage->save_fragesprache()) - echo "Audio gespeichert
"; - else - echo ''.$frage->errormsg.'
'; - } - else - echo ''.$frage->errormsg.'
'; - } - else - echo "Es duerfen nur mp3 Dateien hochgeladen werden
"; - } -} - -//Speichern der Frage-Daten -if(isset($_POST['submitdata'])) -{ - $frage = new frage($conn); - if($frage->load($_GET['frage_id'])) - { - $frage->demo = isset($_POST['demo']); - $frage->nummer = $_POST['nummer']; - $frage->level = $_POST['level']; - $frage->new = false; - - if($frage->save()) - { - if(!$frage->getFrageSprache($frage->frage_id, $sprache)) - { - $frage->new=true; - } - - $frage->text = $_POST['text']; - $frage->sprache = $sprache; - - if($frage->save_fragesprache()) - { - echo "Daten gespeichert
"; - $nummer = $frage->nummer; - } - else - echo 'Fehler:'.$frage->errormsg.'
'; - } - else - echo ''.$frage->errormsg.'
'; - } - else - echo ''.$frage->errormsg.'
'; -} - -//Speichern eines Vorschlages -if(isset($_POST['submitvorschlag'])) -{ - $bildcontent=''; - if(isset($_FILES['bild']['tmp_name']) && is_uploaded_file($_FILES['bild']['tmp_name'])) - { - //Extension herausfiltern - $ext = explode('.',$_FILES['bild']['name']); - $ext = mb_strtolower($ext[count($ext)-1]); - - //--check that it's a jpeg or gif or png - if ($ext=='gif' || $ext=='png' || $ext=='jpg' || $ext=='jpeg') - { - $filename = $_FILES['bild']['tmp_name']; - //File oeffnen - $fp = fopen($filename,'r'); - //auslesen - $bildcontent = fread($fp, filesize($filename)); - fclose($fp); - //in HEX-Werte umrechnen - $bildcontent = strhex($bildcontent); - } - else - echo "Datei ist kein Bild!
"; - } - - $audiocontent=''; - if(isset($_FILES['audio']['tmp_name']) && is_uploaded_file($_FILES['audio']['tmp_name'])) - { - //Extension herausfiltern - $ext = explode('.',$_FILES['audio']['name']); - $ext = mb_strtolower($ext[count($ext)-1]); - - //--check that it's a jpeg or gif or png - if ($ext=='mp3') - { - $filename = $_FILES['audio']['tmp_name']; - //File oeffnen - $fp = fopen($filename,'r'); - //auslesen - $audiocontent = fread($fp, filesize($filename)); - fclose($fp); - //in HEX-Werte umrechnen - $audiocontent = strhex($audiocontent); - } - else - echo "Datei ist kein Bild!
"; - } - $vorschlag = new vorschlag($conn); - $error=false; - - if($_POST['vorschlag_id']!='') - { - if($vorschlag->load($_POST['vorschlag_id'])) - { - $vorschlag->new = false; - $vorschlag->vorschlag_id = $_POST['vorschlag_id']; - } - else - { - echo 'Fehler beim Laden des Datensatzes
'; - $error = true; - } - } - else - { - $vorschlag->new = true; - $vorschlag->insertamum = date('Y-m-d H:i:s'); - $vorschlag->insertvon = $user; - } - if($_POST['nummer']=='' || !is_numeric($_POST['nummer'])) - { - $error = true; - echo 'Nummer ist ungueltig
'; - } - - if(!$error) - { - $vorschlag->bild = $bildcontent; - $vorschlag->audio = $audiocontent; - $vorschlag->frage_id = $_GET['frage_id']; - $vorschlag->nummer = $_POST['nummer']; - $vorschlag->punkte = $_POST['punkte']; - $vorschlag->text = $_POST['text']; - $vorschlag->sprache = $sprache; - $vorschlag->updateamum = date('Y-m-d H:i:s'); - $vorschlag->updatevon = $user; - - if($vorschlag->save()) - { - if($vorschlag->save_vorschlagsprache()) - { - echo "Vorschlag gespeichert
"; - } - else - { - $save_vorschlag_error=true; - echo "Fehler beim Speichern von Vorschlagsprache: $vorschlag->errormsg
"; - } - } - else - { - $save_vorschlag_error=true; - echo ''.$vorschlag->errormsg.'
'; - } - } - else - $save_vorschlag_error=true; -} -//Vorschlag loeschen -if(isset($_GET['type']) && $_GET['type']=='delete' && isset($_GET['vorschlag_id'])) -{ - $vs = new vorschlag($conn); - if(!$vs->delete($_GET['vorschlag_id'])) - echo ''.$vs->errormsg.'
'; - $vorschlag_id=''; -} - -// anlegen einer neuen Frage -if(isset($_GET['type']) && $_GET['type']=='neuefrage') -{ - $frage_obj = new frage($conn); - - $frage_obj->gebiet_id = $_GET['gebiet_id']; - $frage_obj->nummer=999; - $frage_obj->demo=false; - $frage_obj->insertamum = date('Y-m-d H:i:s'); - $frage_obj->insertvon = $user; - $frage_obj->sprache = $sprache; - $frage_obj->new = true; - if($frage_obj->save()) - { - if($frage_obj->save_fragesprache()) - { - echo 'Frage wurde erfolgreich angelegt'; - $nummer=999; - } - else - { - echo 'Fehler beim Speichern der FrageSprache: '.$frage_obj->errormsg.''; - } - } - else - { - echo 'Fehler beim Speichern der Frage: '.$frage_obj->errormsg.''; - } -} - -//Gebiet pruefen -if(isset($_GET['type']) && $_GET['type']=='gebietpruefen' && isset($_GET['gebiet_id'])) -{ - $gebiet = new gebiet($conn, $gebiet_id); - - if($gebiet->check_gebiet($gebiet_id)) - { - echo "Das Gebiet $gebiet->bezeichnung wurde erfolgreich ueberprueft"; - } - else - { - echo "Bei der Ueberpruefung des Gebiets '$gebiet->bezeichnung' sind folgende Fehler aufgetreten:
"; - echo nl2br($gebiet->errormsg); - echo '

'; - } - - $maxpunkte = $gebiet->berechneMaximalpunkte($gebiet_id); - if($gebiet->maxpunkte!=$maxpunkte) - { - echo '
die empfohlene Punkteanzahl betraegt '.$maxpunkte.' Punkte anstatt '.$gebiet->maxpunkte.' Punkte'; - } -} - -echo '
'; - -//Liste der Gebiete -$qry = "SELECT * FROM testtool.tbl_gebiet ORDER BY bezeichnung"; -if($result = pg_query($conn, $qry)) -{ - echo 'Gebiet: '; -} - -echo " Pruefen | "; -echo " Bearbeiten"; -echo ''; - -//Liste der Sprachen - -$qry = "SELECT sprache FROM public.tbl_sprache ORDER BY sprache DESC"; - -if($result = pg_query($conn, $qry)) -{ - while($row = pg_fetch_object($result)) - { - if($sprache=='') - $sprache = $row->sprache; - if($sprache==$row->sprache) - $selected='style="border:1px solid black;"'; - else - $selected=''; - echo " $row->sprache"; - } -} -echo '
'; -echo '
'; - -// Liste der Fragen -$qry = "SELECT distinct nummer FROM testtool.tbl_frage WHERE gebiet_id='".addslashes($gebiet_id)."' ORDER BY nummer"; - -if($result = pg_query($conn, $qry)) -{ - echo 'Nummer: '; - while($row = pg_fetch_object($result)) - { - if($nummer=='') - $nummer = $row->nummer; - - if($nummer==$row->nummer) - echo " $row->nummer -"; - else - echo " $row->nummer -"; - } - echo " neue Frage hinzufuegen"; -} - -echo "\n\n
"; - -//Fragen holen -$frage = new frage($conn); -$frage->getFragen($gebiet_id, $nummer); - -if(count($frage->result)==1) -{ - $frage_id = $frage->result[0]->frage_id; -} -else -{ - //Wenn fuer diese Nummer mehrere Fragen vorhanden sind, - //koennen diese extra ausgewaehlt werden - echo 'FrageID: '; - foreach ($frage->result as $row) - { - if($frage_id=='') - $frage_id=$row->frage_id; - - if($frage_id==$row->frage_id) - echo "$row->frage_id -"; - else - echo "$row->frage_id -"; - } -} - -if($frage_id!='') -{ - $frage->load($frage_id); - $frage->getFrageSprache($frage_id, $sprache); - - echo "
"; - //Fragen - echo ""; - echo ""; - //Upload Feld fuer Bild - echo " - - "; - //Wenn ein Bild vorhanden ist, dann anzeigen - if($frage->bild!='') - { - echo "\n'; - //Zusaetzliche EingabeFelder anzeigen - echo ""; - //Vorschau fuer das Text-Feld - echo ""; - echo "
-
- Bild: - -
-
-
- Audio: - -
-
"; - } - else - { - //echo "\n
Kein Bild vorhanden\n"; - echo "\n
\n"; - if($frage->audio=='') - echo "Kein Bild vorhanden\n"; - } - if($frage->audio!='') - { - echo '
'; - } - echo '
"; - echo "
"; - echo ""; - //Bei Aenderungen im Textfeld werden diese sofort in der Vorschau angezeigt - echo ""; - echo " - "; - echo "
\n\n
Demo demo?'checked="true"':'')." /> - Level - Nummer
"; - echo "
"; - echo "
Vorschau:
$frage->text
"; - echo '
'; - - $vorschlag = new vorschlag($conn); - - if($vorschlag_id!='') - if(!$vorschlag->load($vorschlag_id, $sprache)) - die($vorschlag->errormsg); - if($save_vorschlag_error) - { - $vorschlag->vorschlag_id = (isset($_POST['vorschlag_id'])?$_POST['vorschlag_id']:''); - $vorschlag->frage_id = $_GET['frage_id']; - $vorschlag->nummer = $_POST['nummer']; - $vorschlag->punkte = $_POST['punkte']; - $vorschlag->text = $_POST['text']; - $vorschlag->bild = ''; - } - //Vorschlag - echo 'Vorschlag'.($vorschlag_id!=''?' Edit':'').'

'; - echo "
"; - echo ""; - echo ''; - echo ''; - echo ""; - echo ''; - echo ''; - echo '"; - echo ''; - //Upload Feld fuer Bild - echo ""; - echo ''; - echo ''; - //Upload Feld fuer Audio - echo ""; - echo ""; - echo ""; - echo "
Punkte
Text:\n
Bild:
Audio:
Nummer:
".($vorschlag_id!=''?"frage_id'\" />":'')."
"; - echo "
"; - - echo '
'; - - $vorschlag = new vorschlag($conn); - $vorschlag->getVorschlag($frage_id, $sprache, false); - $i=0; - if(count($vorschlag->result)>0) - { - echo ''; - - foreach ($vorschlag->result as $vs) - { - $i++; - echo " - - - - - - - "; - } - echo '
NummerPunkteTextBildAudio
$vs->nummer$vs->punkte$vs->text"; - if($vs->audio!='') - echo ""; - echo " editdelete
'; - } -} - - -?> - - +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +/** + * Administrationsseite fuer das Testtool + */ + +header('Content-type: application/xhtml+xml'); + +require_once('../../config.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/frage.class.php'); +require_once('../../../include/vorschlag.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); + +$PHP_SELF=$_SERVER['PHP_SELF']; + +session_start(); + +//wandelt einen String in HEX-Werte um +function strhex($string) +{ + $hex=''; + for ($i=0;$igetBerechtigungen($user); +if(!$rechte->isBerechtigt('admin')) + die('Sie haben keine Berechtigung fuer diese Seite'); + +if(isset($_GET['gebiet_id'])) + $gebiet_id = $_GET['gebiet_id']; +else + $gebiet_id = ''; + +if(isset($_GET['nummer'])) + $nummer = $_GET['nummer']; +else + $nummer = ''; + +if(isset($_GET['frage_id'])) + $frage_id = $_GET['frage_id']; +else + $frage_id = ''; + +if(isset($_GET['vorschlag_id'])) + $vorschlag_id = $_GET['vorschlag_id']; +else + $vorschlag_id = ''; + +$save_vorschlag_error=false; +?> + + + + + + + + + + + + + +

+
Testtool - Administrationsseite
+ +

+getFrageSprache($_GET['frage_id'], $sprache)) + { + //HEX Wert in die Datenbank speichern + $frage->bild = $content; + $frage->new = false; + if($frage->save_fragesprache()) + echo "Bild gespeichert
"; + else + echo ''.$frage->errormsg.'
'; + } + else + echo ''.$frage->errormsg.'
'; + } + else + echo "File ist kein gueltiges Bild
"; + } +} +//Bei Upload eines Audiofiles +if(isset($_POST['submitaudio'])) +{ + if(isset($_FILES['audio']['tmp_name'])) + { + //Extension herausfiltern + $ext = explode('.',$_FILES['audio']['name']); + $ext = mb_strtolower($ext[count($ext)-1]); + + //--check that it's a mp3 + if ($ext=='mp3' || $ext=='ogg') + { + $filename = $_FILES['audio']['tmp_name']; + //File oeffnen + $fp = fopen($filename,'r'); + //auslesen + $content = fread($fp, filesize($filename)); + fclose($fp); + //in HEX-Werte umrechnen + $content = strhex($content); + + $frage = new frage($conn); + if($frage->getFrageSprache($_GET['frage_id'], $sprache)) + { + //HEX Wert in die Datenbank speichern + $frage->audio = $content; + $frage->new = false; + if($frage->save_fragesprache()) + echo "Audio gespeichert
"; + else + echo ''.$frage->errormsg.'
'; + } + else + echo ''.$frage->errormsg.'
'; + } + else + echo "Es duerfen nur mp3 Dateien hochgeladen werden
"; + } +} + +//Speichern der Frage-Daten +if(isset($_POST['submitdata'])) +{ + $frage = new frage($conn); + if($frage->load($_GET['frage_id'])) + { + $frage->demo = isset($_POST['demo']); + $frage->nummer = $_POST['nummer']; + $frage->level = $_POST['level']; + $frage->new = false; + + if($frage->save()) + { + if(!$frage->getFrageSprache($frage->frage_id, $sprache)) + { + $frage->new=true; + } + + $frage->text = $_POST['text']; + $frage->sprache = $sprache; + + if($frage->save_fragesprache()) + { + echo "Daten gespeichert
"; + $nummer = $frage->nummer; + } + else + echo 'Fehler:'.$frage->errormsg.'
'; + } + else + echo ''.$frage->errormsg.'
'; + } + else + echo ''.$frage->errormsg.'
'; +} + +//Speichern eines Vorschlages +if(isset($_POST['submitvorschlag'])) +{ + $bildcontent=''; + if(isset($_FILES['bild']['tmp_name']) && is_uploaded_file($_FILES['bild']['tmp_name'])) + { + //Extension herausfiltern + $ext = explode('.',$_FILES['bild']['name']); + $ext = mb_strtolower($ext[count($ext)-1]); + + //--check that it's a jpeg or gif or png + if ($ext=='gif' || $ext=='png' || $ext=='jpg' || $ext=='jpeg') + { + $filename = $_FILES['bild']['tmp_name']; + //File oeffnen + $fp = fopen($filename,'r'); + //auslesen + $bildcontent = fread($fp, filesize($filename)); + fclose($fp); + //in HEX-Werte umrechnen + $bildcontent = strhex($bildcontent); + } + else + echo "Datei ist kein Bild!
"; + } + + $audiocontent=''; + if(isset($_FILES['audio']['tmp_name']) && is_uploaded_file($_FILES['audio']['tmp_name'])) + { + //Extension herausfiltern + $ext = explode('.',$_FILES['audio']['name']); + $ext = mb_strtolower($ext[count($ext)-1]); + + //--check that it's a jpeg or gif or png + if ($ext=='mp3') + { + $filename = $_FILES['audio']['tmp_name']; + //File oeffnen + $fp = fopen($filename,'r'); + //auslesen + $audiocontent = fread($fp, filesize($filename)); + fclose($fp); + //in HEX-Werte umrechnen + $audiocontent = strhex($audiocontent); + } + else + echo "Datei ist kein Bild!
"; + } + $vorschlag = new vorschlag($conn); + $error=false; + + if($_POST['vorschlag_id']!='') + { + if($vorschlag->load($_POST['vorschlag_id'])) + { + $vorschlag->new = false; + $vorschlag->vorschlag_id = $_POST['vorschlag_id']; + } + else + { + echo 'Fehler beim Laden des Datensatzes
'; + $error = true; + } + } + else + { + $vorschlag->new = true; + $vorschlag->insertamum = date('Y-m-d H:i:s'); + $vorschlag->insertvon = $user; + } + if($_POST['nummer']=='' || !is_numeric($_POST['nummer'])) + { + $error = true; + echo 'Nummer ist ungueltig
'; + } + + if(!$error) + { + $vorschlag->bild = $bildcontent; + $vorschlag->audio = $audiocontent; + $vorschlag->frage_id = $_GET['frage_id']; + $vorschlag->nummer = $_POST['nummer']; + $vorschlag->punkte = $_POST['punkte']; + $vorschlag->text = $_POST['text']; + $vorschlag->sprache = $sprache; + $vorschlag->updateamum = date('Y-m-d H:i:s'); + $vorschlag->updatevon = $user; + + if($vorschlag->save()) + { + if($vorschlag->save_vorschlagsprache()) + { + echo "Vorschlag gespeichert
"; + } + else + { + $save_vorschlag_error=true; + echo "Fehler beim Speichern von Vorschlagsprache: $vorschlag->errormsg
"; + } + } + else + { + $save_vorschlag_error=true; + echo ''.$vorschlag->errormsg.'
'; + } + } + else + $save_vorschlag_error=true; +} +//Vorschlag loeschen +if(isset($_GET['type']) && $_GET['type']=='delete' && isset($_GET['vorschlag_id'])) +{ + $vs = new vorschlag($conn); + if(!$vs->delete($_GET['vorschlag_id'])) + echo ''.$vs->errormsg.'
'; + $vorschlag_id=''; +} + +// anlegen einer neuen Frage +if(isset($_GET['type']) && $_GET['type']=='neuefrage') +{ + $frage_obj = new frage($conn); + + $frage_obj->gebiet_id = $_GET['gebiet_id']; + $frage_obj->nummer=999; + $frage_obj->demo=false; + $frage_obj->insertamum = date('Y-m-d H:i:s'); + $frage_obj->insertvon = $user; + $frage_obj->sprache = $sprache; + $frage_obj->new = true; + if($frage_obj->save()) + { + if($frage_obj->save_fragesprache()) + { + echo 'Frage wurde erfolgreich angelegt'; + $nummer=999; + } + else + { + echo 'Fehler beim Speichern der FrageSprache: '.$frage_obj->errormsg.''; + } + } + else + { + echo 'Fehler beim Speichern der Frage: '.$frage_obj->errormsg.''; + } +} + +//Gebiet pruefen +if(isset($_GET['type']) && $_GET['type']=='gebietpruefen' && isset($_GET['gebiet_id'])) +{ + $gebiet = new gebiet($conn, $gebiet_id); + + if($gebiet->check_gebiet($gebiet_id)) + { + echo "Das Gebiet $gebiet->bezeichnung wurde erfolgreich ueberprueft"; + } + else + { + echo "Bei der Ueberpruefung des Gebiets '$gebiet->bezeichnung' sind folgende Fehler aufgetreten:
"; + echo nl2br($gebiet->errormsg); + echo '

'; + } + + $maxpunkte = $gebiet->berechneMaximalpunkte($gebiet_id); + if($gebiet->maxpunkte!=$maxpunkte) + { + echo '
die empfohlene Punkteanzahl betraegt '.$maxpunkte.' Punkte anstatt '.$gebiet->maxpunkte.' Punkte'; + } +} + +echo '
'; + +//Liste der Gebiete +$qry = "SELECT * FROM testtool.tbl_gebiet ORDER BY bezeichnung"; +if($result = pg_query($conn, $qry)) +{ + echo 'Gebiet: '; +} + +echo " Pruefen | "; +echo " Bearbeiten"; +echo ''; + +//Liste der Sprachen + +$qry = "SELECT sprache FROM public.tbl_sprache ORDER BY sprache DESC"; + +if($result = pg_query($conn, $qry)) +{ + while($row = pg_fetch_object($result)) + { + if($sprache=='') + $sprache = $row->sprache; + if($sprache==$row->sprache) + $selected='style="border:1px solid black;"'; + else + $selected=''; + echo " $row->sprache"; + } +} +echo '
'; +echo '
'; + +// Liste der Fragen +$qry = "SELECT distinct nummer FROM testtool.tbl_frage WHERE gebiet_id='".addslashes($gebiet_id)."' ORDER BY nummer"; + +if($result = pg_query($conn, $qry)) +{ + echo 'Nummer: '; + while($row = pg_fetch_object($result)) + { + if($nummer=='') + $nummer = $row->nummer; + + if($nummer==$row->nummer) + echo " $row->nummer -"; + else + echo " $row->nummer -"; + } + echo " neue Frage hinzufuegen"; +} + +echo "\n\n
"; + +//Fragen holen +$frage = new frage($conn); +$frage->getFragen($gebiet_id, $nummer); + +if(count($frage->result)==1) +{ + $frage_id = $frage->result[0]->frage_id; +} +else +{ + //Wenn fuer diese Nummer mehrere Fragen vorhanden sind, + //koennen diese extra ausgewaehlt werden + echo 'FrageID: '; + foreach ($frage->result as $row) + { + if($frage_id=='') + $frage_id=$row->frage_id; + + if($frage_id==$row->frage_id) + echo "$row->frage_id -"; + else + echo "$row->frage_id -"; + } +} + +if($frage_id!='') +{ + $frage->load($frage_id); + $frage->getFrageSprache($frage_id, $sprache); + + echo "
"; + //Fragen + echo ""; + echo ""; + //Upload Feld fuer Bild + echo " + + "; + //Wenn ein Bild vorhanden ist, dann anzeigen + if($frage->bild!='') + { + echo "\n'; + //Zusaetzliche EingabeFelder anzeigen + echo ""; + //Vorschau fuer das Text-Feld + echo ""; + echo "
+
+ Bild: + +
+
+
+ Audio: + +
+
"; + } + else + { + //echo "\n
Kein Bild vorhanden\n"; + echo "\n
\n"; + if($frage->audio=='') + echo "Kein Bild vorhanden\n"; + } + if($frage->audio!='') + { + echo '
'; + } + echo '
"; + echo "
"; + echo ""; + //Bei Aenderungen im Textfeld werden diese sofort in der Vorschau angezeigt + echo ""; + echo " + "; + echo "
\n\n
Demo demo?'checked="true"':'')." /> + Level + Nummer
"; + echo "
"; + echo "
Vorschau:
$frage->text
"; + echo '
'; + + $vorschlag = new vorschlag($conn); + + if($vorschlag_id!='') + if(!$vorschlag->load($vorschlag_id, $sprache)) + die($vorschlag->errormsg); + if($save_vorschlag_error) + { + $vorschlag->vorschlag_id = (isset($_POST['vorschlag_id'])?$_POST['vorschlag_id']:''); + $vorschlag->frage_id = $_GET['frage_id']; + $vorschlag->nummer = $_POST['nummer']; + $vorschlag->punkte = $_POST['punkte']; + $vorschlag->text = $_POST['text']; + $vorschlag->bild = ''; + } + //Vorschlag + echo 'Vorschlag'.($vorschlag_id!=''?' Edit':'').'

'; + echo "
"; + echo ""; + echo ''; + echo ''; + echo ""; + echo ''; + echo ''; + echo '"; + echo ''; + //Upload Feld fuer Bild + echo ""; + echo ''; + echo ''; + //Upload Feld fuer Audio + echo ""; + echo ""; + echo ""; + echo "
Punkte
Text:\n
Bild:
Audio:
Nummer:
".($vorschlag_id!=''?"frage_id'\" />":'')."
"; + echo "
"; + + echo '
'; + + $vorschlag = new vorschlag($conn); + $vorschlag->getVorschlag($frage_id, $sprache, false); + $i=0; + if(count($vorschlag->result)>0) + { + echo ''; + + foreach ($vorschlag->result as $vs) + { + $i++; + echo " + + + + + + + "; + } + echo '
NummerPunkteTextBildAudio
$vs->nummer$vs->punkte$vs->text"; + if($vs->audio!='') + echo ""; + echo " editdelete
'; + } +} + + +?> + +