diff --git a/content/projekt/mantisdetail.overlay.xul.php b/content/projekt/mantisdetail.overlay.xul.php
new file mode 100755
index 000000000..631befda4
--- /dev/null
+++ b/content/projekt/mantisdetail.overlay.xul.php
@@ -0,0 +1,73 @@
+
+ */
+
+header("Cache-Control: no-cache");
+header("Cache-Control: post-check=0, pre-check=0",false);
+header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
+header("Pragma: no-cache");
+header("Content-type: application/vnd.mozilla.xul+xml");
+
+require_once('../../config/vilesci.config.inc.php');
+
+echo '';
+
+?>
+
+
+
+
+
+
+ Task Details
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Mantis Details
+
+
\ No newline at end of file
diff --git a/content/projekt/projekttask.overlay.js.php b/content/projekt/projekttask.overlay.js.php
index c7c4dda3b..9b3ae4395 100755
--- a/content/projekt/projekttask.overlay.js.php
+++ b/content/projekt/projekttask.overlay.js.php
@@ -1,342 +1,370 @@
-
- */
-
-require_once('../../config/vilesci.config.inc.php');
-
-?>
-// *********** Globale Variablen *****************//
-
-var TaskSelectID=null; //ID des Task Eintrages der nach dem Refresh markiert werden soll
-// ********** Observer und Listener ************* //
-
-// ****
-// * Observer fuer LV Tree
-// * startet Rebuild nachdem das Refresh
-// * der datasource fertig ist
-// ****
-var TaskTreeSinkObserver =
-{
- onBeginLoad : function(pSink) {},
- onInterrupt : function(pSink) {},
- onResume : function(pSink) {},
- onError : function(pSink, pStatus, pError) { debug('onerror:'+pError); },
- onEndLoad : function(pSink)
- {
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- document.getElementById('projekttask-tree').builder.rebuild();
- }
-};
-
-// ****
-// * Nach dem Rebuild wird die Lehreinheit wieder
-// * markiert
-// ****
-var TaskTreeListener =
-{
- willRebuild : function(builder)
- {
- },
- didRebuild : function(builder)
- {
- //timeout nur bei Mozilla notwendig da sonst die rows
- //noch keine values haben. Ab Seamonkey funktionierts auch
- //ohne dem setTimeout
- window.setTimeout(TaskTreeSelectTask,10);
- // Progressmeter stoppen
- //document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
- }
-};
-
-// ****************** FUNKTIONEN ************************** //
-
-// ****
-// * Asynchroner (Nicht blockierender) Refresh des LV Trees
-// ****
-function TaskTreeRefresh()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- //markierte Lehreinheit global speichern damit diese LE nach dem
- //refresh wieder markiert werden kann.
- var tree = document.getElementById('projekttask-tree');
-
- try
- {
- TaskSelectID = getTreeCellText(tree, "projekttask-treecol-projekttask_id", tree.currentIndex);
- }
- catch(e)
- {
- TaskSelectID=null;
- }
- datasourceTreeTask.Refresh(false); //non blocking
-}
-
-// ****
-// * neuen Task anlegen
-// ****
-function TaskNeu()
-{
- tree = document.getElementById('tree-projektmenue');
-
- //Projektphase_id holen
- var projektphase_id = getTreeCellText(tree, "treecol-projektmenue-projekt_phase_id", tree.currentIndex);
-
- if(projektphase_id=='')
- {
- alert('Bitte markieren sie im Projektmenue zuerst eine Projektphase');
- return false;
- }
- //Details zuruecksetzen
- TaskDetailReset();
-
- document.getElementById('textbox-projekttaskdetail-projektphase_id').value=projektphase_id;
-}
-// ****
-// * Selectiert die Lektorzuordnung nachdem der Tree
-// * rebuildet wurde.
-// ****
-function TaskTreeSelectTask()
-{
- var tree=document.getElementById('projekttask-tree');
- var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
-
- //In der globalen Variable ist die zu selektierende ID gespeichert
- if(TaskSelectID!=null)
- {
- for(var i=0;i
+ */
+
+require_once('../../config/vilesci.config.inc.php');
+
+?>
+// *********** Globale Variablen *****************//
+
+var TaskSelectID=null; //ID des Task Eintrages der nach dem Refresh markiert werden soll
+// ********** Observer und Listener ************* //
+
+// ****
+// * Observer fuer LV Tree
+// * startet Rebuild nachdem das Refresh
+// * der datasource fertig ist
+// ****
+var TaskTreeSinkObserver =
+{
+ onBeginLoad : function(pSink) {},
+ onInterrupt : function(pSink) {},
+ onResume : function(pSink) {},
+ onError : function(pSink, pStatus, pError) { debug('onerror:'+pError); },
+ onEndLoad : function(pSink)
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ document.getElementById('projekttask-tree').builder.rebuild();
+ }
+};
+
+// ****
+// * Nach dem Rebuild wird die Lehreinheit wieder
+// * markiert
+// ****
+var TaskTreeListener =
+{
+ willRebuild : function(builder)
+ {
+ },
+ didRebuild : function(builder)
+ {
+ //timeout nur bei Mozilla notwendig da sonst die rows
+ //noch keine values haben. Ab Seamonkey funktionierts auch
+ //ohne dem setTimeout
+ window.setTimeout(TaskTreeSelectTask,10);
+ // Progressmeter stoppen
+ //document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
+ }
+};
+
+// ****************** FUNKTIONEN ************************** //
+
+// ****
+// * Asynchroner (Nicht blockierender) Refresh des LV Trees
+// ****
+function TaskTreeRefresh()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ //markierte Lehreinheit global speichern damit diese LE nach dem
+ //refresh wieder markiert werden kann.
+ var tree = document.getElementById('projekttask-tree');
+
+ try
+ {
+ TaskSelectID = getTreeCellText(tree, "projekttask-treecol-projekttask_id", tree.currentIndex);
+ }
+ catch(e)
+ {
+ TaskSelectID=null;
+ }
+ datasourceTreeTask.Refresh(false); //non blocking
+}
+
+// ****
+// * neuen Task anlegen
+// ****
+function TaskNeu()
+{
+ tree = document.getElementById('tree-projektmenue');
+
+ //Projektphase_id holen
+ var projektphase_id = getTreeCellText(tree, "treecol-projektmenue-projekt_phase_id", tree.currentIndex);
+
+ if(projektphase_id=='')
+ {
+ alert('Bitte markieren sie im Projektmenue zuerst eine Projektphase');
+ return false;
+ }
+ //Details zuruecksetzen
+ TaskDetailReset();
+
+ document.getElementById('textbox-projekttaskdetail-projektphase_id').value=projektphase_id;
+}
+// ****
+// * Selectiert die Lektorzuordnung nachdem der Tree
+// * rebuildet wurde.
+// ****
+function TaskTreeSelectTask()
+{
+ var tree=document.getElementById('projekttask-tree');
+ var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
+
+ //In der globalen Variable ist die zu selektierende ID gespeichert
+ if(TaskSelectID!=null)
+ {
+ for(var i=0;i';
echo '';
+echo '';
?>
-
-
+
+
diff --git a/content/projekt/projekttaskdetail.overlay.xul.php b/content/projekt/projekttaskdetail.overlay.xul.php
index 922481985..68d81268e 100755
--- a/content/projekt/projekttaskdetail.overlay.xul.php
+++ b/content/projekt/projekttaskdetail.overlay.xul.php
@@ -37,7 +37,7 @@ echo '';
-
+
Task Details
diff --git a/include/mantis.class.php b/include/mantis.class.php
new file mode 100755
index 000000000..1648a8aea
--- /dev/null
+++ b/include/mantis.class.php
@@ -0,0 +1,129 @@
+
+ */
+/****************************************************************************
+ * @class Mantis
+ * @author Christian Paminger
+ * @date 2011/8/22
+ * @version $Revision: 1.3 $
+ * Update: 22.08.2011 von Christian Paminger
+ * @brief Klasse fuer die Schnittstelle zum Mantis BTS
+ * Abhaengig: von basis_db.class.php
+ *****************************************************************************/
+require_once(dirname(__FILE__).'/basis_db.class.php');
+//require_once('nusoap.php');
+//require_once(dirname(__FILE__).'/globals.inc.php');
+
+class mantis extends basis_db
+{
+ public $issue_id; // @brief Connection zur Datenbank
+ public $issue_view_state; // @brief Return Linefeed
+ public $issue_last_updated; // @brief Typ des Plans (Student, Lektor, Verband, Ort)
+ public $issue_project; // @brief Benutzergruppe
+ public $issue_category; // @brief id in der Datenbank des Benutzers
+ public $issue_priority; // @brief Link auf eigene Seite
+ public $issue_severity; // @brief Link auf den kalender
+ public $issue_status; // @brief Kennzahl des Studiengangs
+ public $issue_reporter; // @brief Bezeichnung Studiengang
+ public $issue_summary; // @brief Kurzbezeichnung Studiengang
+ public $issue_reproducibility; // @brief lange Kurzbezeichnung Studiengang
+ public $issue_date_submitted; // @brief Semester
+ public $issue_sponsorship_total; // @brief Verband (A,B,C,...)
+ public $issue_projection; // @brief Gruppe (1,2)
+ public $issue_eta; // @brief Account Name der Person (PK)
+ public $issue_resolution; // @brief Titel der Person
+ public $issue_description; // @brief Titel der Person
+ public $issue_attachments; // @brief Personendaten
+ public $issue_due_date; // @brief Personendaten
+
+ public $soapClient;
+ public $errormsg;
+
+ /**
+ * Konstruktor
+ * @param $type
+ */
+ public function __construct()
+ {
+ parent::__construct();
+ //echo 'Init SoapClient-Method!
';
+ $this->initSoapClient();
+ }
+
+ public function initSoapClient()
+ {
+ try
+ {
+ //echo 'Init SoapClient!
';
+ $this->soapClient = new SoapClient('http://localhost/mantis/api/soap/mantisconnect.php?wsdl');
+ }
+ catch (Exception $e)
+ {
+ echo $e->getMessage();
+ }
+ }
+
+ // Neues Ticket anlegen
+ public function insertIssue()
+ {
+ $result = $this->soapClient->__soapCall('mc_version',array());
+ return $result;
+ }
+
+ // Ticket holen
+ public function getIssue()
+ {
+ $params=array('username' => 'pam', 'password' => 'jfie02','issue_id' => 1);
+ $result = $this->soapClient->__soapCall('mc_issue_get',$params);
+
+ $this->issue_id = $result->id;
+ $this->issue_view_state->id = $result->view_state->id;
+ $this->issue_view_state->name = $result->view_state->name;
+ $this->issue_last_updated = $result->last_updated;
+ $this->issue_project->id = $result->project->id;
+ $this->issue_project->name = $result->project->name;
+ $this->issue_category = $result->category;
+ $this->issue_priority->id = $result->priority->id;
+ $this->issue_priority->name = $result->priority->name;
+ $this->issue_severity->id = $result->severity->id;
+ $this->issue_severity->name = $result->severity->name;
+ $this->issue_status->id = $result->status->id;
+ $this->issue_status->name = $result->status->name;
+ $this->issue_reporter->id = $result->reporter->id;
+ $this->issue_reporter->name = $result->reporter->name;
+ $this->issue_reporter->real_name = $result->reporter->real_name;
+ $this->issue_reporter->email = $result->reporter->email;
+ $this->issue_summary = $result->summary;
+ $this->issue_reproducibility->id = $result->reproducibility->id;
+ $this->issue_reproducibility->name = $result->reproducibility->name;
+ $this->issue_date_submitted = $result->date_submitted;
+ $this->issue_sponsorship_total = $result->sponsorship_total;
+ $this->issue_projection->id = $result->projection->id;
+ $this->issue_projection->name = $result->projection->name;
+ $this->issue_eta->id = $result->eta->id;
+ $this->issue_eta->name = $result->eta->name;
+ $this->issue_resolution->id = $result->resolution->id;
+ $this->issue_resolution->name = $result->resolution->name;
+ $this->issue_description = $result->description;
+ $this->issue_attachments = $result->attachments;
+ $this->issue_due_date = $result->due_date;
+
+ return true;
+ }
+}
diff --git a/rdf/mantis.rdf.php b/rdf/mantis.rdf.php
new file mode 100755
index 000000000..3619a8a34
--- /dev/null
+++ b/rdf/mantis.rdf.php
@@ -0,0 +1,61 @@
+
+ */
+/*
+ * Created on 02.12.2004
+ * Erstellt ein RDF mit den Lehrformen
+ */
+// header für no cache
+header("Cache-Control: no-cache");
+header("Cache-Control: post-check=0, pre-check=0",false);
+header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
+header("Pragma: no-cache");
+// content type setzen
+header("Content-type: application/xhtml+xml");
+// xml
+echo '';
+// DAO
+require_once('../config/vilesci.config.inc.php');
+require_once('../include/mantis.class.php');
+
+$rdf_url='http://www.technikum-wien.at/mantis';
+
+if (isset($_GET['issue_id']))
+ $issue_id=$_GET['issue_id'];
+else
+ $issue_id=null;
+$mantis=new mantis();
+$mantis->getIssue($issue_id);
+//print_r($mantis);
+?>
+
+
+
+
+
+ issue_id; ?>
+ issue_summary; ?>
+ issue_description; ?>
+
+
+
+
\ No newline at end of file