mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
CMS Modul Updates
News Modul Erstversion
This commit is contained in:
Executable
+63
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
*
|
||||
*/
|
||||
require_once('../config/cis.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/sprache.class.php');
|
||||
|
||||
if(isset($_GET['sprache']))
|
||||
{
|
||||
$sprache = new sprache();
|
||||
if($sprache->load($_GET['sprache']))
|
||||
setSprache($_GET['sprache']);
|
||||
else
|
||||
die('Sprache invalid');
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<title>Sprache Umschalten</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<link href="../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
|
||||
</head>
|
||||
<body>
|
||||
<table class="tabcontent">
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
<?php
|
||||
echo 'Aktuelle Sprache: '.getSprache();
|
||||
echo '<br><br>Sprache wechseln:';
|
||||
|
||||
$sprache = new sprache();
|
||||
$sprache->getAll(true);
|
||||
foreach($sprache->result as $row)
|
||||
{
|
||||
echo ' <a href="sprache.php?sprache='.$row->sprache.'" title="'.$row->sprache.'"><img src="../cms/image.php?src=flag&sprache='.$row->sprache.'" alt="'.$row->sprache.'"></a>';
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
+28
-8
@@ -63,6 +63,7 @@ $berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
|
||||
{
|
||||
mode : "textareas",
|
||||
theme : "advanced",
|
||||
language : "de",
|
||||
file_browser_callback: "FHCFileBrowser",
|
||||
|
||||
plugins : "spellchecker,pagebreak,style,layer,table,advhr,advimage,advlink,inlinepopups,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras",
|
||||
@@ -113,6 +114,7 @@ $action = isset($_GET['action'])?$_GET['action']:'';
|
||||
$method = isset($_GET['method'])?$_GET['method']:null;
|
||||
$message = '';
|
||||
$submenu_depth=0;
|
||||
$datum_obj = new datum();
|
||||
|
||||
//Inhalt Speichern
|
||||
if(isset($_POST['XSDFormPrinter_XML']))
|
||||
@@ -191,9 +193,14 @@ if(!is_null($method))
|
||||
|
||||
if($content->save())
|
||||
{
|
||||
$message .= '<span class="ok">Eintrag wurde erfolgreich angelegt</span>';
|
||||
$action='prefs';
|
||||
$content_id=$content->content_id;
|
||||
if($content->saveContentSprache())
|
||||
{
|
||||
$message .= '<span class="ok">Eintrag wurde erfolgreich angelegt</span>';
|
||||
$action='prefs';
|
||||
$content_id=$content->content_id;
|
||||
}
|
||||
else
|
||||
$message .= '<span class="error">'.$content->errormsg.'</span>';
|
||||
}
|
||||
else
|
||||
$message .= '<span class="error">'.$content->errormsg.'</span>';
|
||||
@@ -328,7 +335,12 @@ if(!is_null($method))
|
||||
$content->updatevon=$user;
|
||||
|
||||
if($content->save())
|
||||
$message.='<span class="ok">Daten erfolgreich gespeichert</span>';
|
||||
{
|
||||
if($content->saveContentSprache())
|
||||
$message.='<span class="ok">Daten erfolgreich gespeichert</span>';
|
||||
else
|
||||
$message.='<span class="error">'.$content->errormsg.'</span>';
|
||||
}
|
||||
else
|
||||
$message.='<span class="error">'.$content->errormsg.'</span>';
|
||||
}
|
||||
@@ -608,8 +620,16 @@ else
|
||||
$menu='content';
|
||||
}
|
||||
|
||||
$rootcontent = new content();
|
||||
$rootcontent->getRootContent();
|
||||
if($menu=='news')
|
||||
{
|
||||
$rootcontent = new content();
|
||||
$rootcontent->getNews();
|
||||
}
|
||||
else
|
||||
{
|
||||
$rootcontent = new content();
|
||||
$rootcontent->getRootContent();
|
||||
}
|
||||
|
||||
foreach($rootcontent->result as $row)
|
||||
{
|
||||
@@ -626,7 +646,7 @@ foreach($rootcontent->result as $row)
|
||||
if($content->template_kurzbz=='news')
|
||||
{
|
||||
$output.= '<td>';
|
||||
$output.= drawmenulink($row->content_id, $content->titel.' '.$content->insertamum, $content->oe_kurzbz);
|
||||
$output.= drawmenulink($row->content_id, mb_substr($content->titel,0,15).' '.$datum_obj->formatDatum($content->insertamum,'d.m.Y'), $content->oe_kurzbz);
|
||||
|
||||
$output.= '</td>';
|
||||
}
|
||||
@@ -653,7 +673,7 @@ echo '</table>';
|
||||
echo '</td><td valign="top">';
|
||||
|
||||
//Editieren
|
||||
if(!is_null($content_id))
|
||||
if(!is_null($content_id) && $content_id!='')
|
||||
{
|
||||
echo '<h2>Content ID: '.$content_id.' | Version:'.$version.' | Sprache:'.$sprache.'</h2>';
|
||||
$content = new content();
|
||||
|
||||
+4
-4
@@ -25,16 +25,16 @@ require_once('../include/dms.class.php');
|
||||
if(!isset($_GET['id']))
|
||||
die('ID muss uebergeben werden');
|
||||
|
||||
if(!isset($_GET['version']))
|
||||
die('Version muss uebergeben werden');
|
||||
//if(!isset($_GET['version']))
|
||||
// die('Version muss uebergeben werden');
|
||||
|
||||
$id = $_GET['id'];
|
||||
$version = $_GET['version'];
|
||||
$version = isset($_GET['version'])?$_GET['version']:null;
|
||||
|
||||
if(!is_numeric($id))
|
||||
die('ID ist ungueltig');
|
||||
|
||||
if(!is_numeric($version))
|
||||
if($version!='' && !is_numeric($version))
|
||||
die('Version ist ungueltig');
|
||||
|
||||
$doc = new dms();
|
||||
|
||||
+234
-17
@@ -20,36 +20,70 @@
|
||||
* Karl Burkhart <karl.burkhart@technikum-wien.at>.
|
||||
*/
|
||||
/**
|
||||
* Laedt den Content und das zugeordnete Template aus der Datenbank und
|
||||
* zeigt diese an.
|
||||
* Laedt die News und zeigt diese an
|
||||
*
|
||||
* Wenn kein Parameter uebergeben wird, werden nur die allgemeinen News angezeigt
|
||||
* Wenn ein Studiengang uebergeben wird, werden rechts neben den News Studiengangsdetails angezeigt
|
||||
*
|
||||
* Parameter:
|
||||
* stg_kz Studiengangskennzahl
|
||||
* semester Semester
|
||||
* edit Edit Buttons anzeigen
|
||||
*
|
||||
*/
|
||||
require_once('../config/cis.config.inc.php');
|
||||
require_once('../include/content.class.php');
|
||||
require_once('../include/template.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/news.class.php');
|
||||
require_once('../include/kontakt.class.php');
|
||||
require_once('../include/benutzerfunktion.class.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/mitarbeiter.class.php');
|
||||
require_once('../include/datum.class.php');
|
||||
require_once('../include/phrasen.class.php');
|
||||
|
||||
$version = (isset($_GET['version'])?$_GET['version']:null);
|
||||
$sprache = (isset($_GET['sprache'])?$_GET['sprache']:getSprache());
|
||||
$sichtbar = !isset($_GET['sichtbar']);
|
||||
$sprache = getSprache();
|
||||
|
||||
$datum_obj = new datum();
|
||||
//XML Content laden
|
||||
$content = new content();
|
||||
$db = new basis_db();
|
||||
|
||||
$studiengang_kz = (isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:0);
|
||||
$semester = (isset($_GET['semester'])?$_GET['semester']:null);
|
||||
|
||||
$qry = "SELECT content FROM campus.tbl_content JOIN campus.tbl_contentsprache USING(content_id) WHERE tbl_content.template_kurzbz='news'";
|
||||
$content = '<?xml version="1.0" encoding="UTF-8"?><content>';
|
||||
if($result = $db->db_query($qry))
|
||||
$editable = isset($_GET['edit']);
|
||||
$news = new news();
|
||||
|
||||
$news->getnews(MAXNEWSALTER, $studiengang_kz, $semester, false, null, MAXNEWS);
|
||||
|
||||
$xml = '<?xml version="1.0" encoding="UTF-8"?><content>';
|
||||
|
||||
foreach($news->result as $row)
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$content .=$row->content;
|
||||
}
|
||||
$content = new content();
|
||||
$content->getContent($row->content_id, $sprache,null, true, true);
|
||||
|
||||
//das Datum des News Eintrages ist nicht im XML enthalten, es muss extra hinzugefuegt werden
|
||||
$datum = '<datum><![CDATA['.$datum_obj->formatDatum($row->datum,'d.m.Y').']]></datum>';
|
||||
|
||||
//Wenn der Parameter edit uebergeben wird, dann wird neben dem Datum ein Link zum Editieren des Eintrags angezeigt
|
||||
if($editable)
|
||||
$id = '<news_id><![CDATA['.$row->news_id.']]></news_id>';
|
||||
else
|
||||
$id='';
|
||||
$xml .= mb_substr($content->content,0,mb_strlen($content->content)-7).$datum.$id.mb_substr($content->content,-7);
|
||||
//$xml .= $content->content;
|
||||
}
|
||||
$content .= '</content>';
|
||||
//echo $content;
|
||||
$XML = new DOMDocument();
|
||||
$XML->loadXML($content);
|
||||
|
||||
if($studiengang_kz!=0)
|
||||
$xml.=getStgContent($studiengang_kz, $semester, $sprache);
|
||||
|
||||
$xml .= '</content>';
|
||||
|
||||
$doc = new DOMDocument();
|
||||
$doc->loadXML($xml);
|
||||
|
||||
//XSLT Vorlage laden
|
||||
$template = new template();
|
||||
@@ -63,5 +97,188 @@ $xsltemplate->loadXML($template->xslt_xhtml);
|
||||
$processor = new XSLTProcessor();
|
||||
$processor->importStylesheet($xsltemplate);
|
||||
|
||||
echo $processor->transformToXML($XML);
|
||||
echo $processor->transformToXML($doc);
|
||||
|
||||
/**
|
||||
* Liefert ein XML mit den Details eines Studiengangs
|
||||
* welche dann neben den News angezeigt werden
|
||||
*
|
||||
* @param $studiengang_kz
|
||||
* @param $semester
|
||||
* @param $sprache
|
||||
*/
|
||||
function getStgContent($studiengang_kz, $semester, $sprache)
|
||||
{
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
$xml = '<stg_extras>';
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($studiengang_kz);
|
||||
|
||||
|
||||
//Studiengangsleitung
|
||||
$stg_oe_obj = new studiengang();
|
||||
$stgl = $stg_oe_obj->getLeitung($studiengang_kz);
|
||||
$xml.='<stg_header><![CDATA['.$p->t('global/studiengangsmanagement').']]></stg_header>';
|
||||
$xml.='<stg_ltg_name><![CDATA['.$p->t('global/studiengangsleitung').']]></stg_ltg_name>';
|
||||
if(count($stgl)>0)
|
||||
{
|
||||
foreach ($stgl as $uid)
|
||||
{
|
||||
$row_course_leader = new mitarbeiter($uid);
|
||||
$xml.='<stg_ltg>';
|
||||
$xml.='<name><![CDATA['.$row_course_leader->titelpre.' '.$row_course_leader->vorname.' '.$row_course_leader->nachname.' '.$row_course_leader->titelpost.']]></name>';
|
||||
|
||||
if(isset($row_course_leader) && $row_course_leader->uid != "")
|
||||
{
|
||||
$xml.='<email><![CDATA['.$row_course_leader->uid.'@'.DOMAIN.']]></email>';
|
||||
}
|
||||
|
||||
if(isset($row_course_leader) && $row_course_leader->telefonklappe != "")
|
||||
{
|
||||
$hauptnummer='';
|
||||
|
||||
if($row_course_leader->standort_id!='')
|
||||
{
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
|
||||
$hauptnummer = $kontakt->kontakt;
|
||||
}
|
||||
|
||||
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$row_course_leader->telefonklappe.']]></telefon>';
|
||||
}
|
||||
$xml.='</stg_ltg>';
|
||||
}
|
||||
}
|
||||
|
||||
//geschaeftsf. Leitung auselesen
|
||||
$xml.='<gf_ltg_name><![CDATA['.$p->t('global/geschaeftsfuehrendeltg').']]></gf_ltg_name>';
|
||||
$benutzerfkt = new benutzerfunktion();
|
||||
$benutzerfkt->getBenutzerFunktionen('gLtg', $studiengang->oe_kurzbz);
|
||||
foreach($benutzerfkt->result as $row)
|
||||
{
|
||||
$ma = new mitarbeiter();
|
||||
$ma->load($row->uid);
|
||||
|
||||
if($ma->uid!='')
|
||||
{
|
||||
$xml.='<gf_ltg>';
|
||||
|
||||
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
|
||||
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
|
||||
|
||||
if($ma->telefonklappe != '')
|
||||
{
|
||||
if($ma->standort_id!='')
|
||||
{
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
|
||||
$hauptnummer = $kontakt->kontakt;
|
||||
}
|
||||
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
|
||||
}
|
||||
|
||||
$xml.='</gf_ltg>';
|
||||
}
|
||||
}
|
||||
|
||||
//Studiengangsleiter Stellvertreter auselesen
|
||||
$benutzerfkt = new benutzerfunktion();
|
||||
$benutzerfkt->getBenutzerFunktionen('stvLtg', $studiengang->oe_kurzbz);
|
||||
$xml.='<stv_ltg_name><![CDATA['.$p->t('global/stellvertreter').']]></stv_ltg_name>';
|
||||
foreach($benutzerfkt->result as $row)
|
||||
{
|
||||
$ma = new mitarbeiter();
|
||||
$ma->load($row->uid);
|
||||
|
||||
if($ma->uid!='')
|
||||
{
|
||||
$xml.='<stv_ltg>';
|
||||
|
||||
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
|
||||
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
|
||||
|
||||
if($ma->telefonklappe != '')
|
||||
{
|
||||
if($ma->standort_id!='')
|
||||
{
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
|
||||
$hauptnummer = $kontakt->kontakt;
|
||||
}
|
||||
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
|
||||
}
|
||||
|
||||
$xml.='</stv_ltg>';
|
||||
}
|
||||
}
|
||||
|
||||
//Assistenz
|
||||
$benutzerfkt = new benutzerfunktion();
|
||||
$benutzerfkt->getBenutzerFunktionen('ass', $studiengang->oe_kurzbz);
|
||||
$xml.='<ass_name><![CDATA['.$p->t('global/sekretariat').']]></ass_name>';
|
||||
foreach($benutzerfkt->result as $row)
|
||||
{
|
||||
$ma = new mitarbeiter();
|
||||
$ma->load($row->uid);
|
||||
|
||||
if($ma->uid!='')
|
||||
{
|
||||
$xml.='<ass>';
|
||||
|
||||
$xml.='<name><![CDATA['.$ma->titelpre.' '.$ma->vorname.' '.$ma->nachname.' '.$ma->titelpost.']]></name>';
|
||||
$xml.='<email><![CDATA['.$ma->uid.'@'.DOMAIN.']]></email>';
|
||||
|
||||
if($ma->telefonklappe != '')
|
||||
{
|
||||
if($ma->standort_id!='')
|
||||
{
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->loadFirmaKontakttyp($row_course_leader->standort_id, 'telefon');
|
||||
$hauptnummer = $kontakt->kontakt;
|
||||
}
|
||||
$xml.= '<telefon><![CDATA['.$hauptnummer.' - '.$ma->telefonklappe.']]></telefon>';
|
||||
}
|
||||
|
||||
$xml.='</ass>';
|
||||
}
|
||||
}
|
||||
|
||||
//Zusatzinfo (Oeffnungszeiten etc)
|
||||
$xml.='<zusatzinfo><![CDATA['.$studiengang->zusatzinfo_html.']]></zusatzinfo>';
|
||||
|
||||
|
||||
//Studentenvertreter
|
||||
$benutzerfkt = new benutzerfunktion();
|
||||
$benutzerfkt->getBenutzerFunktionen('stdv', $studiengang->oe_kurzbz);
|
||||
$xml.='<stdv_name><![CDATA['.$p->t('global/studentenvertreter').']]></stdv_name>';
|
||||
foreach($benutzerfkt->result as $row)
|
||||
{
|
||||
$bn = new benutzer();
|
||||
$bn->load($row->uid);
|
||||
|
||||
if($bn->uid!='')
|
||||
{
|
||||
$xml.='<stdv>';
|
||||
$xml.='<name><![CDATA['.$bn->titelpre.' '.$bn->vorname.' '.$bn->nachname.' '.$bn->titelpost.']]></name>';
|
||||
$xml.='<email><![CDATA['.$bn->uid.'@'.DOMAIN.']]></email>';
|
||||
$xml.='</stdv>';
|
||||
}
|
||||
}
|
||||
|
||||
if(CIS_EXT_MENU)
|
||||
{
|
||||
$xml.='<cis_ext_menu>
|
||||
<lehrziele_name><![CDATA['.$p->t('global/lehrziele').']]></lehrziele_name>
|
||||
<download_name><![CDATA['.$p->t('global/allgemeinerdownload').']]></download_name>
|
||||
<newsgroup_name><![CDATA['.$p->t('global/newsgroups').']]></newsgroup_name>
|
||||
<kurzbz><![CDATA['.strtolower($studiengang->kuerzel).']]></kurzbz>
|
||||
<kurzbzlang><![CDATA['.strtolower($studiengang->kurzbzlang).']]></kurzbzlang>
|
||||
</cis_ext_menu>';
|
||||
}
|
||||
|
||||
$xml.='</stg_extras>';
|
||||
return $xml;
|
||||
}
|
||||
?>
|
||||
Executable
+439
@@ -0,0 +1,439 @@
|
||||
<?php
|
||||
/* Copyright (C) 2011 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
*/
|
||||
require_once('../config/cis.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/news.class.php');
|
||||
require_once('../include/content.class.php');
|
||||
require_once('../include/phrasen.class.php');
|
||||
require_once('../include/studiengang.class.php');
|
||||
require_once('../include/datum.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$sprache = getSprache();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/news'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if(isset($_GET['studiengang_kz']))
|
||||
$studiengang_kz=$_GET['studiengang_kz'];
|
||||
else
|
||||
$studiengang_kz='0';
|
||||
|
||||
if(isset($_GET['semester']))
|
||||
$semester = $_GET['semester'];
|
||||
else
|
||||
$semester = null;
|
||||
|
||||
$news_id = (isset($_REQUEST['news_id'])?$_REQUEST['news_id']:null);
|
||||
$datum_obj = new datum();
|
||||
//ToDo: markieren des richtigen Tabs
|
||||
$tabselect=0;
|
||||
$content = new content();
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
||||
"http://www.w3.org/TR/html4/strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../skin/styles/jquery.css" type="text/css">
|
||||
<link rel="stylesheet" href="../skin/styles/jquery-ui.css" type="text/css">
|
||||
|
||||
<script src="../include/js/jquery.js" type="text/javascript"></script>
|
||||
<script src="../include/js/jquery-ui.js" type="text/javascript"></script>
|
||||
<script type="text/javascript" src="../include/tiny_mce/tiny_mce.js"></script>
|
||||
|
||||
<title>'.$p->t('news/newsverwaltung').'</title>
|
||||
<script language="Javascript">
|
||||
$(document).ready(function() {
|
||||
$("#tabs").tabs();
|
||||
$( "#tabs" ).tabs( "option", "selected", '.$tabselect.');
|
||||
})
|
||||
|
||||
|
||||
tinyMCE.init
|
||||
(
|
||||
{
|
||||
mode : "textareas",
|
||||
theme : "advanced",
|
||||
language : "de",
|
||||
file_browser_callback: "FHCFileBrowser",
|
||||
|
||||
plugins : "spellchecker,pagebreak,style,layer,table,advhr,advimage,advlink,inlinepopups,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras",
|
||||
|
||||
// Theme options
|
||||
theme_advanced_buttons1 : "bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,link,unlink,image,|,bullist,formatselect,fontsizeselect",
|
||||
theme_advanced_buttons2 : "",
|
||||
theme_advanced_buttons3 : "",
|
||||
theme_advanced_toolbar_location : "top",
|
||||
theme_advanced_toolbar_align : "center",
|
||||
theme_advanced_statusbar_location : "bottom",
|
||||
theme_advanced_resizing : true,
|
||||
force_br_newlines : true,
|
||||
force_p_newlines : false,
|
||||
forced_root_block : ""
|
||||
|
||||
}
|
||||
);
|
||||
function FHCFileBrowser(field_name, url, type, win)
|
||||
{
|
||||
cmsURL = "'.APP_ROOT.'cms/tinymce_dms.php?type="+type;
|
||||
tinyMCE.activeEditor.windowManager.open({
|
||||
file: cmsURL,
|
||||
title : "FHComplete File Browser",
|
||||
width: 750,
|
||||
height: 550,
|
||||
resizable: "yes",
|
||||
close_previous: "no",
|
||||
scrollbars: "yes",
|
||||
popup_css : false
|
||||
},{
|
||||
window: win,
|
||||
input: field_name
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>';
|
||||
if(isset($_GET['action']) && $_GET['action']=='add_uebersetzung')
|
||||
{
|
||||
$news = new news();
|
||||
$news->load($_GET['news_id']);
|
||||
|
||||
$content = new content();
|
||||
$content->getContent($news->content_id);
|
||||
|
||||
$content->new = true;
|
||||
$content->sichtbar=true;
|
||||
$content->sprache=$_GET['lang'];
|
||||
$content->insertvon = $uid;
|
||||
$content->insertamum = date('Y-m-d H:i:s');
|
||||
$content->updatevon = $uid;
|
||||
$content->updateamum = date('Y-m-d H:i:s');
|
||||
$content->reviewvon='';
|
||||
$content->reviewamum='';
|
||||
$content->gesperrt_uid='';
|
||||
|
||||
if($content->saveContentSprache())
|
||||
echo '<span class="ok">Eintrag wurde erfolgreich angelegt</span>';
|
||||
else
|
||||
echo '<span class="ok">'.$content->errormsg.'</span>';
|
||||
}
|
||||
|
||||
if(isset($_GET['action']) && $_GET['action']=='delete')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('basis/news',null, 'suid'))
|
||||
die('Sie haben keine Berechtigung zum Löschen von Einträgen');
|
||||
|
||||
if(isset($_GET['news_id']) && is_numeric($_GET['news_id']))
|
||||
{
|
||||
$news_id = $_GET['news_id'];
|
||||
$news = new news();
|
||||
if($news->delete($news_id))
|
||||
{
|
||||
echo '<span class="ok">News wurde erfolgreich gelöscht</span>';
|
||||
$news_id='';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$news->errormsg.'</span>';
|
||||
}
|
||||
}
|
||||
else
|
||||
die('NewsID ist ungueltig');
|
||||
|
||||
|
||||
}
|
||||
|
||||
if(isset($_POST['save']))
|
||||
{
|
||||
$news_id = $_POST['news_id'];
|
||||
|
||||
$news = new news();
|
||||
|
||||
if($news_id!='')
|
||||
{
|
||||
$news->load($news_id);
|
||||
$news->new=false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$news->new = true;
|
||||
$news->uid = $uid;
|
||||
$news->insertamum = date('Y-m-d H:i:s');
|
||||
$news->insertvon = $uid;
|
||||
}
|
||||
$news->studiengang_kz=$_POST['studiengang_kz'];
|
||||
$news->semester = $_POST['semester'];
|
||||
$news->updateamum=date('Y-m-d H:i:s');
|
||||
$news->updatevon = $uid;
|
||||
$news->datum = $datum_obj->formatDatum($_POST['datum'],'Y-m-d');
|
||||
$news->datum_bis = $datum_obj->formatDatum($_POST['datum_bis'],'Y-m-d');
|
||||
|
||||
if($news->content_id=='')
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->load($_POST['studiengang_kz']);
|
||||
|
||||
$content = new content();
|
||||
$content->template_kurzbz='news';
|
||||
$content->oe_kurzbz=$studiengang->oe_kurzbz;
|
||||
$content->aktiv=true;
|
||||
$content->menu_open=false;
|
||||
$content->insertamum=date('Y-m-d H:i:s');
|
||||
$content->insertvon = $uid;
|
||||
if(!$content->save(true))
|
||||
die($content->errormsg);
|
||||
|
||||
$news->content_id = $content->content_id;
|
||||
}
|
||||
|
||||
if(!$news->save())
|
||||
die($news->errormsg);
|
||||
$news_id = $news->news_id;
|
||||
|
||||
//ContentSprache
|
||||
$sprachen = array(DEFAULT_LANGUAGE);
|
||||
foreach($_POST as $key=>$value)
|
||||
if(mb_strstr($key,'contentsprache_id_'))
|
||||
$sprachen[] = mb_substr($key, strlen('contentsprache_id_'));
|
||||
|
||||
$sprachen = array_unique($sprachen);
|
||||
|
||||
foreach($sprachen as $lang)
|
||||
{
|
||||
$content = new content();
|
||||
if(isset($_POST['contentsprache_id_'.$lang]) && $_POST['contentsprache_id_'.$lang]!='')
|
||||
{
|
||||
$content->loadContentSprache($_POST['contentsprache_id_'.$lang]);
|
||||
$content->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$content->insertamum = date('Y-m-d H:i:s');
|
||||
$content->insertvon = $uid;
|
||||
$content->sichtbar=true;
|
||||
$content->version=1;
|
||||
$content->content_id=$news->content_id;
|
||||
$content->new = true;
|
||||
$content->sprache = $lang;
|
||||
}
|
||||
|
||||
$xml = '<news>';
|
||||
$xml.='<verfasser><![CDATA['.$_POST['verfasser_'.$lang].']]></verfasser>';
|
||||
$xml.='<betreff><![CDATA['.$_POST['betreff_'.$lang].']]></betreff>';
|
||||
$xml.='<text><![CDATA['.$_POST['text_'.$lang].']]></text>';
|
||||
$xml.='</news>';
|
||||
|
||||
$content->content = $xml;
|
||||
$content->updateamum = date('Y-m-d H:i:s');
|
||||
$content->updatevon = $uid;
|
||||
$content->titel = $_POST['betreff_'.$lang];
|
||||
$content->saveContentSprache();
|
||||
}
|
||||
}
|
||||
|
||||
$sprachen = array(DEFAULT_LANGUAGE);
|
||||
|
||||
$news = new news();
|
||||
if($news_id!='')
|
||||
{
|
||||
$news->load($news_id);
|
||||
$sprachen = $content->getLanguages($news->content_id);
|
||||
$studiengang_kz = $news->studiengang_kz;
|
||||
$semester = $news->semester;
|
||||
}
|
||||
if($studiengang_kz=='0' && $semester=='')
|
||||
$type=$p->t('news/allgemein');
|
||||
elseif($studiengang_kz=='0' && $semester=='0')
|
||||
$type=$p->t('news/freifach');
|
||||
else
|
||||
$type=$p->t('news/studiengang');
|
||||
|
||||
echo '<h1>'.$p->t('news/newsverwaltung').' - '.$type.'</h1>';
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
<input type="hidden" name="news_id" value="'.$news_id.'">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<table>
|
||||
<tr>
|
||||
<td>'.$p->t('news/sichtbarab').'</td>
|
||||
<td><input type="text" name="datum" size="10" value="'.($news->datum!=''?$datum_obj->formatDatum($news->datum,'d.m.Y'):date('d.m.Y')).'"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>'.$p->t('news/sichtbarbis').'</td>
|
||||
<td><input type="text" name="datum_bis" size="10" value="'.$datum_obj->formatDatum($news->datum_bis,'d.m.Y').'"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td>';
|
||||
|
||||
//DropDown fuer Studiengang und Semester anzeigen
|
||||
if($studiengang_kz!='0')
|
||||
{
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll('typ, kurzbz', false);
|
||||
|
||||
echo '<table>
|
||||
<tr>
|
||||
<td>'.$p->t('global/studiengang').'</td>
|
||||
<td>
|
||||
<SELECT name="studiengang_kz">';
|
||||
foreach($studiengang->result as $row)
|
||||
{
|
||||
if($row->studiengang_kz==$studiengang_kz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
echo '<OPTION value="'.$row->studiengang_kz.'" '.$selected.'>'.$row->kuerzel.' ('.$row->kurzbzlang.')</OPTION>';
|
||||
}
|
||||
echo ' </SELECT>
|
||||
</td>
|
||||
</tr>';
|
||||
|
||||
echo '<tr>
|
||||
<td>'.$p->t('global/semester').'</td>
|
||||
<td>
|
||||
<SELECT name="semester">';
|
||||
echo '<OPTION value="0">'.$p->t('news/allesemester').'</OPTION>';
|
||||
for($i=1;$i<=8;$i++)
|
||||
{
|
||||
if($i==$semester)
|
||||
$selected='selected';
|
||||
else
|
||||
$selected='';
|
||||
|
||||
echo '<OPTION value="'.$i.'" '.$selected.'>'.$p->t('news/xsemester',array($i)).'</OPTION>';
|
||||
}
|
||||
echo '</SELECT>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<input type="hidden" name="studiengang_kz" value="'.$studiengang_kz.'">
|
||||
<input type="hidden" name="semester" value="'.$semester.'">';
|
||||
}
|
||||
|
||||
echo '</td></tr></table>';
|
||||
echo '<div id="tabs" style="font-size:80%;">
|
||||
<ul class="css-tabs">';
|
||||
|
||||
foreach($sprachen as $lang)
|
||||
{
|
||||
echo '<li><a href="#'.$lang.'">'.$lang.'</a></li>';
|
||||
}
|
||||
if($news->content_id!='')
|
||||
{
|
||||
echo '<li><a href="#add" title="'.$p->t('news/uebersetzen').'">+</a></li>';
|
||||
}
|
||||
echo '</ul>';
|
||||
|
||||
foreach($sprachen as $lang)
|
||||
{
|
||||
$verfasser='';
|
||||
$betreff='';
|
||||
$text='';
|
||||
if($news->content_id!='')
|
||||
{
|
||||
$content->getContent($news->content_id, $lang, null, null, false);
|
||||
|
||||
$xml_inhalt = new DOMDocument();
|
||||
if($content->content!='')
|
||||
{
|
||||
$xml_inhalt->loadXML($content->content);
|
||||
}
|
||||
|
||||
if($xml_inhalt->getElementsByTagName('verfasser')->item(0))
|
||||
$verfasser = $xml_inhalt->getElementsByTagName('verfasser')->item(0)->nodeValue;
|
||||
if($xml_inhalt->getElementsByTagName('betreff')->item(0))
|
||||
$betreff = $xml_inhalt->getElementsByTagName('betreff')->item(0)->nodeValue;
|
||||
if($xml_inhalt->getElementsByTagName('text')->item(0))
|
||||
$text = $xml_inhalt->getElementsByTagName('text')->item(0)->nodeValue;
|
||||
}
|
||||
echo '<div id="'.$lang.'">';
|
||||
echo '<input type="hidden" name="contentsprache_id_'.$lang.'" value="'.$content->contentsprache_id.'">';
|
||||
echo '<table>
|
||||
<tr>
|
||||
<td>'.$p->t('news/verfasser').'</td>
|
||||
<td><input type="text" name="verfasser_'.$lang.'" size="40" value="'.$verfasser.'"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>'.$p->t('news/betreff').'</td>
|
||||
<td><input type="text" name="betreff_'.$lang.'" size="40" value="'.$betreff.'"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>'.$p->t('news/text').'</td>
|
||||
<td><textarea name="text_'.$lang.'" rows="15" cols="80">'.$text.'</textarea></td>
|
||||
</tr>
|
||||
</table>';
|
||||
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
//DropDown zum Anlegen von Uebersetzungen
|
||||
if($news->content_id!='')
|
||||
{
|
||||
echo '<div id="add">';
|
||||
$content = new content();
|
||||
if(!$vorhandene_sprachen = $content->getLanguages($news->content_id))
|
||||
die($content->errormsg);
|
||||
$sprache_obj = new sprache();
|
||||
$sprache_obj->getAll(true);
|
||||
|
||||
//Wenn noch nicht alle Uebersetzungen vorhanden sind,
|
||||
//wird ein Formular zum Erstellen der Uebersetzung angezeigt.
|
||||
if(count($vorhandene_sprachen)<count($sprache_obj->result))
|
||||
{
|
||||
|
||||
echo $p->t('news/uebersetzunganlegen');
|
||||
foreach($sprache_obj->result as $row)
|
||||
{
|
||||
if(!in_array($row->sprache, $vorhandene_sprachen))
|
||||
echo '<br /><a href="'.$_SERVER['PHP_SELF'].'?news_id='.$news_id.'&action=add_uebersetzung&lang='.$row->sprache.'">'.$row->bezeichnung_arr[$sprache].'</a>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<br />'.$p->t('news/uebersetzungenvorhanden').'<br />';
|
||||
}
|
||||
echo ' </div>';
|
||||
}
|
||||
echo '</div><br />';
|
||||
echo '<input type="submit" name="save" value="'.$p->t('global/speichern').'">';
|
||||
echo '</form>';
|
||||
|
||||
// Newseintraege Anzeigen
|
||||
echo '<hr>
|
||||
<iframe src="news.php?studiengang_kz='.$studiengang_kz.'&semester='.$semester.'&edit=true" style="width:99%; height:100%;position:absolute;">';
|
||||
echo '</body>
|
||||
</html>';
|
||||
?>
|
||||
@@ -1256,13 +1256,13 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
|
||||
{
|
||||
return $token;
|
||||
}
|
||||
// If it's a string (of maximum 255 characters)
|
||||
elseif (ereg("^\"[^\"]{0,255}\"$",$token))
|
||||
// If it's a string (of maximum 255 characters)
|
||||
elseif (preg_match("/^\"[^\"]{0,255}\"$/",$token))
|
||||
{
|
||||
return $token;
|
||||
}
|
||||
// if it's a function call
|
||||
elseif (eregi("^[A-Z0-9\xc0-\xdc\.]+$",$token) and ($this->_lookahead == "("))
|
||||
elseif (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/i",$token) and ($this->_lookahead == "("))
|
||||
{
|
||||
return $token;
|
||||
}
|
||||
@@ -1362,7 +1362,7 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
|
||||
function _expression()
|
||||
{
|
||||
// If it's a string return a string node
|
||||
if (ereg("^\"[^\"]{0,255}\"$", $this->_current_token)) {
|
||||
if (preg_match("/^\"[^\"]{0,255}\"$/", $this->_current_token)) {
|
||||
$result = $this->_createTree($this->_current_token, '', '');
|
||||
$this->_advance();
|
||||
return $result;
|
||||
|
||||
+48
-18
@@ -393,16 +393,7 @@ class content extends basis_db
|
||||
$this->addslashes($this->insertvon).','.
|
||||
$this->addslashes($this->insertamum).','.
|
||||
($this->aktiv?'true':'false').','.
|
||||
($this->menu_open?'true':'false').');'.
|
||||
'INSERT INTO campus.tbl_contentsprache(content, sprache, content_id, version, sichtbar, insertamum, insertvon, titel) VALUES('.
|
||||
$this->addslashes($this->content).','.
|
||||
$this->addslashes($this->sprache).','.
|
||||
"currval('campus.seq_content_content_id'),".
|
||||
$this->addslashes($this->version).','.
|
||||
($this->sichtbar?'true':'false').','.
|
||||
$this->addslashes($this->insertamum).','.
|
||||
$this->addslashes($this->insertvon).','.
|
||||
$this->addslashes($this->titel).');';
|
||||
($this->menu_open?'true':'false').');';
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -413,24 +404,19 @@ class content extends basis_db
|
||||
" oe_kurzbz=".$this->addslashes($this->oe_kurzbz).','.
|
||||
" aktiv=".($this->aktiv?'true':'false').','.
|
||||
" menu_open=".($this->menu_open?'true':'false').
|
||||
" WHERE content_id='".addslashes($this->content_id)."';".
|
||||
"UPDATE campus.tbl_contentsprache SET ".
|
||||
" titel=".($this->addslashes($this->titel)).','.
|
||||
" sichtbar=".($this->sichtbar?'true':'false').
|
||||
" WHERE contentsprache_id='".addslashes($this->contentsprache_id)."';";
|
||||
" WHERE content_id='".addslashes($this->content_id)."';";
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($new)
|
||||
{
|
||||
$qry = "SELECT currval('campus.seq_content_content_id') as content_id, currval('campus.seq_contentsprache') as contentsprache_id";
|
||||
$qry = "SELECT currval('campus.seq_content_content_id') as content_id";
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->content_id = $row->content_id;
|
||||
$this->contentsprache_id = $row->contentsprache_id;
|
||||
$this->db_query('COMMIT;');
|
||||
return true;
|
||||
}
|
||||
@@ -688,7 +674,9 @@ class content extends basis_db
|
||||
FROM
|
||||
campus.tbl_content
|
||||
LEFT JOIN campus.tbl_contentchild USING(content_id)
|
||||
WHERE content_id NOT IN (SELECT child_content_id FROM campus.tbl_contentchild WHERE child_content_id=tbl_content.content_id)
|
||||
WHERE
|
||||
tbl_content.template_kurzbz<>'news' AND
|
||||
content_id NOT IN (SELECT child_content_id FROM campus.tbl_contentchild WHERE child_content_id=tbl_content.content_id)
|
||||
) as a
|
||||
ORDER BY sort";
|
||||
|
||||
@@ -719,6 +707,48 @@ class content extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Content Eintraege die keine Childs von anderen Contenteintraegen sind
|
||||
* @return boolean
|
||||
*/
|
||||
public function getNews()
|
||||
{
|
||||
$qry = "SELECT
|
||||
*
|
||||
FROM
|
||||
campus.tbl_content
|
||||
JOIN campus.tbl_news USING(content_id)
|
||||
WHERE
|
||||
tbl_news.datum>=now()-'2 month'::interval
|
||||
ORDER BY datum DESC LIMIT 100";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new content();
|
||||
|
||||
$obj->content_id = $row->content_id;
|
||||
$obj->template_kurzbz = $row->template_kurzbz;
|
||||
$obj->oe_kurzbz = $row->oe_kurzbz;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->aktiv = ($row->aktiv=='t'?true:false);
|
||||
$obj->menu_open = ($row->menu_open=='t'?true:false);
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sortiert einen Menueeintrag nach oben
|
||||
* @param $contentchild_id
|
||||
|
||||
@@ -35,15 +35,19 @@ class XSDFormPrinter
|
||||
*
|
||||
* Erzeugt das Formular
|
||||
* @param $xsd XSD File (nicht der Filename)
|
||||
* @param $xml XML mit den Daten die vorausgefuellt werden sollen
|
||||
*/
|
||||
public function output($xsd, $xml)
|
||||
{
|
||||
$dom = new DOMDocument();
|
||||
$dom->loadXML($xsd);
|
||||
|
||||
$this->xml_inhalt = new DOMDocument();
|
||||
$this->xml_inhalt->loadXML($xml);
|
||||
|
||||
$this->xml_inhalt = new DOMDocument();
|
||||
if($xml!='')
|
||||
{
|
||||
$this->xml_inhalt->loadXML($xml);
|
||||
}
|
||||
if($dom===false)
|
||||
{
|
||||
echo 'Failed to load XSD into DOM';
|
||||
|
||||
@@ -6,6 +6,16 @@ $this->phrasen['global/studienzentrum']='Studienzentrum';
|
||||
$this->phrasen['global/studiengangsleitung']='Studiengangsleitung';
|
||||
$this->phrasen['global/lehrveranstaltung']='Lehrveranstaltung';
|
||||
|
||||
$this->phrasen['global/studiengangsmanagement']='Studiengangsmanagement';
|
||||
$this->phrasen['global/geschaeftsfuehrendeltg']='geschäftsf. Leitung';
|
||||
$this->phrasen['global/stellvertreter']='Stellvertreter';
|
||||
$this->phrasen['global/sekretariat']='Sekretariat';
|
||||
$this->phrasen['global/studentenvertreter']='Studentenvertreter';
|
||||
|
||||
$this->phrasen['global/lehrziele']='Lehrziele';
|
||||
$this->phrasen['global/allgemeinerdownload']='Allgemeiner Download';
|
||||
$this->phrasen['global/newsgroups']='Newsgroups';
|
||||
|
||||
$this->phrasen['global/speichern']='Speichern';
|
||||
$this->phrasen['global/loeschen']='Löschen';
|
||||
$this->phrasen['global/editieren']='Editieren';
|
||||
|
||||
@@ -3,4 +3,21 @@ $this->phrasen['news/verwaltungstools']='Verwaltungstools';
|
||||
$this->phrasen['news/newsverwaltung']='Newsverwaltung';
|
||||
$this->phrasen['news/neuereintrag']='Neuen Eintrag anlegen';
|
||||
$this->phrasen['news/verfasser']='Verfasser';
|
||||
$this->phrasen['news/betreff']='Betreff';
|
||||
$this->phrasen['news/text']='Text';
|
||||
|
||||
$this->phrasen['news/sichtbarab']='Datum';
|
||||
$this->phrasen['news/sichtbarbis']='Sichtbar bis';
|
||||
|
||||
$this->phrasen['news/allgemein']='Allgemein';
|
||||
$this->phrasen['news/freifach']='Freifach';
|
||||
$this->phrasen['news/studiengang']='Studiengang';
|
||||
|
||||
$this->phrasen['news/uebersetzunganlegen']='Übersetzung anlegen in';
|
||||
$this->phrasen['news/uebersetzen']='Übersetzen';
|
||||
$this->phrasen['news/anlegen']='Anlegen';
|
||||
$this->phrasen['news/uebersetzungenvorhanden']='Der Newseintrag existiert bereits in allen zugelassenen Sprachen';
|
||||
|
||||
$this->phrasen['news/allesemester']='Alle Semester';
|
||||
$this->phrasen['news/xsemester']='%s. Semester';
|
||||
?>
|
||||
@@ -6,6 +6,16 @@ $this->phrasen['global/studienzentrum']='Study Center';
|
||||
$this->phrasen['global/studiengangsleitung']='Head of Department';
|
||||
$this->phrasen['global/lehrveranstaltung']='Subject';
|
||||
|
||||
$this->phrasen['global/studiengangsmanagement']='Study Management';
|
||||
$this->phrasen['global/geschaeftsfuehrendeltg']='business Leadership';
|
||||
$this->phrasen['global/stellvertreter']='Deputy';
|
||||
$this->phrasen['global/sekretariat']='Secretariat';
|
||||
$this->phrasen['global/studentenvertreter']='Student Representatives';
|
||||
|
||||
$this->phrasen['global/lehrziele']='Teaching goals';
|
||||
$this->phrasen['global/allgemeinerdownload']='Global Download';
|
||||
$this->phrasen['global/newsgroups']='Newsgroups';
|
||||
|
||||
$this->phrasen['global/speichern']='Save';
|
||||
$this->phrasen['global/loeschen']='Delete';
|
||||
$this->phrasen['global/editieren']='Edit';
|
||||
|
||||
@@ -3,4 +3,21 @@ $this->phrasen['news/verwaltungstools']='Managementtools';
|
||||
$this->phrasen['news/newsverwaltung']='Newsmanagement';
|
||||
$this->phrasen['news/neuereintrag']='Create a new Entry';
|
||||
$this->phrasen['news/verfasser']='Author';
|
||||
$this->phrasen['news/betreff']='Subject';
|
||||
$this->phrasen['news/text']='Text';
|
||||
|
||||
$this->phrasen['news/sichtbarab']='Date';
|
||||
$this->phrasen['news/sichtbarbis']='Visible until';
|
||||
|
||||
$this->phrasen['news/allgemein']='Global';
|
||||
$this->phrasen['news/freifach']='Optional Subject';
|
||||
$this->phrasen['news/studiengang']='Study Program';
|
||||
|
||||
$this->phrasen['news/uebersetzunganlegen']='Create Translation in';
|
||||
$this->phrasen['news/uebersetzen']='Translate';
|
||||
$this->phrasen['news/anlegen']='Create';
|
||||
$this->phrasen['news/uebersetzungenvorhanden']='no more Translations available';
|
||||
|
||||
$this->phrasen['news/allesemester']='All Semesters';
|
||||
$this->phrasen['news/xsemester']='Semester %s';
|
||||
?>
|
||||
+17
-2
@@ -2560,6 +2560,22 @@ if(!$result = @$db->db_query('SELECT zgvmaster_name FROM public.tbl_preincoming
|
||||
else
|
||||
echo ' public.tbl_preincoming: Spalte zgvmaster_name hinzugefuegt!<br>';
|
||||
}
|
||||
|
||||
if(!$result = @$db->db_query('SELECT content_id FROM campus.tbl_news LIMIT 1;'))
|
||||
{
|
||||
$qry = "ALTER TABLE campus.tbl_news ADD COLUMN content_id integer;
|
||||
DROP TABLE campus.tbl_newssprache;
|
||||
ALTER TABLE campus.tbl_news ADD CONSTRAINT fk_content_news FOREIGN KEY (content_id) REFERENCES campus.tbl_content (content_id) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
CREATE INDEX idx_contentsprache_sprache ON campus.tbl_contentsprache (sprache);
|
||||
CREATE INDEX idx_contentsprache_version ON campus.tbl_contentsprache (version);
|
||||
CREATE INDEX idx_contentsprache_content_id ON campus.tbl_contentsprache (content_id);";
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>campus.tbl_news: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo 'campus.tbl_news: Spalte content_id hinzugefuegt, tbl_newssprache entfernt, div. Indizes hinzugefuegt!<br>';
|
||||
}
|
||||
|
||||
|
||||
echo '<br>';
|
||||
|
||||
$tabellen=array(
|
||||
@@ -2599,8 +2615,7 @@ $tabellen=array(
|
||||
"campus.tbl_legesamtnote" => array("student_uid","lehreinheit_id","note","benotungsdatum","updateamum","updatevon","insertamum","insertvon"),
|
||||
"campus.tbl_lvgesamtnote" => array("lehrveranstaltung_id","studiensemester_kurzbz","student_uid","note","mitarbeiter_uid","benotungsdatum","freigabedatum","freigabevon_uid","bemerkung","updateamum","updatevon","insertamum","insertvon"),
|
||||
"campus.tbl_lvinfo" => array("lehrveranstaltung_id","sprache","titel","lehrziele","lehrinhalte","methodik","voraussetzungen","unterlagen","pruefungsordnung","anmerkung","kurzbeschreibung","genehmigt","aktiv","updateamum","updatevon","insertamum","insertvon"),
|
||||
"campus.tbl_news" => array("news_id","uid","studiengang_kz","fachbereich_kurzbz","semester","betreff","text","datum","verfasser","updateamum","updatevon","insertamum","insertvon","datum_bis"),
|
||||
"campus.tbl_newssprache" => array("sprache","news_id","betreff","text","updateamum","updatevon","insertamum","insertvon"),
|
||||
"campus.tbl_news" => array("news_id","uid","studiengang_kz","fachbereich_kurzbz","semester","betreff","text","datum","verfasser","updateamum","updatevon","insertamum","insertvon","datum_bis","content_id"),
|
||||
"campus.tbl_notenschluessel" => array("lehreinheit_id","note","punkte"),
|
||||
"campus.tbl_notenschluesseluebung" => array("uebung_id","note","punkte"),
|
||||
"campus.tbl_paabgabetyp" => array("paabgabetyp_kurzbz","bezeichnung"),
|
||||
|
||||
@@ -56,16 +56,24 @@ if($result = $db->db_query($qry))
|
||||
$content->version = 1;
|
||||
if($content->save(true))
|
||||
{
|
||||
$qry = "UPDATE campus.tbl_news SET content_id='".$content->content_id."' WHERE news_id='".$row->news_id."';";
|
||||
|
||||
if($db->db_query($qry))
|
||||
if($content->saveContentSprache(true))
|
||||
{
|
||||
echo "ID $row->news_id angelegt<br>";
|
||||
$ok++;
|
||||
$qry = "UPDATE campus.tbl_news SET content_id='".$content->content_id."' WHERE news_id='".$row->news_id."';";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
echo "ID $row->news_id angelegt<br>";
|
||||
$ok++;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "News Update Failed $row->news_id<br>";
|
||||
$fehler++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "News Update Failed $row->news_id<br>";
|
||||
echo "Content Sprache Update Failed $row->news_id<br>";
|
||||
$fehler++;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,14 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<td valign="top">
|
||||
<h1>News</h1>
|
||||
<div id="news">
|
||||
<xsl:apply-templates select="content/news" />
|
||||
<xsl:choose>
|
||||
<xsl:when test="content/news">
|
||||
<xsl:apply-templates select="content/news" />
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:apply-templates select="news" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</div>
|
||||
</td>
|
||||
<xsl:if test="content/stg_extras" >
|
||||
@@ -33,7 +40,21 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="60%" align="left"><xsl:value-of select="betreff"/></td>
|
||||
<td width="40%" align="right"><xsl:value-of select="verfasser"/> <span style="font-weight: normal"> ( <xsl:value-of select="datum"/> )</span></td>
|
||||
<td width="40%" align="right">
|
||||
<xsl:value-of select="verfasser"/>
|
||||
<span style="font-weight: normal"> ( <xsl:value-of select="datum"/> )</span>
|
||||
<xsl:if test="news_id">
|
||||
<xsl:variable name="news_id" select="news_id"></xsl:variable>
|
||||
<xsl:text> </xsl:text><a href="newsverwaltung.php?news_id={news_id}" target="content">edit</a>
|
||||
<xsl:text> </xsl:text><a href="newsverwaltung.php?news_id={news_id}&action=delete" target="content" onclick="return confdel();">delete</a>
|
||||
<script type="text/javascript">
|
||||
function confdel()
|
||||
{
|
||||
return confirm('Soll dieser Eintrag wirklich gelöscht werden?');
|
||||
}
|
||||
</script>
|
||||
</xsl:if>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -44,34 +65,35 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<br />
|
||||
</xsl:template>
|
||||
<xsl:template match="stg_extras">
|
||||
<h2><b>Studiengangsmanagement</b></h2>
|
||||
<h2><b><xsl:value-of select="stg_header" /></b></h2>
|
||||
<font face='Arial, Helvetica, sans-serif' size='2'>
|
||||
<br />
|
||||
Studiengangsleitung:<br />
|
||||
<xsl:value-of select="stg_ltg_name" /><br />
|
||||
<xsl:apply-templates select="stg_ltg" />
|
||||
<br />
|
||||
<xsl:if test="gf_ltg">
|
||||
geschäftsf. Leitung:<br />
|
||||
<xsl:value-of select="gf_ltg_name" /><br />
|
||||
<xsl:apply-templates select="gf_ltg" />
|
||||
<br />
|
||||
</xsl:if>
|
||||
<xsl:if test="stv_ltg">
|
||||
Stellvertreter:<br />
|
||||
<xsl:value-of select="stv_ltg_name" /><br />
|
||||
<xsl:apply-templates select="stv_ltg" />
|
||||
<br />
|
||||
</xsl:if>
|
||||
<xsl:if test="ass">
|
||||
Sekretariat:<br />
|
||||
<xsl:value-of select="ass_name" /><br />
|
||||
<xsl:apply-templates select="ass" />
|
||||
<br />
|
||||
</xsl:if>
|
||||
<xsl:value-of select="zusatzinfo" disable-output-escaping="yes"/>
|
||||
<xsl:if test="stdv">
|
||||
<br />
|
||||
Studentenvertreter:<br />
|
||||
<xsl:value-of select="stdv_name" /><br />
|
||||
<xsl:apply-templates select="stdv" />
|
||||
<br />
|
||||
</xsl:if>
|
||||
<xsl:apply-templates select="cis_ext_menu" />
|
||||
</font>
|
||||
</xsl:template>
|
||||
|
||||
@@ -107,4 +129,11 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:variable name="mail" select="email"></xsl:variable>
|
||||
<a href="mailto:{mail}"><xsl:value-of select="name" /></a><br />
|
||||
</xsl:template>
|
||||
<xsl:template match="cis_ext_menu">
|
||||
<xsl:variable name="kurzbz" select="kurzbz"></xsl:variable>
|
||||
<xsl:variable name="kurzbzlang" select="kurzbzlang"></xsl:variable>
|
||||
<img src="../skin/images/seperator.gif" /><xsl:text> </xsl:text><a href="../documents/{kurzbz}/lehrziele/" class="Item" target="_blank"><xsl:value-of select="lehrziele_name" /></a><br />
|
||||
<img src="../skin/images/seperator.gif" /><xsl:text> </xsl:text><a href="../documents/{kurzbz}/download/" class="Item" target="_blank"><xsl:value-of select="download_name" /></a><br />
|
||||
<img src="../skin/images/seperator.gif" /><xsl:text> </xsl:text><a href="news://news.technikum-wien.at/{kurzbzlang}" class="Item" target="_blank"><xsl:value-of select="newsgroup_name" /></a><br />
|
||||
</xsl:template>
|
||||
</xsl:stylesheet >
|
||||
|
||||
Reference in New Issue
Block a user