mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-22 01:12:17 +00:00
Message Tab Shows also Reply Messages
Added Link for Creating and Reply to Messages
This commit is contained in:
+21
-5
@@ -23,7 +23,7 @@ require_once('../config/vilesci.config.inc.php');
|
||||
var MessagePersonID=null;
|
||||
var MessagesTreeDatasource=''; // Datasource des Adressen Trees
|
||||
var MessagesSelectID='';
|
||||
|
||||
var MessageSenderPersonID='';
|
||||
|
||||
var MessagesTreeSinkObserver =
|
||||
{
|
||||
@@ -53,11 +53,12 @@ var MessagesTreeListener =
|
||||
// ****
|
||||
// * Laedt die Trees
|
||||
// ****
|
||||
function loadMessages(person_id)
|
||||
function loadMessages(person_id, fas_person_id)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
MessagePersonID = person_id;
|
||||
|
||||
MessageSenderPersonID=fas_person_id;
|
||||
|
||||
//Adressen laden
|
||||
url = "<?php echo APP_ROOT; ?>rdf/messages.rdf.php?person_id="+person_id+"&"+gettimestamp();
|
||||
var tree=document.getElementById('messages-tree');
|
||||
@@ -92,7 +93,7 @@ function loadMessages(person_id)
|
||||
// ****
|
||||
function MessagesNewMessage()
|
||||
{
|
||||
window.open('<?php echo APP_ROOT ?>/index.ci.php/system/Messages/outbox/'+MessagePersonID,'Outbox','');
|
||||
window.open('<?php echo APP_ROOT ?>/index.ci.php/system/Messages/write/'+MessageSenderPersonID+'/'+MessagePersonID,'Message','');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -108,6 +109,21 @@ function MessagesSendAnswer()
|
||||
else
|
||||
{
|
||||
var MessageId = getTreeCellText(tree, 'messages-tree-message_id', tree.currentIndex);
|
||||
window.open('<?php echo APP_ROOT ?>/index.ci.php/system/Messages/outbox/'+MessagePersonID+'/'+MessageId,'Outbox','');
|
||||
var RecipientID = getTreeCellText(tree, 'messages-tree-recipient_id', tree.currentIndex);
|
||||
window.open('<?php echo APP_ROOT ?>/index.ci.php/system/Messages/reply/'+MessageId+'/'+RecipientID,'Reply','');
|
||||
}
|
||||
}
|
||||
|
||||
function MessageAuswahl()
|
||||
{
|
||||
var tree=document.getElementById('messages-tree');
|
||||
if(tree.currentIndex==-1)
|
||||
{
|
||||
alert("Bitte markieren Sie zuerst eine Nachricht");
|
||||
}
|
||||
else
|
||||
{
|
||||
var text = getTreeCellText(tree, 'messages-tree-body', tree.currentIndex);
|
||||
}
|
||||
document.getElementById('message-wysiwyg').value=text;
|
||||
}
|
||||
|
||||
+44
-14
@@ -26,6 +26,7 @@ header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/variable.class.php');
|
||||
require_once('../include/benutzer.class.php');
|
||||
|
||||
$user=get_uid();
|
||||
$variable = new variable();
|
||||
@@ -34,6 +35,9 @@ if(!$variable->loadVariables($user))
|
||||
die('Fehler beim Laden der Variablen:'.$variable->errormsg);
|
||||
}
|
||||
|
||||
$benutzer = new benutzer();
|
||||
$benutzer->load($user);
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
|
||||
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
@@ -50,7 +54,7 @@ echo ']>
|
||||
|
||||
<window id="messages-window" title="messages"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="loadMessages(<?php echo "'".$person_id."'"; ?>);"
|
||||
onload="loadMessages(<?php echo "'".$person_id."','".$benutzer->person_id."'"; ?>);"
|
||||
>
|
||||
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/messages.js.php" />
|
||||
@@ -65,11 +69,16 @@ echo ']>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<hbox style="padding-top: 10px">
|
||||
<button oncommand="MessagesNewMessage()" label="Neue Nachricht schicken"/>
|
||||
<button oncommand="MessagesSendAnswer()" label="Antworten"/>
|
||||
</hbox>
|
||||
|
||||
<hbox>
|
||||
|
||||
<tree id="messages-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="<?php echo APP_ROOT; ?>rdf/messages.rdf.php?foo=<?php echo time(); ?>" ref="http://www.technikum-wien.at/messages/alle"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/messages"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
onselect="messagesAuswahl()"
|
||||
onselect="MessageAuswahl()"
|
||||
context="messages-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
@@ -80,15 +89,35 @@ echo ']>
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#subject"/>
|
||||
<treecol id="messages-tree-body" label="Body" flex="2" hidden="false" primary="true"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#body"/>
|
||||
<treecol id="messages-tree-message_id" label="MessageID" flex="2" hidden="false"
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-body" label="Body" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#body"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-message_id" label="MessageID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#message_id"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-insertamum" label="Datum" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#insertamum"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-sender" label="Sender" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#sender"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-recipient" label="Empfänger" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#recipient"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-sender_id" label="SenderID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#sender"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="messages-tree-recipient_id" label="EmpfängerID" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/messages/rdf#recipient_id"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
@@ -98,17 +127,18 @@ echo ']>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#subject"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#body"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#message_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#insertamum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#sender"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#recipient"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#sender_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/messages/rdf#recipient_id"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<button oncommand="MessagesNewMessage()" label="Neue Nachricht schicken"/>
|
||||
<button oncommand="MessagesSendAnswer()" label="Antworten"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
<box class="WYSIWYG" id="message-wysiwyg" flex="1"/>
|
||||
<spacer flex="1" />
|
||||
</vbox>
|
||||
</window>
|
||||
|
||||
+44
-47
@@ -19,66 +19,63 @@
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
||||
*/
|
||||
// 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 '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
// DAO
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/rdf.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/messages';
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if(!$rechte->isBerechtigt('basis/message','s'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
?>
|
||||
$oRdf = new rdf('MESSAGES','http://www.technikum-wien.at/messages');
|
||||
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:MESSAGES="<?php echo $rdf_url; ?>/rdf#"
|
||||
>
|
||||
|
||||
<RDF:Seq about="<?php echo $rdf_url ?>/alle">
|
||||
|
||||
<?php
|
||||
if(isset($_GET['optional']) && $_GET['optional']=='true')
|
||||
{
|
||||
echo '
|
||||
<RDF:li>
|
||||
<RDF:Description id="" about="'.$rdf_url.'/" >
|
||||
<MESSAGES:subject></MESSAGES:subject>
|
||||
<MESSAGES:body></MESSAGES:body>
|
||||
<MESSAGES:message_id></MESSAGES:message_id>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
';
|
||||
}
|
||||
if (isset($_GET['person_id']) && is_numeric($_GET['person_id']))
|
||||
$where = " where r.person_id = ".$_GET['person_id'];
|
||||
$person_id = $_GET['person_id'];
|
||||
else
|
||||
$where = '';
|
||||
die('Parameter person_id is missing');
|
||||
|
||||
$qry = "SELECT m.* FROM public.tbl_msg_message m join public.tbl_msg_recipient r using(message_id)".$where." ORDER BY message_id";
|
||||
$db = new basis_db();
|
||||
$qry = "
|
||||
SELECT
|
||||
m.*,
|
||||
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=m.person_id) as sender,
|
||||
(SELECT COALESCE(titelpre,'') || ' ' || COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') || ' ' || COALESCE(titelpost,'') FROM public.tbl_person WHERE person_id=r.person_id) as recipient,
|
||||
m.person_id as sender_id,
|
||||
r.person_id as recipient_id
|
||||
FROM
|
||||
public.tbl_msg_message m
|
||||
JOIN public.tbl_msg_recipient r USING(message_id)
|
||||
WHERE
|
||||
r.person_id=".$db->db_add_param($person_id, FHC_INTEGER)."
|
||||
OR m.person_id=".$db->db_add_param($person_id, FHC_INTEGER)."
|
||||
ORDER BY
|
||||
message_id";
|
||||
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$oRdf->sendHeader();
|
||||
while($row = $db->db_fetch_object())
|
||||
{
|
||||
?>
|
||||
<RDF:li>
|
||||
<RDF:Description id="<?php echo $row->message_id; ?>" about="<?php echo $rdf_url.'/'.$row->message_id; ?>" >
|
||||
<MESSAGES:subject><![CDATA[<?php echo $row->subject; ?>]]></MESSAGES:subject>
|
||||
<MESSAGES:body><![CDATA[<?php echo $row->body; ?>]]></MESSAGES:body>
|
||||
<MESSAGES:message_id><![CDATA[<?php echo $row->message_id; ?>]]></MESSAGES:message_id>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
<?php
|
||||
$i=$oRdf->newObjekt($row->message_id);
|
||||
$oRdf->obj[$i]->setAttribut('subject',$row->subject,true);
|
||||
$oRdf->obj[$i]->setAttribut('body',$row->body,true);
|
||||
$oRdf->obj[$i]->setAttribut('message_id',$row->message_id,true);
|
||||
$oRdf->obj[$i]->setAttribut('insertamum',$row->insertamum,true);
|
||||
$oRdf->obj[$i]->setAttribut('status',$row->insertamum,true);
|
||||
$oRdf->obj[$i]->setAttribut('sender',$row->sender,true);
|
||||
$oRdf->obj[$i]->setAttribut('recipient',$row->recipient,true);
|
||||
$oRdf->obj[$i]->setAttribut('sender_id',$row->sender_id,true);
|
||||
$oRdf->obj[$i]->setAttribut('recipient_id',$row->recipient_id,true);
|
||||
|
||||
if($row->relationmessage_id!='')
|
||||
$oRdf->addSequence($row->message_id, $row->relationmessage_id);
|
||||
else
|
||||
$oRdf->addSequence($row->message_id);
|
||||
}
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
$oRdf->sendRdfText();
|
||||
?>
|
||||
Reference in New Issue
Block a user