diff --git a/cis/menu.html b/cis/menu.html
index 09e1998a0..a6c4c9e2c 100644
--- a/cis/menu.html
+++ b/cis/menu.html
@@ -49,16 +49,18 @@
- |
-
+ | |
+
+
+ |
|
-
-
-
-
- |
-
-
- |
-
-
@@ -127,116 +102,62 @@
| |
TW International |
-
- | |
-
-
- |
-
+
| |
- Bibliothek |
+ |
-
- | |
- |
+
+
+
+
+
+
+ |
+
- |
+
+ | |
+ Links |
+
+
+ | |
+ LLL-Academy |
+
+
+
-
|
@@ -270,25 +191,8 @@
| |
- |
+ |
-
- | |
-
-
- |
-
@@ -319,7 +223,7 @@
| |
- WLan-Registration |
+ WLAN-Registration |
| |
@@ -330,8 +234,55 @@
SoftGrid |
- | |
- Mail |
+ |
+
+
+ |
- |
+ |
|
@@ -467,38 +416,64 @@
|
- | |
- Links |
-
-
-
- | |
- |
-
-
- | |
-
-
|
-
-
- |
+
+ |
+
+
+ |
-
+
+
+ |
+
+
+
- |
+ |
@@ -115,6 +115,10 @@ else
| |
Profil |
+
+ | |
+ Webmail |
+
| |
LV-Plan |
diff --git a/cis/public/news.php b/cis/public/news.php
index 30333bf42..4a83d086a 100644
--- a/cis/public/news.php
+++ b/cis/public/news.php
@@ -46,28 +46,47 @@
|
+
getnews(MAXNEWSALTER,0,null);
$zaehler=0;
-
+ $open=true;
foreach ($news->result as $row)
{
$zaehler++;
//no comment
$datum = date('d.m.Y',strtotime(strftime($row->datum)));
- echo $datum.' '.$row->verfasser.' '.$row->betreff.''.$row->text.'
- ';
+ //echo $datum.' '.$row->verfasser.' '.$row->betreff.''.$row->text.'
+ echo ' ';
+ echo '
+
+
+
+ | '.$row->betreff.' |
+ '.$datum.' |
+ mehr >> |
+ '.$row->verfasser.' |
+
+
+
+
+ '.$row->text.'
+
+ ';
+ echo " ";
}
if($zaehler==0)
echo 'Zur Zeit gibt es keine aktuellen News!';
?>
+
|
+ |
|
diff --git a/content/student/interessentenoverlay.xul.php b/content/student/interessentenoverlay.xul.php
index 50a135537..e4261a9a7 100644
--- a/content/student/interessentenoverlay.xul.php
+++ b/content/student/interessentenoverlay.xul.php
@@ -49,7 +49,7 @@ echo '
-
+
diff --git a/content/student/interessentoverlay.js.php b/content/student/interessentoverlay.js.php
index 0717417a1..8cf1c754e 100644
--- a/content/student/interessentoverlay.js.php
+++ b/content/student/interessentoverlay.js.php
@@ -638,6 +638,53 @@ function InteressentzuBewerber()
var val = new ParseReturnValue(response)
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ }
+ else
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ InteressentSelectId=prestudent_id;
+ InteressentTreeDatasource.Refresh(false); //non blocking
+ SetStatusBarText('Daten wurden gespeichert');
+ }
+}
+
+// ****
+// * macht aus einem Bewerber einen Studenten
+// * Voraussetzungen:
+// * - ZGV muss ausgefuellt sein (bei Master beide)
+// * - Kaution muss bezahlt sein
+// * - Rolle Bewerber muss existieren
+// * Wenn die Voraussetzungen erfuellt sind, dann wird die Matrikelnr
+// * und UID generiert und der Studentendatensatz angelegt.
+// ****
+function InteressentzuStudent()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var tree = document.getElementById('interessent-tree');
+
+ //Wenn kein Interessent ausgewaehlt ist, dann abbrechen
+ if (tree.currentIndex==-1) return;
+
+ prestudent_id = document.getElementById('interessent-prestudent-textbox-prestudent_id').value;
+
+ var url = 'content/student/studentDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'BewerberZuStudent');
+
+ req.add('prestudent_id', prestudent_id);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index 7a5923437..a6975308e 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -37,6 +37,7 @@ require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
+require_once('../../include/studiengang.class.php');
$user = get_uid();
@@ -60,6 +61,76 @@ if(!$rechte->isBerechtigt('admin'))
$error = true;
}
+// *** FUNKTIONEN ***
+
+// ****
+// * Generiert die Matrikelnummer
+// * FORMAT: 0710254001
+// * 07 = Jahr
+// * 1/2/0 = WS/SS/Incomming
+// * 0254 = Studiengangskennzahl vierstellig
+// * 001 = Laufende Nummer
+// ****
+function generateMatrikelnummer($conn, $studiengang_kz, $studiensemester_kurzbz)
+{
+ $jahr = substr($studiensemester_kurzbz, 4);
+ $art = substr($studiensemester_kurzbz, 0, 2);
+ switch($art)
+ {
+ case 'WS': $art = '1'; break;
+ case 'SS': $art = '2'; break;
+ default: $art = '0'; break;
+ }
+ if($art=='2')
+ $jahr = $jahr-1;
+ $matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
+
+ $qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '$matrikelnummer%' ORDER BY matrikelnr DESC LIMIT 1";
+
+ if($result = pg_query($conn, $qry))
+ {
+ if($row = pg_fetch_object($result))
+ {
+ $max = substr($row->matrikelnr,7);
+ }
+ else
+ $max = 0;
+
+ $max += 1;
+ return $matrikelnummer.sprintf("%03d",$max);
+ }
+ else
+ {
+ return false;
+ }
+}
+
+// ****
+// * Generiert die UID
+// * FORMAT: el07b001
+// * el = studiengangskuerzel
+// * 07 = Jahr
+// * b/m/d/x = Bachelor/Master/Diplom/Incomming
+// * 001 = Laufende Nummer ( Wenn StSem==SS dann wird zur nummer 500 dazugezaehlt)
+// ****
+function generateUID($conn, $matrikelnummer)
+{
+ $jahr = substr($matrikelnummer,0, 2);
+ $art = substr($matrikelnummer, 2, 1);
+ $stg = substr($matrikelnummer, 3, 4);
+ $nr = substr($matrikelnummer, 7);
+
+ if($art=='2')
+ $nr = $nr+500;
+
+ $stg_obj = new studiengang($conn);
+ $stg_obj->load(ltrim($stg,'0'));
+
+ return $stg_obj->kurzbz.$jahr.($art!='0'?$stg_obj->typ:'x').$nr;
+}
+// ***
+
+
if(!$error)
{
@@ -259,7 +330,8 @@ if(!$error)
if($prestd->getLastStatus($_POST['prestudent_id']))
{
$hlp = new prestudent($conn);
- if($hlp->getPrestudentRolle($_POST['prestudent_id'], $_POST['rolle_kurzbz'], $prestd->studiensemester_kurzbz))
+ $hlp->getPrestudentRolle($_POST['prestudent_id'], $_POST['rolle_kurzbz'], $prestd->studiensemester_kurzbz);
+ if(count($hlp->result)>0)
{
$errormsg = 'Diese Rolle ist bereits vorhanden';
$return = false;
@@ -284,7 +356,6 @@ if(!$error)
{
$return = false;
$errormsg = $prestd_neu->errormsg;
- $error = true;
}
}
}
@@ -292,14 +363,88 @@ if(!$error)
{
$return = false;
$errormsg = 'Es ist keine Rolle fuer diesen Prestudent vorhanden';
- $error = true;
}
}
else
{
$return = false;
$errormsg = 'Prestudent_id muss angegeben werden';
- $error = true;
+ }
+ }
+ }
+ elseif(isset($_POST['type']) && $_POST['type']=='BewerberZuStudent')
+ {
+ // macht aus einem Bewerber einen Studenten
+ // Voraussetzungen:
+ // - ZGV muss ausgefuellt sein (bei Master beide)
+ // - Kaution muss bezahlt sein
+ // - Rolle Bewerber muss existieren
+ // Wenn die Voraussetzungen erfuellt sind, dann wird die Matrikelnr
+ // und UID generiert und der Studentendatensatz angelegt.
+
+ if(!$error)
+ {
+ if(isset($_POST['prestudent_id']))
+ {
+ $prestd = new prestudent($conn);
+ if($prestd->load($_POST['prestudent_id']))
+ {
+ if($prestd->zgv_code!='')
+ {
+ $stg = new studiengang($conn);
+ $stg->load($prestd->studiengang_kz);
+
+ if($stg->typ=='m' && $prestd->zgvmas_code=='')
+ {
+ $return = false;
+ $errormsg = 'ZGV Master muss eingegeben werden';
+ }
+ else
+ {
+ //Pruefen ob die Rolle Bewerber existiert
+ $hlp = new prestudent($conn);
+ $hlp->getPrestudentRolle($_POST['prestudent_id'], 'Bewerber');
+
+ if(count($hlp->result)>0)
+ {
+ //pruefen ob die Kaution bezahlt wurde
+ //??
+
+ //Matrikelnummer und UID generieren
+ $matrikelnr = generateMatrikelnummer($conn, $prestd->studiengang_kz, $hlp->result[0]->studiensemester_kurzbz);
+ $uid = generateUID($conn, $matrikelnr);
+
+ $return = false;
+ $errormsg = "Matrikelnummer: $matrikelnr, UID: $uid";
+
+ //Benutzerdatensatz anlegen
+ //Studentendatensatz anlegen
+ //Prestudentrolle hinzugfuegen
+ //Eintrag tbl_studentlehrverband??
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Die Person muss zuerst Bewerber sein bevor Sie zum Studenten gemacht werden kann';
+ }
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'ZGV muss eingegeben werden';
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Prestudent wurde nicht gefunden';
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Prestudent_id muss angegeben werden';
}
}
}
diff --git a/include/prestudent.class.php b/include/prestudent.class.php
index d7828f101..4e0a510bc 100644
--- a/include/prestudent.class.php
+++ b/include/prestudent.class.php
@@ -352,7 +352,7 @@ class prestudent extends person
if($studiensemester_kurzbz!=null)
$qry.= " AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
$qry.= " ORDER BY datum, insertamum";
-
+
if($result = pg_query($this->conn, $qry))
{
while($row = pg_fetch_object($result))
diff --git a/skin/cis.css b/skin/cis.css
index 94e043a22..8a8378493 100644
--- a/skin/cis.css
+++ b/skin/cis.css
@@ -313,15 +313,33 @@ h4
text-decoration: none;
}
-#News
+#news
{
}
-#News div
+#news .news
{
+ //-moz-border-radius-topright: 20px;
+ -moz-border-radius-topleft: 10px;
+ width: 100%;
+ border: 1px solid #E0E0E0;
+ background-color: #F0F0F0;
}
+#news .news .titel
+{
+ font-weight: bold;
+ font-size: normal;
+ padding: 0px 10px 0px 10px;
+}
+
+#news .news .text
+{
+ background-color: #FCFCFC;
+ padding: 0px 10px 0px 10px;
+}
+
#GlobalMenu
{
margin-top: 3px;
diff --git a/vilesci/personen/import/interessentenimport.php b/vilesci/personen/import/interessentenimport.php
index 38823a9bc..348997a63 100644
--- a/vilesci/personen/import/interessentenimport.php
+++ b/vilesci/personen/import/interessentenimport.php
@@ -105,6 +105,10 @@ $person_id = (isset($_POST['person_id'])?$_POST['person_id']:'');
$ueberschreiben = (isset($_POST['ueberschreiben'])?$_POST['ueberschreiben']:'');
//end Parameter
+//Testphase fix
+if($studiengang_kz!='' && $studiengang_kz!='257')
+ die('Keine Berechtigung zum Importieren');
+//end Testphase
// *** Speichern der Daten ***
if(isset($_POST['save']))