From f62108f1d4274793581fd8907ffb0efa1131375f Mon Sep 17 00:00:00 2001 From: Harald Bamberger Date: Fri, 13 Dec 2024 12:09:16 +0100 Subject: [PATCH] change concatenation of verband, use contact email in Stv search result, use dummy image when viewing anothers profile and foto is null or foto_sperre is not false --- application/controllers/api/frontend/v1/Profil.php | 9 +++++++-- application/libraries/SearchBarLib.php | 12 ++++++------ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/application/controllers/api/frontend/v1/Profil.php b/application/controllers/api/frontend/v1/Profil.php index 40676a460..576a2a8ed 100644 --- a/application/controllers/api/frontend/v1/Profil.php +++ b/application/controllers/api/frontend/v1/Profil.php @@ -495,12 +495,11 @@ class Profil extends FHCAPI_Controller */ private function getPersonInfo($uid, $geburtsInfo = null) { - $selectClause = ["foto", "anrede", "titelpost as postnomen", "titelpre as titel", "vorname", "nachname"]; + $selectClause = ["foto", "foto_sperre", "anrede", "titelpost as postnomen", "titelpre as titel", "vorname", "nachname"]; /** @param integer $geburtsInfo */ if ($geburtsInfo) { array_push($selectClause, "gebort"); array_push($selectClause, "gebdatum"); - array_push($selectClause, "foto_sperre"); } $this->BenutzerModel->addSelect($selectClause); $this->BenutzerModel->addJoin("tbl_person", "person_id"); @@ -512,6 +511,12 @@ class Profil extends FHCAPI_Controller $person_res = hasData($person_res) ? getData($person_res)[0] : null; } + if( ($person_res->foto === null) || (($this->uid !== $uid) && ($person_res->foto_sperre !== false)) ) + { + $dummy_foto = base64_encode(file_get_contents(DOC_ROOT.'skin/images/profilbild_dummy.jpg')); + $person_res->foto = $dummy_foto; + } + return $person_res; } diff --git a/application/libraries/SearchBarLib.php b/application/libraries/SearchBarLib.php index eb309a2d6..13b0efdbb 100644 --- a/application/libraries/SearchBarLib.php +++ b/application/libraries/SearchBarLib.php @@ -369,7 +369,7 @@ EOSC; s.student_uid AS uid, CONCAT(s.student_uid,\'@'.DOMAIN.'\') AS email, s.matrikelnr, - CONCAT(stg.kurzbzlang,s.semester,s.verband) as verband, + CONCAT(UPPER(stg.typ),UPPER(stg.kurzbz),\'-\',s.semester,s.verband) as verband, stg.bezeichnung AS studiengang, p.person_id AS person_id, p.vorname || \' \' || p.nachname AS name, @@ -396,7 +396,7 @@ EOSC; OR p.nachname ILIKE \'%'.$dbModel->escapeLike($searchstr).'%\') GROUP BY type, s.student_uid, s.matrikelnr, p.person_id, name, email, p.foto, s.verband, s.semester, stg.bezeichnung, - stg.kurzbzlang, b.aktiv + stg.typ, stg.kurzbz, b.aktiv ORDER BY b.aktiv DESC, p.nachname ASC, p.vorname ASC '); @@ -415,12 +415,12 @@ EOSC; SELECT \''.$type.'\' AS type, s.student_uid AS uid, - CONCAT(s.student_uid,\'@'.DOMAIN.'\') AS email, s.matrikelnr, - CONCAT(stg.kurzbzlang,s.semester,s.verband) as verband, + CONCAT(UPPER(stg.typ),UPPER(stg.kurzbz),\'-\',s.semester,s.verband) as verband, stg.bezeichnung AS studiengang, p.person_id AS person_id, p.vorname || \' \' || p.nachname AS name, + k.kontakt AS email, p.foto, b.aktiv FROM public.tbl_student s @@ -437,8 +437,8 @@ EOSC; OR p.vorname ILIKE \'%'.$dbModel->escapeLike($searchstr).'%\' OR p.nachname ILIKE \'%'.$dbModel->escapeLike($searchstr).'%\' GROUP BY type, s.student_uid, s.matrikelnr, p.person_id, name, - email, p.foto, s.verband, s.semester, stg.bezeichnung, - stg.kurzbzlang, b.aktiv + k.kontakt, p.foto, s.verband, s.semester, stg.bezeichnung, + stg.typ, stg.kurzbz, b.aktiv ORDER BY b.aktiv DESC, p.nachname ASC, p.vorname ASC ');