diff --git a/application/controllers/system/Messages.php b/application/controllers/system/Messages.php
index 2fa2619f1..4ad4c5e54 100644
--- a/application/controllers/system/Messages.php
+++ b/application/controllers/system/Messages.php
@@ -19,9 +19,6 @@ class Messages extends VileSci_Controller
// Loads the widget library
$this->load->library('WidgetLib');
- // Loads the person log library
- $this->load->library('PersonLogLib');
-
$this->load->model('person/Person_model', 'PersonModel');
$this->_setAuthUID(); // sets property uid
@@ -208,6 +205,9 @@ class Messages extends VileSci_Controller
break;
}
+ // Loads the person log library
+ $this->load->library('PersonLogLib');
+
//write log entry
$this->personloglib->log(
$dataArray['person_id'],
@@ -313,4 +313,21 @@ class Messages extends VileSci_Controller
->set_output(json_encode($parsedText));
}
}
+
+ /**
+ * Outputs message data for a message (identified my msg id and receiver id) in JSON format
+ * @param $msg_id
+ * @param $receiver_id
+ */
+ public function getMessageFromIds($msg_id, $receiver_id)
+ {
+/* $this->MessageModel->addSelect('subject, body, oe_kurzbz');
+ $msg = $this->MessageModel->load($msg_id);*/
+ $msg = $this->messagelib->getMessage($msg_id, $receiver_id);
+
+ $this->output
+ ->set_content_type('application/json')
+ ->set_output(json_encode(array($msg->retval[0])));
+ }
+
}
diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php
index 87f3421a0..d5ddcc1e3 100644
--- a/application/controllers/system/infocenter/InfoCenter.php
+++ b/application/controllers/system/infocenter/InfoCenter.php
@@ -61,7 +61,8 @@ class InfoCenter extends VileSci_Controller
$this->load->model('crm/statusgrund_model', 'StatusgrundModel');
$this->load->model('person/notiz_model', 'NotizModel');
$this->load->model('person/person_model', 'PersonModel');
- $this->load->model('system/Filters_model', 'FiltersModel');
+ $this->load->model('system/message_model', 'MessageModel');
+ $this->load->model('system/filters_model', 'FiltersModel');
// Loads libraries
$this->load->library('DmsLib');
@@ -484,6 +485,13 @@ class InfoCenter extends VileSci_Controller
show_error($dokumente_nachgereicht->retval);
}
+ $messages = $this->MessageModel->getMessagesOfPerson($person_id, 1);
+
+ if (isError($messages))
+ {
+ show_error($messages->retval);
+ }
+
$logs = $this->personloglib->getLogs($person_id);
$notizen = $this->NotizModel->getNotiz($person_id);
@@ -506,6 +514,7 @@ class InfoCenter extends VileSci_Controller
'stammdaten' => $stammdaten->retval,
'dokumente' => $dokumente->retval,
'dokumente_nachgereicht' => $dokumente_nachgereicht->retval,
+ 'messages' => $messages->retval,
'logs' => $logs,
'notizen' => $notizen->retval,
'messagelink' => $messagelink
diff --git a/application/models/system/Message_model.php b/application/models/system/Message_model.php
index 64d9ff5d1..80a2b35ad 100644
--- a/application/models/system/Message_model.php
+++ b/application/models/system/Message_model.php
@@ -85,6 +85,77 @@ class Message_model extends DB_Model
return $this->execQuery($sql, $parametersArray);
}
+ /**
+ * Gets massages with a person being sender OR receiver.
+ * @param $person_id
+ * @param null $status message status. by default, latest status is returned
+ * @return array|null
+ */
+ public function getMessagesOfPerson($person_id, $status = null)
+ {
+ // Checks if the operation is permitted by the API caller
+ if (isError($ent = $this->isEntitled('public.tbl_person', PermissionLib::SELECT_RIGHT, FHC_NORIGHT, FHC_MODEL_ERROR)))
+ return $ent;
+ if (isError($ent = $this->isEntitled('public.tbl_msg_status', PermissionLib::SELECT_RIGHT, FHC_NORIGHT, FHC_MODEL_ERROR)))
+ return $ent;
+ if (isError($ent = $this->isEntitled('public.tbl_msg_message', PermissionLib::SELECT_RIGHT, FHC_NORIGHT, FHC_MODEL_ERROR)))
+ return $ent;
+ if (isError($ent = $this->isEntitled('public.tbl_msg_recipient', PermissionLib::SELECT_RIGHT, FHC_NORIGHT, FHC_MODEL_ERROR)))
+ return $ent;
+
+ $sql = 'SELECT m.message_id,
+ m.person_id,
+ m.subject,
+ m.body,
+ m.priority,
+ m.insertamum,
+ m.relationmessage_id,
+ m.oe_kurzbz,
+ se.person_id AS sepersonid,
+ se.anrede AS seanrede,
+ se.titelpost AS setitelpost,
+ se.titelpre AS setitelpre,
+ se.nachname AS senachname,
+ se.vorname AS sevorname,
+ se.vornamen AS sevornamen,
+ re.person_id AS repersonid,
+ re.anrede AS reanrede,
+ re.titelpost AS retitelpost,
+ re.titelpre AS retitelpre,
+ re.nachname AS renachname,
+ re.vorname AS revorname,
+ re.vornamen AS revornamen,
+ s.status,
+ s.statusinfo,
+ s.insertamum AS statusamum
+ FROM public.tbl_msg_message m
+ JOIN public.tbl_msg_recipient r ON m.message_id = r.message_id
+ JOIN public.tbl_person se ON (m.person_id = se.person_id)
+ JOIN public.tbl_person re ON (r.person_id = re.person_id)
+ LEFT JOIN (
+ SELECT message_id, person_id, status, statusinfo, insertamum
+ FROM public.tbl_msg_status
+ %s
+ ORDER BY insertamum DESC
+ ) s ON (m.message_id = s.message_id AND re.person_id = s.person_id)
+ WHERE se.person_id = ?
+ OR re.person_id = ?
+ ';
+
+ if (is_numeric($status))
+ {
+ $sql = sprintf($sql, 'WHERE status = '.$status);
+ }
+ else
+ {
+ $sql = sprintf($sql, '');
+ }
+
+ $parametersArray = array($person_id, $person_id);
+
+ return $this->execQuery($sql, $parametersArray);
+ }
+
/**
* getMessageVars
*/
diff --git a/application/views/system/infocenter/infocenterDetails.php b/application/views/system/infocenter/infocenterDetails.php
index 563069962..f6d8cbc8e 100644
--- a/application/views/system/infocenter/infocenterDetails.php
+++ b/application/views/system/infocenter/infocenterDetails.php
@@ -8,6 +8,7 @@ $this->load->view(
'fontawesome' => true,
'jqueryui' => true,
'tablesorter' => true,
+ 'tinymce' => true,
'sbadmintemplate' => true,
'customCSSs' => array('skin/admintemplate.css', 'skin/tablesort_bootstrap.css')
)
@@ -165,11 +166,13 @@ $this->load->view(
- | Name |
- Typ |
- Uploaddatum |
- Ausstellungsnation |
- Formal geprüft |
+
+ | Name |
+ Typ |
+ Uploaddatum |
+ Ausstellungsnation |
+ Formal geprüft |
+
load->view(
Nachzureichende Dokumente:
- | Typ |
- Nachzureichen am |
- Ausstellungsnation |
- Anmerkung |
+
+ | Typ |
+ Nachzureichen am |
+ Ausstellungsnation |
+ Anmerkung |
+
load->view(
+
+
+
+
+
+
+
+ load->view('system/messageList.php', $messages);
+ ?>
+
+
+
+
+
+
@@ -621,15 +645,16 @@ $this->load->view(
- | Datum |
- Notiz |
- User |
+
+ | Datum |
+ Notiz |
+ User |
+
-
+ title="text) ? strip_tags($notiz->text) : '' ?>">
| insertamum), 'd.m.Y H:i:s') ?> |
titel) ?> |
verfasser_uid ?> |
@@ -641,9 +666,11 @@ $this->load->view(
- | Datum |
- Aktivität |
- User |
+
+ | Datum |
+ Aktivität |
+ User |
+
@@ -669,11 +696,18 @@ $this->load->view(