From 89114e87299829cf7abf61c9440805075f010209 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Mon, 7 May 2007 14:30:15 +0000 Subject: [PATCH] =?UTF-8?q?-=20Interessenten=20und=20Bewerber=20in=20den?= =?UTF-8?q?=20Lehrverbandstree=20integriert=20-=20Senatsbeschl=C3=BCsse=20?= =?UTF-8?q?sind=20jetzt=20in=20der=20Tabelle=20News=20-=20Jahresplan=20akt?= =?UTF-8?q?ualisiert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/menu.html | 4 + cis/private/lehre/pinboard.php | 203 ++++++++++++++---- cis/private/lehre/pinboard_entry.php | 2 + cis/private/tools/news_entry.php | 17 +- cis/private/tools/news_show.php | 2 +- content/fasoverlay.js.php | 110 +++++----- content/fasoverlay.xul.php | 6 + .../lvplanung/lehrveranstaltungoverlay.js.php | 5 +- .../student/interessentdetailoverlay.xul.php | 2 +- content/student/studentdetailoverlay.xul.php | 2 +- include/functions.inc.php | 28 +++ include/news.class.php | 92 ++++++-- include/prestudent.class.php | 40 +++- rdf/interessentenbewerber.rdf.php | 11 +- rdf/lehrverbandsgruppe.rdf.php | 118 ++++++++++ 15 files changed, 522 insertions(+), 120 deletions(-) diff --git a/cis/menu.html b/cis/menu.html index 63aee151a..09e1998a0 100644 --- a/cis/menu.html +++ b/cis/menu.html @@ -52,6 +52,10 @@  News + + + + diff --git a/cis/private/lehre/pinboard.php b/cis/private/lehre/pinboard.php index c35fc4999..f94a767da 100644 --- a/cis/private/lehre/pinboard.php +++ b/cis/private/lehre/pinboard.php @@ -34,22 +34,50 @@ require_once('../../../include/functions.inc.php'); require_once('../../../include/studiengang.class.php'); require_once('../../../include/news.class.php'); + require_once('../../../include/studiensemester.class.php'); //Connection Herstellen if(!$sql_conn = pg_pconnect(CONN_STRING)) die('Fehler beim öffnen der Datenbankverbindung'); + $senat=false; $short=''; + $course_id = ''; + $term_id = ''; + $fachbereich_kurzbz=''; + $studiensemester_kurzbz = ''; + $datum_content=''; + $stsem_content=''; + $datum = ''; + $user = get_uid(); + $stsemarr = array(); + + if(isset($_GET['studiensemester_kurzbz'])) + $studiensemester_kurzbz = $_GET['studiensemester_kurzbz']; + else + { + $stsem_obj = new studiensemester($sql_conn); + $studiensemester_kurzbz = $stsem_obj->getaktorNext(); + } + + if(isset($_GET['datum'])) + $datum = $_GET['datum']; + if(isset($_GET['course_id']) && is_numeric($_GET['course_id'])) { - $stg_obj = new studiengang($sql_conn, $course_id); + $stg_obj = new studiengang($sql_conn, $_GET['course_id']); $short = $stg_obj->kuerzel; $short_long = $stg_obj->kurzbzlang; $course_id = $_GET['course_id']; } - else - die('Fehler bei der Parameterübergabe'); + if(isset($_GET['fachbereich_kurzbz'])) + { + $fachbereich_kurzbz = $_GET['fachbereich_kurzbz']; + if($fachbereich_kurzbz=='Senat') + $senat = true; + } + if(isset($_GET['showall'])) { $showall=true; @@ -59,36 +87,59 @@ $showall=false; } - function print_news($stg_id, $semester, $sql_conn, $showall=false) + function print_STGnews($stg_id, $semester, $sql_conn, $showall=false, $fachbereich_kurzbz) { $alter = ($showall?0:MAXNEWSALTER); $news_obj = new news($sql_conn); - $zaehler=0; - if($news_obj->getnews($alter, $stg_id, $semester)) + + if($news_obj->getnews($alter, $stg_id, $semester, $showall, $fachbereich_kurzbz)) { - foreach ($news_obj->result as $row) - { - $zaehler++; - if($row->datum!='') - $datum = date('d.m.Y',strtotime(strftime($row->datum))); - else - $datum=''; - - if($row->semester == '') - { - echo '

'.$datum.' - '.$row->verfasser.' - [Allgemein]
'.$row->betreff.'
'; - } - else - { - echo '

'.$datum.' - '.$row->verfasser.' - [Semester '.$row->semester.']
'.$row->betreff.'
'; - } - - echo "$row->text

"; - } + $zaehler = print_news($news_obj); } + else + echo $news_obj->errormsg; if($zaehler==0) echo '

Zur Zeit gibt es keine aktuellen News!

'; } + + function print_FBnews($sql_conn, $fachbereich_kurzbz, $datum) + { + $news_obj = new news($sql_conn); + + if($news_obj->getFBNews($fachbereich_kurzbz, $datum)) + { + $zaehler = print_news($news_obj); + } + else + echo $news_obj->errormsg; + if($zaehler==0) + echo '

Zur Zeit gibt es keine aktuellen News!

'; + } + + function print_news($news_obj) + { + $zaehler=0; + foreach ($news_obj->result as $row) + { + $zaehler++; + if($row->datum!='') + $datum = date('d.m.Y',strtotime(strftime($row->datum))); + else + $datum=''; + + if($row->semester == '') + { + echo '

'.$datum.' - '.$row->verfasser.' - [Allgemein]
'.$row->betreff.'
'; + } + else + { + echo '

'.$datum.' - '.$row->verfasser.' - [Semester '.$row->semester.']
'.$row->betreff.'
'; + } + + echo "$row->text

"; + } + return $zaehler; + } ?> @@ -104,21 +155,96 @@ +
  Senatsbeschlüsse
   INTERN  - - - - -   +'; + echo ' '; + + //Senatsbeschluesse duerfen nur die Mitarbeiter sehen + if(!check_lektor($user, $sql_conn)) + die(''); + + echo ''; + echo ''; + echo ''; + + } + else + { + echo 'Pinboard '; + + if(isset($short)) + echo $short; + + echo ''; + + if(!isset($short)) exit; - ?> - - + + echo ' - - + '; + + echo ' '; + + echo ''; + + + ?> + - + +
 Pinboard   Studiengangsmanagement
Sie haben keine Berechtigung für diesen Bereich
 
'; + //Datum aller Senatsbeschluesse holen + $qry = "SELECT distinct datum FROM campus.tbl_news WHERE fachbereich_kurzbz='Senat'"; + if($result = pg_query($sql_conn, $qry)); + { + while($row = pg_fetch_object($result)) + { + //Studiensemester des Datums ermitteln + $stsem = getStudiensemesterFromDatum($sql_conn, $row->datum); + //Wenn dieses StSem noch nicht angezeigt wird, dann anzeigen + if(!in_array($stsem, $stsemarr)) + { + if($stsem_content!='') + $stsem_content.=' - '; + $stsem_content .=""; + + if(isset($studiensemester_kurzbz) && $studiensemester_kurzbz==$stsem) + $stsem_content .="$stsem"; + else + $stsem_content .=$stsem; + + $stsem_content .=""; + $stsemarr[] = $stsem; + } + //Datum ausgeben + if(isset($studiensemester_kurzbz) && $studiensemester_kurzbz==$stsem) + { + if($datum == '') + $datum = $row->datum; + if($datum_content!='') + $datum_content.=' - '; + $datum_content.=""; + //Wenn datum=ausgewaehltes Datum dann das Datum unterstreichen + if($datum == $row->datum) + $datum_content.=''.date('d.m.Y',strtotime(strftime($row->datum))).''; + else + $datum_content.=date('d.m.Y',strtotime(strftime($row->datum))); + $datum_content.=""; + } + } + echo "$stsem_content

$datum_content"; + } + echo '
'; + //News ausgeben + print_FBnews($sql_conn, $fachbereich_kurzbz, $datum); + echo '
   
 Studiengangsmanagement
 
' class='Item'>Archiv' class='Item'>Archiv 

Studiengangsleiter:
@@ -450,6 +576,9 @@

  diff --git a/cis/private/lehre/pinboard_entry.php b/cis/private/lehre/pinboard_entry.php index 14c9a069d..08b4b8e3c 100644 --- a/cis/private/lehre/pinboard_entry.php +++ b/cis/private/lehre/pinboard_entry.php @@ -69,6 +69,7 @@ $news_obj->datum = $datum; $news_obj->text = $news_message; $news_obj->updatevon = $user; + $news_obj->updateamum = date('Y-m-d H:i:s'); $news_obj->news_id = $news_id; $news_obj->new=false; @@ -97,6 +98,7 @@ $news_obj->datum = $datum; $news_obj->text = $news_message; $news_obj->updatevon = $user; + $news_obj->updateamum = date('Y-m-d H:i:s'); $news_obj->new=true; if($news_obj->save()) diff --git a/cis/private/tools/news_entry.php b/cis/private/tools/news_entry.php index f4722ed6d..4ad47ebfd 100644 --- a/cis/private/tools/news_entry.php +++ b/cis/private/tools/news_entry.php @@ -72,10 +72,14 @@ $news->text = $news_message; $news->studiengang_kz = '0'; $news->semester = null; + if(isset($chksenat)) + $news->fachbereich_kurzbz = 'Senat'; + else + $news->fachbereich_kurzbz = ''; $news->datum = $datum; $news->uid=$user; $news->updatevon=$user; - $news->updateamum=date('Y-m-d'); + $news->updateamum=date('Y-m-d H:i:s'); $news->new=false; if($news->save()) @@ -102,8 +106,12 @@ $news->studiengang_kz = '0'; $news->updatevon=$user; $news->semester = null; + if(isset($chksenat)) + $news->fachbereich_kurzbz = 'Senat'; + else + $news->fachbereich_kurzbz = ''; $news->uid = $user; - $news->updateamum=date('Y-m-d'); + $news->updateamum=date('Y-m-d H:i:s'); $news->datum=$datum; $news->new=true; @@ -236,11 +244,14 @@ Verfasser: > - Sichtbar ab: datum))); else echo date('d.m.Y'); ?>"> + Sichtbar ab: + datum))); else echo date('d.m.Y'); ?>"> Titel: > + Senat: + fachbereich_kurzbz=='Senat') echo ' checked'?>> diff --git a/cis/private/tools/news_show.php b/cis/private/tools/news_show.php index c84ed54f7..f45ef3962 100644 --- a/cis/private/tools/news_show.php +++ b/cis/private/tools/news_show.php @@ -103,7 +103,7 @@ getnews(MAXNEWSALTER,0,null, true); + $news->getnews(MAXNEWSALTER,0,null, true, '*'); $zaehler=0; $i=0; diff --git a/content/fasoverlay.js.php b/content/fasoverlay.js.php index 8bb26e0a5..3fec3ef47 100644 --- a/content/fasoverlay.js.php +++ b/content/fasoverlay.js.php @@ -190,46 +190,55 @@ function onVerbandSelect(event) var grp=tree.view.getCellText(tree.currentIndex,col); col = tree.columns ? tree.columns["gruppe"] : "gruppe"; var gruppe=tree.view.getCellText(tree.currentIndex,col); - + col = tree.columns ? tree.columns["typ"] : "typ"; + var typ=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["stsem"] : "stsem"; + var stsem=tree.view.getCellText(tree.currentIndex,col); + currentAuswahl.stg_kz=stg_kz; currentAuswahl.sem=sem; currentAuswahl.ver=ver; currentAuswahl.grp=grp; currentAuswahl.gruppe=gruppe; - // Studenten - try + if(typ=='') { - url = "rdf/student.rdf.php?"+"stg_kz="+stg_kz+"&sem="+sem+"&ver="+ver+"&grp="+grp+"&gruppe="+gruppe+"&stsem=true&"+gettimestamp(); - var treeStudent=document.getElementById('student-tree'); - - //Alte DS entfernen - var oldDatasources = treeStudent.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) + // Studenten + try { - treeStudent.database.RemoveDataSource(oldDatasources.getNext()); + url = "rdf/student.rdf.php?"+"stg_kz="+stg_kz+"&sem="+sem+"&ver="+ver+"&grp="+grp+"&gruppe="+gruppe+"&stsem=true&"+gettimestamp(); + var treeStudent=document.getElementById('student-tree'); + + //Alte DS entfernen + var oldDatasources = treeStudent.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treeStudent.database.RemoveDataSource(oldDatasources.getNext()); + } + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + StudentTreeDatasource = rdfService.GetDataSource(url); + StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treeStudent.database.AddDataSource(StudentTreeDatasource); + StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver); + treeStudent.builder.addListener(StudentTreeListener); + StudentDetailReset(); + StudentDetailDisableFields(true); + StudentPrestudentDisableFields(true); + } + catch(e) + { + debug(e); } - - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); - StudentTreeDatasource = rdfService.GetDataSource(url); - StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); - StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink); - treeStudent.database.AddDataSource(StudentTreeDatasource); - StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver); - treeStudent.builder.addListener(StudentTreeListener); - StudentDetailReset(); - StudentDetailDisableFields(true); - StudentPrestudentDisableFields(true); - } - catch(e) - { - debug(e); } // Interessenten / Bewerber try { - url = "rdf/interessentenbewerber.rdf.php?"+"studiengang_kz="+stg_kz+"&semester="+sem+"&"+gettimestamp(); + if(stsem=='' && typ=='') + stsem='aktuelles'; + url = "rdf/interessentenbewerber.rdf.php?"+"studiengang_kz="+stg_kz+"&semester="+sem+"&typ="+typ+"&studiensemester_kurzbz="+stsem+"&"+gettimestamp(); var treeInt=document.getElementById('interessent-tree'); //Alte DS entfernen @@ -255,32 +264,35 @@ function onVerbandSelect(event) debug(e); } - // Lehrveranstaltung - try + if(typ=='') { - url = 'rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&'+gettimestamp(); - var treeLV=document.getElementById('lehrveranstaltung-tree'); - - //Alte DS entfernen - var oldDatasources = treeLV.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) + // Lehrveranstaltung + try { - treeLV.database.RemoveDataSource(oldDatasources.getNext()); + url = 'rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&'+gettimestamp(); + var treeLV=document.getElementById('lehrveranstaltung-tree'); + + //Alte DS entfernen + var oldDatasources = treeLV.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treeLV.database.RemoveDataSource(oldDatasources.getNext()); + } + + var rdfService1 = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + + LvTreeDatasource = rdfService1.GetDataSource(url); + LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treeLV.database.AddDataSource(LvTreeDatasource); + LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver); + treeLV.builder.addListener(LvTreeListener); + document.getElementById('lehrveranstaltung-toolbar-lehrauftrag').hidden=true; + } + catch(e) + { + debug(e); } - - var rdfService1 = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); - - LvTreeDatasource = rdfService1.GetDataSource(url); - LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); - LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink); - treeLV.database.AddDataSource(LvTreeDatasource); - LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver); - treeLV.builder.addListener(LvTreeListener); - document.getElementById('lehrveranstaltung-toolbar-lehrauftrag').hidden=true; - } - catch(e) - { - debug(e); } } diff --git a/content/fasoverlay.xul.php b/content/fasoverlay.xul.php index f45c140d9..6a0f06f8a 100644 --- a/content/fasoverlay.xul.php +++ b/content/fasoverlay.xul.php @@ -46,6 +46,10 @@ echo '';*/