diff --git a/application/controllers/system/Messages.php b/application/controllers/system/Messages.php index fdce0082a..9a356a707 100755 --- a/application/controllers/system/Messages.php +++ b/application/controllers/system/Messages.php @@ -71,7 +71,7 @@ class Messages extends VileSci_Controller $v = $this->load->view("system/messageView", array("message" => $msg->retval[0])); } - public function write($msg_id, $person_id) + public function reply($msg_id, $person_id) { $msg = $this->messagelib->getMessage($msg_id, $person_id); if ($msg->error) @@ -79,10 +79,10 @@ class Messages extends VileSci_Controller show_error($msg->retval); } - $v = $this->load->view("system/messageWrite", array("message" => $msg->retval[0])); + $v = $this->load->view("system/messageReply", array("message" => $msg->retval[0])); } - public function send($msg_id, $person_id) + public function sendReply($msg_id, $person_id) { $subject = $this->input->post("subject"); $body = $this->input->post("body"); @@ -103,6 +103,44 @@ class Messages extends VileSci_Controller redirect("/system/Messages/view/" . $msg->retval . "/" . $originMsg->retval[0]->person_id); } + public function write($sender_id, $receiver_id) + { + $person = $this->PersonModel->load($receiver_id); + if ($person->error) + { + show_error($person->retval); + } + + $data = array ( + "sender_id" => $sender_id, + "receiver_id" => $receiver_id, + "receiver" => $person->retval[0] + ); + + $v = $this->load->view("system/messageWrite", $data); + } + + public function send($sender_id, $receiver_id) + { + $subject = $this->input->post("subject"); + $body = $this->input->post("body"); + + $this->load->model("system/Message_model", "MessageModel"); + $originMsg = $this->MessageModel->load($msg_id); + if ($originMsg->error) + { + show_error($originMsg->retval); + } + + $msg = $this->messagelib->sendMessage($sender_id, $receiver_id, $subject, $body, PRIORITY_NORMAL); + if ($msg->error) + { + show_error($msg->retval); + } + + redirect("/system/Messages/view/" . $msg->retval . "/" . $receiver_id); + } + private function getPersonId() { $person_id = null; diff --git a/application/models/system/Recipient_model.php b/application/models/system/Recipient_model.php index 282b7aa42..7867adba5 100644 --- a/application/models/system/Recipient_model.php +++ b/application/models/system/Recipient_model.php @@ -37,7 +37,7 @@ class Recipient_model extends DB_Model p.vorname, b.uid FROM public.tbl_msg_recipient mr INNER JOIN public.tbl_msg_message mm USING (message_id) - INNER JOIN public.tbl_person p ON (mr.person_id = p.person_id) + INNER JOIN public.tbl_person p ON (mm.person_id = p.person_id) LEFT JOIN public.tbl_benutzer b ON (mr.person_id = b.person_id) LEFT JOIN ( SELECT person_id, kontakt FROM public.tbl_kontakt WHERE kontakttyp = 'email' diff --git a/application/views/system/messageReply.php b/application/views/system/messageReply.php new file mode 100644 index 000000000..253d3f4da --- /dev/null +++ b/application/views/system/messageReply.php @@ -0,0 +1,28 @@ +load->view('templates/header'); ?> + + + +
+