mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-30 18:39:28 +00:00
- Menü optimierungen
- Mehrsprachige Arrays für Studiengang und LVs hinzugefügt - Menü-Addons für mehrsprachige LV-Namen angepasst
This commit is contained in:
@@ -131,7 +131,7 @@ if (isset($_GET["handbuch"])){
|
||||
<td class="tdwidth10"> </td>
|
||||
<td class="ContentHeader"><font class="ContentHeader">
|
||||
<?php
|
||||
echo $lv_obj->bezeichnung.' '.$lv_obj->lehrform_kurzbz.' / '.$kurzbz.'-'.$semester;
|
||||
echo $lv_obj->bezeichnung_arr[$sprache].' '.$lv_obj->lehrform_kurzbz.' / '.$kurzbz.'-'.$semester;
|
||||
|
||||
$qry = "SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
|
||||
WHERE lehrveranstaltung_id='".addslashes($lvid)."' ORDER BY ende DESC LIMIT 1";
|
||||
|
||||
+30
-50
@@ -44,66 +44,51 @@ function drawSubmenu($content_id)
|
||||
$content = new content();
|
||||
$sprache = getSprache();
|
||||
|
||||
$arr = $content->getMenueArray($content_id, $sprache, true);
|
||||
foreach ($arr as $row)
|
||||
//$arr = $content->getMenueArray($content_id, $sprache, true);
|
||||
$content->getChilds($content_id);
|
||||
foreach ($content->result as $row)
|
||||
{
|
||||
drawEntry($row);
|
||||
drawEntry($row, $sprache);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob der Menueeintrag Submenues hat
|
||||
*
|
||||
* @param $item Menue Array
|
||||
* @return boolean
|
||||
*/
|
||||
function EntryHasChilds($item)
|
||||
{
|
||||
foreach($item as $row)
|
||||
{
|
||||
if(is_array($row) && isset($row['name']))
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Zeichnet den Menueeintrag samt Untermenues
|
||||
* @param $item Menue Array
|
||||
*/
|
||||
function drawEntry($item)
|
||||
function drawEntry($item, $sprache)
|
||||
{
|
||||
$content = new content();
|
||||
//pruefen ob der Content eine Berechtigung erfordert
|
||||
if($content->islocked($item['content_id']))
|
||||
if($content->islocked($item->content_id))
|
||||
{
|
||||
$user = get_uid();
|
||||
//wenn der User nicht berechtigt ist, dann wird der Eintrag nicht angezeigt
|
||||
if(!$content->berechtigt($item['content_id'], $user))
|
||||
if(!$content->berechtigt($item->content_id, $user))
|
||||
return;
|
||||
}
|
||||
if(EntryHasChilds($item))
|
||||
$content = new content();
|
||||
$content->getContent($item->child_content_id, $sprache, null, true, true);
|
||||
if($content->hasChilds($content->content_id))
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap">';
|
||||
if($item['template']=='include')
|
||||
IncludeMenuAddon($item['content_id']);
|
||||
elseif($item['template']=='redirect')
|
||||
Redirect($item['content_id'], $item['name'], $item['content_id']);
|
||||
if($content->template_kurzbz=='include')
|
||||
IncludeMenuAddon($content);
|
||||
elseif($content->template_kurzbz=='redirect')
|
||||
Redirect($content, $content->content_id);
|
||||
else
|
||||
DrawLink($item['link'], 'content', $item['name'], $item['content_id']);
|
||||
DrawLink(APP_ROOT.'cms/content.php?content_id='.$content->content_id,'content',$content->titel, $content->content_id);
|
||||
|
||||
echo '
|
||||
<table class="tabcontent" id="Content'.$item['content_id'].'" style="display: '.($item['open']=='true'?'visible':'none').'">';
|
||||
foreach($item as $row)
|
||||
<table class="tabcontent" id="Content'.$content->content_id.'" style="display: '.($content->menu_open?'visible':'none').'">';
|
||||
|
||||
$content->getChilds($content->content_id);
|
||||
foreach($content->result as $row)
|
||||
{
|
||||
if(is_array($row) && isset($row['name']))
|
||||
{
|
||||
drawEntry($row);
|
||||
}
|
||||
drawEntry($row, $sprache);
|
||||
}
|
||||
echo '
|
||||
</table>
|
||||
@@ -116,12 +101,12 @@ function drawEntry($item)
|
||||
<tr>
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap">';
|
||||
if($item['template']=='include')
|
||||
IncludeMenuAddon($item['content_id']);
|
||||
elseif($item['template']=='redirect')
|
||||
Redirect($item['content_id'], $item['name']);
|
||||
if($content->template_kurzbz=='include')
|
||||
IncludeMenuAddon($content);
|
||||
elseif($content->template_kurzbz=='redirect')
|
||||
Redirect($content);
|
||||
else
|
||||
DrawLink($item['link'],'content',$item['name']);
|
||||
DrawLink(APP_ROOT.'cms/content.php?content_id='.$content->content_id,'content',$content->titel);
|
||||
|
||||
echo '
|
||||
</td>
|
||||
@@ -147,7 +132,7 @@ function DrawLink($link, $target, $name, $content_id=null)
|
||||
$class='class="Item"';
|
||||
|
||||
echo '<a '.$class.' href="'.$link.'" target="'.$target.'"><img src="../skin/images/menu_item.gif" alt="menu item" width="7" height="9"> '.$name.'</a>';
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -159,13 +144,10 @@ function DrawLink($link, $target, $name, $content_id=null)
|
||||
* @param $name Anzeigename des Links
|
||||
* @param $content_id_Submenu ID des Submenues das geoeffnet werden soll (optional)
|
||||
*/
|
||||
function Redirect($content_id, $name, $content_id_Submenu=null)
|
||||
function Redirect($content, $content_id_Submenu=null)
|
||||
{
|
||||
global $sprache, $params;
|
||||
|
||||
$content = new content();
|
||||
$content->getContent($content_id, $sprache, null, true, true);
|
||||
|
||||
|
||||
$xml = new DOMDocument();
|
||||
if($content->content!='')
|
||||
{
|
||||
@@ -188,7 +170,7 @@ function Redirect($content_id, $name, $content_id_Submenu=null)
|
||||
else
|
||||
$target='';
|
||||
|
||||
DrawLink($url, $target, $name, $content_id_Submenu);
|
||||
DrawLink($url, $target, $content->titel, $content_id_Submenu);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -197,11 +179,9 @@ function Redirect($content_id, $name, $content_id_Submenu=null)
|
||||
*
|
||||
* @param $content_id
|
||||
*/
|
||||
function IncludeMenuAddon($content_id)
|
||||
function IncludeMenuAddon($content)
|
||||
{
|
||||
global $sprache, $includeparams;
|
||||
$content = new content();
|
||||
$content->getContent($content_id, $sprache, null, true, true);
|
||||
|
||||
$xml = new DOMDocument();
|
||||
if($content->content!='')
|
||||
|
||||
@@ -42,10 +42,10 @@ class menu_addon_freifaecher extends menu_addon
|
||||
|
||||
foreach($lv_obj->lehrveranstaltungen AS $row)
|
||||
{
|
||||
$this->items[] = array('title'=>$row->bezeichnung,
|
||||
$this->items[] = array('title'=>$row->bezeichnung_arr[$sprache],
|
||||
'target'=>'content',
|
||||
'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id,
|
||||
'name'=>'<span '.(!$row->aktiv?' style="color:gray;" ':' style=" font-weight: bold;"').'>'.$this->CutString($row->bezeichnung, 21).'</span>'
|
||||
'name'=>'<span '.(!$row->aktiv?' style="color:gray;" ':' style=" font-weight: bold;"').'>'.$this->CutString($row->bezeichnung_arr[$sprache], 21).'</span>'
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -180,7 +180,7 @@ class menu_addon_lehrveranstaltungen extends menu_addon
|
||||
}
|
||||
$this->block.= '<tr>';
|
||||
$this->block.= ' <td class="tdwrap"><ul style="margin: 0px; padding: 0px; padding-left: 20px;">';
|
||||
$this->block.= "<li><a class=\"Item2\" title=\"".$row->bezeichnung."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id\" target=\"content\">".$this->CutString($row->bezeichnung, 21).' '.$row->lehrform_kurzbz."</a></li>";
|
||||
$this->block.= "<li><a class=\"Item2\" title=\"".$row->bezeichnung_arr[$sprache]."\" href=\"private/lehre/lesson.php?lvid=$row->lehrveranstaltung_id\" target=\"content\">".$this->CutString($row->bezeichnung_arr[$sprache], 21).' '.$row->lehrform_kurzbz."</a></li>";
|
||||
$this->block.= ' </ul></td>';
|
||||
$this->block.= '</tr>';
|
||||
}
|
||||
|
||||
@@ -485,6 +485,37 @@ class content extends basis_db
|
||||
|
||||
/************ Menue / Childnodes *****************/
|
||||
|
||||
/**
|
||||
* Prueft ob der Content Kindelemente hat
|
||||
*
|
||||
* @param $content_id
|
||||
*/
|
||||
public function hasChilds($content_id)
|
||||
{
|
||||
$qry = "SELECT count(*) as anzahl FROM campus.tbl_contentchild WHERE content_id='".addslashes($content_id)."'";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
if($row->anzahl>0)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden von Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden von Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert die Alle Childcontents des uebergebenen Contents als Array zurueck.
|
||||
* Dieses kann zB direkt in das Vilesci Menue integriert werden
|
||||
|
||||
@@ -59,6 +59,7 @@ class lehrveranstaltung extends basis_db
|
||||
public $koordinator; // varchar(16)
|
||||
public $bezeichnung_english; // varchar(256)
|
||||
public $orgform_kurzbz;
|
||||
public $bezeichnung_arr = array();
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -123,6 +124,9 @@ class lehrveranstaltung extends basis_db
|
||||
$this->koordinator=$row->koordinator;
|
||||
$this->bezeichnung_english = $row->bezeichnung_english;
|
||||
$this->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$this->bezeichnung_arr['German']=$this->bezeichnung;
|
||||
$this->bezeichnung_arr['English']=$this->bezeichnung_english;
|
||||
}
|
||||
|
||||
return true;
|
||||
@@ -176,6 +180,9 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
|
||||
@@ -283,6 +290,9 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
|
||||
@@ -393,7 +403,10 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->koordinator=$row->koordinator;
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$lv_obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
@@ -454,6 +467,9 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
|
||||
@@ -730,6 +746,9 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
return true;
|
||||
@@ -807,6 +826,9 @@ class lehrveranstaltung extends basis_db
|
||||
$l->bezeichnung_english = $row->bezeichnung_english;
|
||||
$l->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$l->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$l->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[]=$l;
|
||||
}
|
||||
}
|
||||
@@ -873,6 +895,9 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->bezeichnung_english = $row->bezeichnung_english;
|
||||
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
|
||||
$lv_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$lv_obj->bezeichnung_arr['English']=$row->bezeichnung_english;
|
||||
|
||||
$this->lehrveranstaltungen[] = $lv_obj;
|
||||
}
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ class studiengang extends basis_db
|
||||
public $lgartcode; //integer
|
||||
public $mischform; // boolean
|
||||
public $projektarbeit_note_anzeige; // boolean
|
||||
public $bezeichnung_arr = array();
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -130,6 +131,9 @@ class studiengang extends basis_db
|
||||
$this->moodle=($row->moodle=='t'?true:false);
|
||||
$this->mischform=($row->mischform=='t'?true:false);
|
||||
$this->projektarbeit_note_anzeige=($row->projektarbeit_note_anzeige=='t'?true:false);
|
||||
|
||||
$this->bezeichnung_arr['German']=$this->bezeichnung;
|
||||
$this->bezeichnung_arr['English']=$this->english;
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -199,6 +203,8 @@ class studiengang extends basis_db
|
||||
$stg_obj->mischform=($row->mischform=='t'?true:false);
|
||||
$stg_obj->projektarbeit_note_anzeige=($row->projektarbeit_note_anzeige=='t'?true:false);
|
||||
|
||||
$stg_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$stg_obj->bezeichnung_arr['English']=$row->english;
|
||||
$this->result[] = $stg_obj;
|
||||
$this->kuerzel_arr[$row->studiengang_kz]=$stg_obj->kuerzel;
|
||||
}
|
||||
@@ -270,6 +276,9 @@ class studiengang extends basis_db
|
||||
$stg_obj->mischform=($row->mischform=='t'?true:false);
|
||||
$stg_obj->projektarbeit_note_anzeige=($row->projektarbeit_note_anzeige=='t'?true:false);
|
||||
|
||||
$stg_obj->bezeichnung_arr['German']=$row->bezeichnung;
|
||||
$stg_obj->bezeichnung_arr['English']=$row->english;
|
||||
|
||||
$this->result[] = $stg_obj;
|
||||
$this->kuerzel_arr[$row->studiengang_kz]=$stg_obj->kuerzel;
|
||||
}
|
||||
@@ -527,7 +536,9 @@ class studiengang extends basis_db
|
||||
$this->moodle=($row->moodle=='t'?true:false);
|
||||
$this->mischform=($row->mischform=='t'?true:false);
|
||||
$this->projektarbeit_note_anzeige=($row->projektarbeit_note_anzeige=='t'?true:false);
|
||||
|
||||
|
||||
$this->bezeichnung_arr['German']=$this->bezeichnung;
|
||||
$this->bezeichnung_arr['English']=$this->english;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user