diff --git a/include/tw/cis_menu_lv.inc.php b/include/tw/cis_menu_lv.inc.php index edc795e64..1a1406721 100644 --- a/include/tw/cis_menu_lv.inc.php +++ b/include/tw/cis_menu_lv.inc.php @@ -40,52 +40,6 @@ function checkZeilenUmbruch() $eintraegeprozeile=0; } } - - if(!defined('CIS_LEHRVERANSTALTUNG_LVINFO_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_LVINFO_ANZEIGEN) - { - // ** Lehrveranstaltungsinformation - $eintraegeprozeile++; - echo ''; - echo "
".$p->t('lehre/lehrveranstaltungsinformation')."

"; - $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND genehmigt=true AND sprache='".ATTR_SPRACHE_DE."' AND aktiv=true"; - $need_br=false; - - if($result=$db->db_query($qry)) - { - if($db->db_num_rows($result)>0) - { - echo "".$p->t('global/deutsch')." "; - $need_br=true; - } - } - $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND genehmigt=true AND sprache='".ATTR_SPRACHE_EN."' AND aktiv=true"; - if($result=$db->db_query($qry)) - { - if($db->db_num_rows($result)>0) - { - $row1=$db->db_fetch_object($result); - echo "".$p->t('global/englisch').""; - $need_br=true; - } - } - - // Bearbeiten Button anzeigen wenn Lektor der LV und bearbeiten fuer Lektoren aktiviert ist - // Oder Berechtigung zum Bearbeiten eingetragen ist - if((!defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && $lektor_der_lv) - || (defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT==true && $lektor_der_lv) - || $rechte->isBerechtigt('lehre/lvinfo',$studiengang_kz) - || $rechte->isBerechtigtMultipleOe('lehre/lvinfo', $lehrfach_oe_kurzbz_arr) - ) - { - if($need_br) - echo "
"; - echo "".$p->t('lehre/lvInfoBearbeiten').""; - } - - echo ''; - } - checkZeilenUmbruch(); - if (!isset($DOC_ROOT) || empty($DOC_ROOT)) $DOC_ROOT='../../..'; @@ -107,277 +61,226 @@ function checkZeilenUmbruch() $angemeldet = true; } +// ******************* MENUE NEU *************************************+ + $menu = array(); + + // LVINFO + if(!defined('CIS_LEHRVERANSTALTUNG_LVINFO_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_LVINFO_ANZEIGEN) + { + $text=''; + + $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND genehmigt=true AND sprache='".ATTR_SPRACHE_DE."' AND aktiv=true"; + $need_br=false; + + if($result=$db->db_query($qry)) + { + if($db->db_num_rows($result)>0) + { + $text.= "".$p->t('global/deutsch')." "; + $need_br=true; + } + } + $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND genehmigt=true AND sprache='".ATTR_SPRACHE_EN."' AND aktiv=true"; + if($result=$db->db_query($qry)) + { + if($db->db_num_rows($result)>0) + { + $row1=$db->db_fetch_object($result); + $text.= "".$p->t('global/englisch').""; + $need_br=true; + } + } + + // Bearbeiten Button anzeigen wenn Lektor der LV und bearbeiten fuer Lektoren aktiviert ist + // Oder Berechtigung zum Bearbeiten eingetragen ist + if((!defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && $lektor_der_lv) + || (defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT==true && $lektor_der_lv) + || $rechte->isBerechtigt('lehre/lvinfo',$studiengang_kz) + || $rechte->isBerechtigtMultipleOe('lehre/lvinfo', $lehrfach_oe_kurzbz_arr) + ) + { + if($need_br) + $text.= "
"; + $text.= "".$p->t('lehre/lvInfoBearbeiten').""; + } + + $menu[]=array + ( + 'id'=>'core_menu_lvinfo', + 'position'=>'10', + 'name'=>$p->t('lehre/lehrveranstaltungsinformation'), + 'icon'=>'../../../skin/images/button_lvinfo.png', + 'link'=>'', + 'text'=>$text + ); + } + + // Semesterplan if((!defined('CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_ANZEIGEN) && $angemeldet) { - // ** Semesterplan - $eintraegeprozeile++; - echo ''; + ensureDirectoryExists($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'semesterplan','teacher'); + $dir_empty = isDirectoryEmpty($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'semesterplan'); - $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/semesterplan'; - - $dest_dir = @dir($dir_name); - if(!@is_dir($dest_dir->path)) + if($dir_empty == false) { - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/semesterplan')) - { - exec('mkdir -m 775 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/semesterplan')); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/semesterplan')); - } - } - - if($dest_dir) - { - $dir_empty = true; - - while($entry = $dest_dir->read()) - { - if($entry != "." && $entry != "..") - { - $dir_empty = false; - - break; - } - } - } - - if(isset($dir_empty) && $dir_empty == false) - { - echo ''; - echo '
'; - echo ''.$p->t('lehre/semesterplan').''; - echo '
'; + $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/semesterplan'; + $dest_dir = @dir($dir_name); + $link = $dest_dir->path.'/'; } else - { - echo '
'; - echo ''.$p->t('lehre/semesterplan').''; - } + $link = ''; + $text=''; if((!defined('CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_LEKTOR_EDIT') && $user_is_allowed_to_upload) || (defined('CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_LEKTOR_EDIT==true && $user_is_allowed_to_upload) || $rechte->isBerechtigt('admin',$studiengang_kz) || $rechte->isBerechtigt('lehre',$studiengang_kz)) { - echo '
'; - echo $p->t('lehre/semesterplanUpload').""; + $text.= ''; + $text.= $p->t('lehre/semesterplanUpload').""; - echo '   '; - echo $p->t('lehre/semesterplanVorlage'); - echo ' [hml]'; - echo ''; - echo ' '; - echo '[doc]'; - echo ''; - echo ' ('.$p->t('lehre/semesterplanVorlageHilfe').')'; + $text.= '   '; + $text.= $p->t('lehre/semesterplanVorlage'); + $text.= ' [hml]'; + $text.= ''; + $text.= ' '; + $text.= '[doc]'; + $text.= ''; + $text.= ' ('.$p->t('lehre/semesterplanVorlageHilfe').')'; } - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_semesterplan', + 'position'=>'20', + 'name'=>$p->t('lehre/semesterplan'), + 'icon'=>'../../../skin/images/button_semplan.png', + 'link'=>$link, + 'text'=>$text + ); } - checkZeilenUmbruch(); - + //DOWNLOAD if((!defined('CIS_LEHRVERANSTALTUNG_DOWNLOAD_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_DOWNLOAD_ANZEIGEN) && $angemeldet) { - //DOWNLOAD - $eintraegeprozeile++; - echo ''; + ensureDirectoryExists($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'download','teacher'); + $dir_empty = isDirectoryEmpty($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'download'); - - $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/download'; - - $dest_dir = @dir($dir_name); - - if(!@is_dir($dest_dir->path)) + $text = ''; + if($dir_empty == false) { - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/download')) - { - exec('mkdir -m 775 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/download')); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/download')); - } - } - - if($dest_dir) - { - $dir_empty = true; - - while($entry = $dest_dir->read()) - { - if($entry != "." && $entry != "..") - { - $dir_empty = false; - - break; - } - } - } - - if(isset($dir_empty) && $dir_empty == false) - { - echo ''; - echo '
'; - echo ''.$p->t('lehre/download').''; - echo '
'; + $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/download'; + $dest_dir = @dir($dir_name); + $link = $dest_dir->path.'/'; } else - { - echo '
'; - echo ''.$p->t('lehre/download').''; - } + $link = ''; //Wenn user eine Lehrfachzuteilung fuer dieses Lehrfach hat wird //Ein Link zum Upload angezeigt und ein Link um das Download-Verzeichnis //als Zip Archiv herunterzuladen if($user_is_allowed_to_upload || $rechte->isBerechtigt('admin',$studiengang_kz) || $rechte->isBerechtigt('lehre',$studiengang_kz))// || $rechte->isBerechtigt('lehre',null,null,$fachbereich_id)) { - echo "
".mb_strtolower("$kurzbz/$semester/$short/download"); - echo '
'; - echo "".$p->t('lehre/upload').""; - echo '   '; + $text.= mb_strtolower("$kurzbz/$semester/$short/download"); + $text.= '
'; + $text.= "".$p->t('lehre/upload').""; + $text.= '   '; if(isset($dir_empty) && $dir_empty == false) - echo "".$p->t('lehre/ziparchiv').""; + $text.= "".$p->t('lehre/ziparchiv').""; else - echo $p->t('lehre/ziparchiv'); + $text.= $p->t('lehre/ziparchiv'); } - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_download', + 'position'=>'30', + 'name'=>$p->t('lehre/download'), + 'icon'=>'../../../skin/images/button_download.png', + 'link'=>$link, + 'text'=>$text + ); } - checkZeilenUmbruch(); - + // Anwesenheits und Notenlisten if(CIS_LEHRVERANSTALTUNG_LEISTUNGSUEBERSICHT_ANZEIGEN || $is_lector) { - - $eintraegeprozeile++; - echo ''; - - if((CIS_LEHRVERANSTALTUNG_LEISTUNGSUEBERSICHT_ANZEIGEN && $angemeldet) || $is_lector) - echo '
'; - + $link=''; + $name=''; if($is_lector) - { - //Anwesenheitsliste - echo "".$p->t('lehre/anwesenheitsUndNotenlisten')."
"; - } - - //Leistungsuebersicht - $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/leistung'; - - $dest_dir = @dir($dir_name); - if(!@is_dir($dest_dir->path)) { - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/leistung')) - { - exec('mkdir -m 775 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/leistung')); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/leistung')); - } + $name = $p->t('lehre/anwesenheitsUndNotenlisten'); + $link= "anwesenheitsliste.php?stg_kz=$studiengang_kz&sem=$semester&lvid=$lvid&stsem=$angezeigtes_stsem"; } - if($dest_dir) + ensureDirectoryExists($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'leistung','teacher'); + $dir_empty = isDirectoryEmpty($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'leistung'); + + $text=''; + if(CIS_LEHRVERANSTALTUNG_LEISTUNGSUEBERSICHT_ANZEIGEN && ($angemeldet || $is_lector)) { - $dir_empty = true; - - while($entry = $dest_dir->read()) + if($dir_empty == false) { - if($entry != "." && $entry != "..") - { - $dir_empty = false; + $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/leistung'; + $dest_dir = @dir($dir_name); - break; + if($is_lector) + { + $text.= ''; + $text.= ''.$p->t('lehre/leistungsuebersicht').''; + $text.= ''; + } + else + { + $name = $p->t('lehre/leistungsuebersicht'); + $link = $dest_dir->path; + } + } + else + { + if($is_lector) + { + $text.= ''.$p->t('lehre/leistungsuebersicht').''; + } + else + { + $name = $p->t('lehre/leistungsuebersicht'); + $link = ''; } } } - if(CIS_LEHRVERANSTALTUNG_LEISTUNGSUEBERSICHT_ANZEIGEN && ($angemeldet || $is_lector)) - { - if(isset($dest_dir) && isset($dir_empty) && $dir_empty == false) - { - echo ''; - echo ''.$p->t('lehre/leistungsuebersicht').''; - echo ''; - } - else - { - echo ''.$p->t('lehre/leistungsuebersicht').''; - } - } - echo ''; - } - checkZeilenUmbruch(); - - //Keine Newsgroups fuer Studiengang '0' (Freifaecher) anzeigen - if($studiengang_kz!='0' && CIS_LEHRVERANSTALTUNG_NEWSGROUPS_ANZEIGEN && $angemeldet) - { - $eintraegeprozeile++; - echo ''; - echo ' -
- '.$p->t('lehre/newsgroups').' -
'; - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_anwesenheitslisten', + 'position'=>'40', + 'name'=>$name, + 'icon'=>'../../../skin/images/button_listen.png', + 'link'=>$link, + 'text'=>$text + ); } - checkZeilenUmbruch(); //FEEDBACK if((!defined('CIS_LEHRVERANSTALTUNG_FEEDBACK_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_FEEDBACK_ANZEIGEN) && $angemeldet) { - $eintraegeprozeile++; - echo ''; - echo '
'.$p->t('lehre/feedback').'
'; - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_feedback', + 'position'=>'50', + 'name'=>$p->t('lehre/feedback'), + 'icon'=>'../../../skin/images/button_feedback.png', + 'link'=>'feedback.php?lvid='.$lvid, + 'text'=>'' + ); } - checkZeilenUmbruch(); - - + // Uebungstool if((!defined('CIS_LEHRVERANSTALTUNG_UEBUNGSTOOL_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_UEBUNGSTOOL_ANZEIGEN) && $angemeldet) { - $eintraegeprozeile++; - echo ''; $show=false; + $link=''; + $link_onclick=''; + $text=''; //wenn kein Moodle Kurs existiert dann KT anzeigen $qry = "SELECT 1 FROM lehre.tbl_moodle WHERE @@ -388,79 +291,73 @@ function checkZeilenUmbruch() studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem)."))"; if($result = $db->db_query($qry)) - { if($db->db_num_rows($result)==0) - { $show=true; - } - } + //wenn eine Kreuzerlliste existiert dann den Link immer anzeigen $qry = "SELECT 1 FROM campus.tbl_uebung WHERE lehreinheit_id IN (SELECT lehreinheit_id FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem).")"; if($result = $db->db_query($qry)) - { if($db->db_num_rows($result)>0) - { $show=true; - } - } if($show) { + if(isset($angezeigtes_stsem)) + $studiensem = '&stsem='.urlencode($angezeigtes_stsem); + else + $studiensem = ''; + //Kreuzerltool if($is_lector) { - if(isset($angezeigtes_stsem)) - $studiensem = '&stsem='.$angezeigtes_stsem; - else - $studiensem = ''; - - echo ' -
- '.$p->t('lehre/kreuzerltool').'

- '.$p->t('lehre/benotungstoolHandbuch').' [PDF]'; + $link='benotungstool/verwaltung.php?lvid='.urlencode($lvid).$studiensem; + $text.=''.$p->t('lehre/benotungstoolHandbuch').' [PDF]'; } else { - if(isset($angezeigtes_stsem)) - $studiensem = '&stsem='.$angezeigtes_stsem; - else - $studiensem = ''; - - echo ' -
- '.$p->t('lehre/kreuzerltool').'
'; - + $link='benotungstool/studentenansicht.php?lvid='.urlencode($lvid).$studiensem; } } else { if($is_lector) { - echo ' -
- '.$p->t('lehre/kreuzerltool').'

- '.$p->t('lehre/benotungstoolHandbuch').' [PDF]'; + $link=''; + $text=''.$p->t('lehre/benotungstoolHandbuch').' [PDF]'; + $link_onclick='alert(\''.$p->t('lehre/kreuzerltoolMitMoodleInfo').'\');'; } } - echo''; + $menu[]=array + ( + 'id'=>'core_menu_uebungstool', + 'position'=>'60', + 'name'=>$p->t('lehre/kreuzerltool'), + 'icon'=>'../../../skin/images/button_kreuzerltool.png', + 'link'=>$link, + 'link_onclick'=>$link_onclick, + 'text'=>$text + ); } - checkZeilenUmbruch(); - //Moodle $showmoodle=false; + $link_target=''; + $link_onclick=''; + $text=''; + $link=''; + //Schauen ob Moodle fuer diesen Studiengang freigeschaltet ist $qry = "SELECT moodle FROM public.tbl_studiengang JOIN lehre.tbl_lehrveranstaltung USING(studiengang_kz) WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER); if($result = $db->db_query($qry)) { if($row = $db->db_fetch_object($result)) { - if($row->moodle=='t') + if($db->db_parse_bool($row->moodle)) { $showmoodle=true; } @@ -474,7 +371,6 @@ function checkZeilenUmbruch() lehreinheit_id IN(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem).")"; - if($result = $db->db_query($qry)) if($db->db_num_rows($result)>0) $showmoodle=false; @@ -491,9 +387,6 @@ function checkZeilenUmbruch() { if($showmoodle ) { - $eintraegeprozeile++; - echo ''; - $link = "moodle_choice.php?lvid=$lvid&stsem=$angezeigtes_stsem"; if(count($moodle->result)>0) { @@ -507,164 +400,110 @@ function checkZeilenUmbruch() else $link = "moodle_choice.php?lvid=$lvid&stsem=$angezeigtes_stsem"; } - else - { + else + { if(count($moodle->result)==1) { $link = $moodle->getPfad($moodle->result[0]->moodle_version).'course/view.php?id='.$moodle->result[0]->mdl_course_id; } else $link = "moodle_choice.php?lvid=$lvid&stsem=$angezeigtes_stsem"; - } - echo ' -
- '.$p->t('lehre/moodle').'

'; - } - else - { - echo '
- '.$p->t('lehre/moodle').'
'; - } + } + $link_target='_blank'; + } + else + { + $link=''; + } - if($is_lector && (!defined('CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT') || (defined('CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT))) - echo ' '.$p->t('lehre/moodleWartung').' -
'.$p->t('lehre/moodleHandbuch').''; - - echo ''; + if($is_lector && + (!defined('CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT') + || (defined('CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_MOODLE_LEKTOR_EDIT) + )) + { + $text.= ''.$p->t('lehre/moodleWartung').' +
'.$p->t('lehre/moodleHandbuch').''; + } } else { if($is_lector) { - $eintraegeprozeile++; - echo ''; - echo ' -
- '.$p->t('lehre/moodle').'

'; - echo ''; + $link=''; + $link_onclick='alert(\''.$p->t('lehre/moodleMitKreuzerltoolInfo').'\'); return false'; } } } - checkZeilenUmbruch(); + $menu[]=array + ( + 'id'=>'core_menu_moodle', + 'position'=>'70', + 'name'=>$p->t('lehre/moodle'), + 'icon'=>'../../../skin/images/button_moodle.png', + 'link'=>$link, + 'link_target'=>$link_target, + 'link_onclick'=>$link_onclick, + 'text'=>$text + ); //Gesamtnote if($is_lector && ((!defined('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN) && $angemeldet)) { - $eintraegeprozeile++; - echo ''; - echo ' -
- '.$p->t('lehre/gesamtnote').'

'; - echo ' - '; + $menu[]=array + ( + 'id'=>'core_menu_gesamtnote', + 'position'=>'80', + 'name'=>$p->t('lehre/gesamtnote'), + 'icon'=>'../../../skin/images/button_endnote.png', + 'link'=>'benotungstool/lvgesamtnoteverwalten.php?lvid='.urlencode($lvid).'&stsem='.urlencode($angezeigtes_stsem) + ); } - checkZeilenUmbruch(); - - + // Studentenupload if((!defined('CIS_LEHRVERANSTALTUNG_STUDENTENUPLOAD_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_STUDENTENUPLOAD_ANZEIGEN) && $angemeldet) { - //Studentenupload - $eintraegeprozeile++; - echo ''; - //Studentenabgabe - $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/upload'; + $link=''; + $link_target=''; - $dest_dir = @dir($dir_name); - if(!@is_dir($dest_dir->path)) - { - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester)); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))) - { - exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name))); - } - if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/upload')) - { - exec('mkdir -m 775 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/upload')); - exec('sudo chown www-data:student '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/upload')); - } - } - - if($dest_dir) - { - $dir_empty = true; - - while($entry = $dest_dir->read()) - { - if($entry != "." && $entry != "..") - { - $dir_empty = false; - - break; - } - } - } + ensureDirectoryExists($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'upload','student'); + $dir_empty = isDirectoryEmpty($DOC_ROOT, $kurzbz, $semester, $short_short_name, 'upload'); if(isset($dir_empty) && $dir_empty == false) { - if($is_lector > 0) + if($is_lector == true) { - $islector = true; + $link='lector_choice.php?lvid='.urlencode($lvid); + $link_target='_blank'; } else { - $islector = false; - } - - if($islector == true) - { - echo ""; - echo "
- ".$p->t('lehre/studentenAbgabe')." -
"; - } - else - { - echo ""; - echo "
- ".$p->t('lehre/studentenAbgabe')." -
"; + $link='upload.php?course_id='.urlencode($studiengang_kz).'&term_id='.urlencode($semester).'&short='.urlencode($short); + $link_target='_blank'; } } else { - if($is_lector > 0) + if($is_lector == true) { - $islector = true; + $link=''; } else { - $islector = false; - } - - if($islector == true) - { - echo "
- ".$p->t('lehre/studentenAbgabe').""; - } - else - { - echo ""; - echo "
- ".$p->t('lehre/studentenAbgabe')." -
"; + $link='upload.php?course_id='.urlencode($studiengang_kz).'&term_id='.urlencode($semester).'&short='.urlencode($short); + $link_target='_blank'; } } - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_studentenupload', + 'position'=>'90', + 'name'=>$p->t('lehre/studentenAbgabe'), + 'icon'=>'../../../skin/images/button_studiupload.png', + 'link'=>$link, + 'link_target'=>$link_target + ); } - checkZeilenUmbruch(); - if((!defined('CIS_LEHRVERANSTALTUNG_MAILSTUDIERENDE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_MAILSTUDIERENDE_ANZEIGEN) && $angemeldet) { // Email an Studierende @@ -701,33 +540,41 @@ function checkZeilenUmbruch() $mailto.=mb_strtolower($row->stg_typ.$row->stg_kurzbz.$row->semester.trim($row->verband).trim($row->gruppe).'@'.DOMAIN.$variable->variable->emailadressentrennzeichen); } } - if($nomail!='') - { - $nomail = 'onclick="alert(\''.$p->t('lehre/keinMailverteiler',array($nomail)).'\');"'; - } - $eintraegeprozeile++; - echo ''; - echo '
'.$p->t('lehre/mail').'
'; - echo ''; + if($nomail!='') + $link_onclick='alert(\''.$p->t('lehre/keinMailverteiler',array($nomail)).'\');'; + else + $link_onclick=''; + + $menu[]=array + ( + 'id'=>'core_menu_mailanstudierende', + 'position'=>'100', + 'name'=>$p->t('lehre/mail'), + 'icon'=>'../../../skin/images/button_feedback.png', + 'link'=>$mailto, + 'link_onclick'=>$link_onclick + ); } - checkZeilenUmbruch(); - + // Pinboard if((!defined('CIS_LEHRVERANSTALTUNG_PINBOARD_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_PINBOARD_ANZEIGEN) && $angemeldet) { - //Pinboard - $eintraegeprozeile++; - echo ''; - echo '
'; - echo "".$p->t('lehre/pinboard')."
"; - echo "".$p->t('global/anzeigen').""; + $text=''; if($is_lector) - echo "
".$p->t('profil/adminstration').""; - echo ''; - } + $text.= "".$p->t('profil/adminstration').""; - checkZeilenUmbruch(); + $menu[]=array + ( + 'id'=>'core_menu_pinboard', + 'position'=>'110', + 'name'=>$p->t('lehre/pinboard'), + 'icon'=>'../../../skin/images/button_pinboard.png', + 'link'=>'../../../cms/news.php?studiengang_kz='.urlencode($studiengang_kz).'&semester='.urlencode($semester), + 'text'=>$text + ); + + } if(!defined('CIS_LEHRVERANSTALTUNG_ABMELDUNG_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_ABMELDUNG_ANZEIGEN) { @@ -737,42 +584,150 @@ function checkZeilenUmbruch() $gruppen = $lvangebot->AbmeldungMoeglich($lvid, $angezeigtes_stsem, $user); if(count($gruppen)>0) { - //Abmelden von der Lehrveranstaltung - $eintraegeprozeile++; - echo ''; - echo ''; - echo '
'; + $menu[]=array + ( + 'id'=>'core_menu_abmeldung', + 'position'=>'120', + 'name'=>$p->t('lehre/abmelden'), + 'icon'=>'../../../skin/images/button_studiupload.png', + 'link'=>'abmeldung.php?lvid='.urlencode($lvid).'&stsem='.urlencode($angezeigtes_stsem), + ); - echo "".$p->t('lehre/abmelden')."

"; - echo ''; } } } //Anzeigen von zusaetzlichen Lehre-Tools - $lehretools = new lehre_tools(); if($lehretools->getTools($lvid, $angezeigtes_stsem)) { if(count($lehretools->result)>0) { - echo "\n\n"; foreach($lehretools->result as $row) { - echo "\n"; - echo ''; - echo ''; - if($row->logo_dms_id!='') - echo '
'; - - echo ' '.$row->bezeichnung[$sprache].''; - - if($row->logo_dms_id!='') - echo '
'; - echo ''; + $menu[]=array + ( + 'id'=>'core_menu_lehretools_'.$row->lehre_tools_id, + 'position'=>'1000', + 'name'=>$row->bezeichnung[$sprache], + 'icon'=>'../../../cms/dms.php?id='.$row->logo_dms_id, + 'link'=>$row->basis_url, + 'link_target'=>'_blank' + ); } } } + + +//************* Menuepunkte anzeigen **************** + + // Addons Menuepunkte laden + require_once(dirname(__FILE__).'/../addon.class.php'); + $addon_obj = new addon(); + if($addon_obj->loadAddons()) + { + if(count($addon_obj->result)>0) + { + foreach($addon_obj->result as $row) + { + if(file_exists(dirname(__FILE__).'/../../addons/'.$row->kurzbz.'/cis/menu_lv.inc.php')) + { + include(dirname(__FILE__).'/../../addons/'.$row->kurzbz.'/cis/menu_lv.inc.php'); + } + } + } + } + + // Menue sortieren + foreach ($menu as $key => $row) + $pos[$key] = $row['position']; + + array_multisort($pos, SORT_ASC, SORT_NUMERIC, $menu); + + //var_dump($menu); + + foreach($menu as $row) + { + checkZeilenUmbruch(); + $eintraegeprozeile++; + echo ''; + + if(isset($row['icon'])) + { + if(isset($row['link']) && $row['link']!='') + { + echo ''; + } + echo ''; + echo '
'; + if(isset($row['name'])) + echo ''.$row['name'].''; + if(isset($row['link']) && $row['link']!='') + echo '
'; + } + echo '
'; + if(isset($row['text'])) + echo $row['text']; + + echo ''; + } + +/** + * Prueft ob ein Verzeichnis vorhanden ist, wenn nicht wird das Verzeichnis + * erstellt und die Rechte gesetzt + */ +function ensureDirectoryExists($DOC_ROOT, $stg, $semester, $short_short_name, $type,$role) +{ + $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name).'/'.$type; + + $dest_dir = @dir($dir_name); + if(!@is_dir($dest_dir->path)) + { + if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($stg))) + { + exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg))); + exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg))); + } + if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester)) + { + exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester)); + exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester)); + } + if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name))) + { + exec('mkdir -m 755 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name))); + exec('sudo chown www-data:teacher '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name))); + } + if(!@is_dir(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name).'/'.$type)) + { + exec('mkdir -m 775 '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name).'/'.$type)); + exec('sudo chown www-data:'.$role.' '.escapeshellarg(DOC_ROOT.'/documents/'.mb_strtolower($stg).'/'.$semester.'/'.mb_strtolower($short_short_name).'/'.$type)); + } + } +} + +/** + * Prueft ob das Verzeichnis leer ist + * @return true wenn leer, false wenn nicht + */ +function isDirectoryEmpty($DOC_ROOT, $kurzbz, $semester, $short_short_name, $type) +{ + $dir_name=$DOC_ROOT.'/documents/'.mb_strtolower($kurzbz).'/'.$semester.'/'.mb_strtolower($short_short_name).'/'.$type; + $dest_dir = @dir($dir_name); + + if($dest_dir) + { + while($entry = $dest_dir->read()) + if($entry != "." && $entry != "..") + return false; + } + return true; +} ?> - + \ No newline at end of file