diff --git a/cis/private/tools/suche.php b/cis/private/tools/suche.php
index dbc8aea6a..89d3030fb 100644
--- a/cis/private/tools/suche.php
+++ b/cis/private/tools/suche.php
@@ -56,7 +56,7 @@ echo 'Globale Suche
';
@@ -109,27 +109,27 @@ $searchContent = searchContent($searchItems);
if (!$searchPerson && !$searchOrt && !$searchDms && !$searchContent && !$searchOE)
echo $p->t('tools/esWurdenKeineErgebnisseGefunden');
-
+
function searchPerson($searchItems)
{
global $db, $p, $noalias;
$bn = new benutzer();
$bn->search($searchItems, 21);
-
+
if(count($bn->result)>0)
{
echo '',$p->t('global/personen'),'
';
echo '
- ';
if(count($bn->result)>20)
@@ -158,7 +158,7 @@ function searchPerson($searchItems)
{
$bisverwendung = new bisverwendung();
$bisverwendung->getLastAktVerwendung($row->uid);
-
+
echo '';
//echo '| ',$row->titelpre,' | ';
echo '',$row->vorname,' | ';
@@ -185,14 +185,14 @@ function searchPerson($searchItems)
}
echo '
';
return true;
- }
- else
- return false;
+ }
+ else
+ return false;
}
function searchOE($searchItems)
{
global $db, $p, $noalias;
-
+
//Suche nach Studiengaengen mit dem Suchbegriff und merge mit $searchItems
$stg_oe_array = array();
$stg = new studiengang();
@@ -203,17 +203,17 @@ function searchOE($searchItems)
$stg_oe_array[].= $row->oe_kurzbz;
}
$searchItems = array_merge_recursive($stg_oe_array,$searchItems);
-
+
$oe = new organisationseinheit();
$oe->search($searchItems);
-
+
if(count($oe->result)>0)
{
echo '',$p->t('global/organisationseinheiten'),'
';
echo '
- ';
-
+
foreach($oe->result as $row)
{
if($row->aktiv==true)
@@ -271,7 +271,7 @@ function searchOE($searchItems)
if($bisverwendung->beschausmasscode=='5')
echo ' (karenziert)';
echo '';
-
+
echo '',($mitarbeiter->telefonklappe!=''?$kontakt->kontakt.'-'.$mitarbeiter->telefonklappe:'-'),' | ';
echo '',($mitarbeiter->ort_kurzbz!=''?$mitarbeiter->ort_kurzbz:'-'),' | ';
//if($row->alias!='' && !in_array($row->studiengang_kz, $noalias)) ??? Was macht $noalias?
@@ -292,16 +292,16 @@ function searchOE($searchItems)
}
}
return true;
- }
- else
- return false;
+ }
+ else
+ return false;
}
function searchOrt($search)
{
global $db, $p, $noalias;
$ort = new ort();
$ort->filter($search, true, true, true);
-
+
$uid = get_uid();
$berechtigung=new benutzerberechtigung();
$berechtigung->getBerechtigungen($uid);
@@ -309,21 +309,21 @@ function searchOrt($search)
$raumres=true;
else
$raumres=false;
-
+
if(count($ort->result)>0)
{
echo '',$p->t('lvplan/ort'),'
';
echo '
-
@@ -335,7 +335,7 @@ function searchOrt($search)
| ',$p->t('tools/telefonklappe'),' | ';
if ($raumres)
echo '',$p->t('tools/reservieren'),' | ';
- else
+ else
echo '',$p->t('lvplan/lvPlan'),' | ';
echo '
@@ -349,9 +349,9 @@ function searchOrt($search)
echo '',$row->telefonklappe,' | ';
if ($raumres)
echo ''.$p->t('tools/reservieren').' | ';
- else
+ else
echo ''.$p->t('lvplan/lvPlan').' | ';
- //else
+ //else
// echo ' | ';
echo '';
echo "\n";
@@ -359,7 +359,7 @@ function searchOrt($search)
echo '
';
return true;
}
- else
+ else
return false;
}
function searchDms($searchItems)
@@ -383,21 +383,21 @@ function searchDms($searchItems)
global $db, $p, $uid;
$dms = new dms();
$dms->searchLastVersion($searchstring, 41);
-
+
if(count($dms->result)>0)
{
echo ''.$p->t("tools/dokumente").'
';
echo '
- ';
if(count($dms->result)>40)
@@ -409,7 +409,7 @@ function searchDms($searchItems)
|
',$p->t('global/titel'),' |
- ',$p->t('tools/aktuelleVersion'),' |
+ ',$p->t('tools/aktuelleVersion'),' |
@@ -431,7 +431,7 @@ function searchDms($searchItems)
echo "\n";
}
}
- else
+ else
{
echo '';
if(array_key_exists($row->mimetype,$mimetypes))
@@ -446,7 +446,7 @@ function searchDms($searchItems)
echo '
';
return true;
}
- else
+ else
return false;
}
function searchContent($searchItems)
@@ -482,13 +482,13 @@ function searchContent($searchItems)
echo '';
}
}
}
- echo '';
+ echo '';
$anzeigesprache='';
foreach($cms->result as $row)
{
@@ -508,7 +508,7 @@ function searchContent($searchItems)
echo '';
}
@@ -522,6 +522,7 @@ function searchContent($searchItems)
}
function findAndMark($content, $items)
{
+ $item = '';
foreach($items as $row)
{
if($row!='')
@@ -529,16 +530,19 @@ function findAndMark($content, $items)
$item = $row;
break;
}
- }
+ }
+ if($item == '')
+ return '...';
+
//CDATA und HTML Tags entfernen
$content = mb_str_replace('<[CDATA[', '', $content);
$content = mb_str_replace(']]>', '', $content);
$content = strip_tags($content);
$item = mb_strtolower($item);
-
+
$beginn = mb_strpos(mb_strtolower($content), $item);
$len = mb_strlen($item);
-
+
//Im Content sind die Umlaute teilweise codiert gespeichert
//Wenn der Eintrag nicht gefunden wird, wird mit Codierten Zeichen nochmals gesucht
if($beginn=='')
@@ -546,7 +550,7 @@ function findAndMark($content, $items)
$beginn = mb_strpos(mb_strtolower($content), htmlentities($item,ENT_NOQUOTES,'UTF-8'));
$len = mb_strlen(htmlentities($item,ENT_NOQUOTES,'UTF-8'));
}
-
+
if($beginn=='')
{
$beginn=0;
@@ -558,7 +562,7 @@ function findAndMark($content, $items)
$preview='';
if($start!=0)
$preview='...';
-
+
$preview .= mb_substr($content, $start, ($beginn-$start));
$preview.='';
$preview.= mb_substr($content, $beginn, $len);