mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
- LV-Plan Link ohne Authentifizierung
- Gruppenverwaltung Attribut für Zutrittssystem hinzguefügt
This commit is contained in:
@@ -837,5 +837,49 @@ function check_user($username, $passwort)
|
||||
}
|
||||
}
|
||||
|
||||
function safe_b64encode($string)
|
||||
{
|
||||
$data = base64_encode($string);
|
||||
$data = str_replace(array('+','/','='),array('-','_',''),$data);
|
||||
return $data;
|
||||
}
|
||||
|
||||
function safe_b64decode($string)
|
||||
{
|
||||
$data = str_replace(array('-','_'),array('+','/'),$string);
|
||||
$mod4 = strlen($data) % 4;
|
||||
if ($mod4)
|
||||
{
|
||||
$data .= substr('====', $mod4);
|
||||
}
|
||||
return base64_decode($data);
|
||||
}
|
||||
|
||||
function encryptData($value,$key)
|
||||
{
|
||||
if(!$value)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
$text = $value;
|
||||
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
|
||||
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
|
||||
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
|
||||
return trim(safe_b64encode($crypttext));
|
||||
}
|
||||
|
||||
function decryptData($value,$key)
|
||||
{
|
||||
if(!$value)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
$crypttext = safe_b64decode($value);
|
||||
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
|
||||
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
|
||||
$decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $crypttext, MCRYPT_MODE_ECB, $iv);
|
||||
return trim($decrypttext);
|
||||
}
|
||||
?>
|
||||
|
||||
+101
-4
@@ -45,7 +45,8 @@ class gruppe extends basis_db
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(16)
|
||||
public $orgform_kurzbz;
|
||||
public $gesperrt=false; // boolean
|
||||
public $gesperrt=false; // boolean
|
||||
public $zutrittssystem=false; // boolean
|
||||
|
||||
/**
|
||||
* Konstruktor - Laedt optional eine Gruppe
|
||||
@@ -138,6 +139,7 @@ class gruppe extends basis_db
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$this->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$this->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
|
||||
return true;
|
||||
}
|
||||
else
|
||||
@@ -186,6 +188,7 @@ class gruppe extends basis_db
|
||||
$grp_obj->insertvon = $row->insertvon;
|
||||
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$grp_obj->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
|
||||
|
||||
$this->result[] = $grp_obj;
|
||||
}
|
||||
@@ -273,6 +276,7 @@ class gruppe extends basis_db
|
||||
$grp_obj->insertvon = $row->insertvon;
|
||||
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$grp_obj->zutrittsssystem = $this->db_parse_bool($row->zutrittssystem);
|
||||
|
||||
$this->result[] = $grp_obj;
|
||||
}
|
||||
@@ -380,7 +384,7 @@ class gruppe extends basis_db
|
||||
|
||||
$qry = 'INSERT INTO public.tbl_gruppe (gruppe_kurzbz, studiengang_kz, bezeichnung, semester, sort,
|
||||
mailgrp, beschreibung, sichtbar, generiert, aktiv, lehre, content_visible,
|
||||
updateamum, updatevon, insertamum, insertvon, orgform_kurzbz, gesperrt)
|
||||
updateamum, updatevon, insertamum, insertvon, orgform_kurzbz, gesperrt,zutrittssystem)
|
||||
VALUES('.$this->db_add_param($kurzbz).','.
|
||||
$this->db_add_param($this->studiengang_kz).','.
|
||||
$this->db_add_param($this->bezeichnung).','.
|
||||
@@ -398,7 +402,8 @@ class gruppe extends basis_db
|
||||
$this->db_add_param($this->insertamum).','.
|
||||
$this->db_add_param($this->insertvon).','.
|
||||
$this->db_add_param($this->orgform_kurzbz).','.
|
||||
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).');';
|
||||
$this->db_add_param($this->gesperrt, FHC_BOOLEAN).','.
|
||||
$this->db_add_param($this->zutrittssystem, FHC_BOOLEAN).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -417,7 +422,8 @@ class gruppe extends basis_db
|
||||
' updateamum='.$this->db_add_param($this->updateamum).','.
|
||||
' updatevon='.$this->db_add_param($this->updatevon).','.
|
||||
' orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).', '.
|
||||
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).' ';
|
||||
' gesperrt='.$this->db_add_param($this->gesperrt, FHC_BOOLEAN).', '.
|
||||
' zutrittssystem='.$this->db_add_param($this->zutrittssystem, FHC_BOOLEAN).' ';
|
||||
if($this->gruppe_kurbzNeu != null) {
|
||||
$qry.=', gruppe_kurzbz='.$this->db_add_param($this->gruppe_kurbzNeu).' ';
|
||||
}
|
||||
@@ -435,5 +441,96 @@ class gruppe extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die User dieser Gruppe
|
||||
*
|
||||
* @param $gruppe_kurzbz
|
||||
*/
|
||||
public function loadUser($gruppe_kurzbz)
|
||||
{
|
||||
$qry = "SELECT
|
||||
tbl_benutzer.uid, tbl_person.vorname, tbl_person.nachname
|
||||
FROM
|
||||
public.tbl_benutzergruppe
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE
|
||||
tbl_benutzergruppe.gruppe_kurzbz=".$this->db_add_param($gruppe_kurzbz)."
|
||||
ORDER BY nachname, vorname";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new gruppe();
|
||||
|
||||
$obj->uid = $row->uid;
|
||||
$obj->vorname = $row->vorname;
|
||||
$obj->nachname = $row->nachname;
|
||||
|
||||
$this->result[]=$obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Zutrittsgruppen in denen sich der Benutzer befindet
|
||||
*
|
||||
* @param $user UID des Benutzers
|
||||
*/
|
||||
public function loadZutrittsgruppen($user)
|
||||
{
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
public.tbl_benutzergruppe
|
||||
JOIN public.tbl_gruppe USING(gruppe_kurzbz)
|
||||
WHERE
|
||||
tbl_gruppe.zutrittssystem=true
|
||||
AND tbl_benutzergruppe.uid=".$this->db_add_param($user);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$grp_obj = new gruppe();
|
||||
|
||||
$grp_obj->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$grp_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$grp_obj->bezeichnung = $row->bezeichnung;
|
||||
$grp_obj->semester = $row->semester;
|
||||
$grp_obj->sort = $row->sort;
|
||||
$grp_obj->mailgrp = $this->db_parse_bool($row->mailgrp);
|
||||
$grp_obj->lehre = $this->db_parse_bool($row->lehre);
|
||||
$grp_obj->beschreibung = $row->beschreibung;
|
||||
$grp_obj->sichtbar = $this->db_parse_bool($row->sichtbar);
|
||||
$grp_obj->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$grp_obj->content_visible = $this->db_parse_bool($row->content_visible);
|
||||
$grp_obj->generiert = $this->db_parse_bool($row->generiert);
|
||||
$grp_obj->updateamum = $row->updateamum;
|
||||
$grp_obj->updatevon = $row->updatevon;
|
||||
$grp_obj->insertamum = $row->insertamum;
|
||||
$grp_obj->insertvon = $row->insertvon;
|
||||
$grp_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$grp_obj->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$grp_obj->zutrittssystem = $this->db_parse_bool($row->zutrittssystem);
|
||||
|
||||
$this->result[] = $grp_obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user