using OemrUI class in Fees > Fee Sheet, Billing, Payment, Checkout, Batch Payments...
[openemr.git] / services / MessageService.php
blob426acf9382c3a93189e8148b84ca0df16d026ebb
1 <?php
2 /**
3 * MessageService
5 * @package OpenEMR
6 * @link http://www.open-emr.org
7 * @author Matthew Vita <matthewvita48@gmail.com>
8 * @author Brady Miller <brady.g.miller@gmail.com>
9 * @copyright Copyright (c) 2018 Matthew Vita <matthewvita48@gmail.com>
10 * @copyright Copyright (c) 2018 Brady Miller <brady.g.miller@gmail.com>
11 * @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
15 namespace OpenEMR\Services;
17 use Particle\Validator\Validator;
19 class MessageService
21 public function __construct()
25 public function validate($message)
27 $validator = new Validator();
29 $validator->required('body')->lengthBetween(2, 65535);
30 $validator->required('to')->lengthBetween(2, 255);
31 $validator->required('from')->lengthBetween(2, 255);
32 $validator->required('groupname')->lengthBetween(2, 255);
33 $validator->required('title')->lengthBetween(2, 255);
34 $validator->required('message_status')->lengthBetween(2, 20);
36 return $validator->validate($message);
39 public function getFormattedMessageBody($from, $to, $body)
41 return "\n" . date("Y-m-d H:i") . " (" . $from . " to " . $to . ") " . $body;
44 public function insert($pid, $data)
46 $sql = " INSERT INTO pnotes SET";
47 $sql .= " date=NOW(),";
48 $sql .= " activity=1,";
49 $sql .= " authorized=1,";
50 $sql .= " body=?,";
51 $sql .= " pid=?,";
52 $sql .= " groupname=?,";
53 $sql .= " user=?,";
54 $sql .= " assigned_to=?,";
55 $sql .= " message_status=?,";
56 $sql .= " title=?";
58 $results = sqlInsert(
59 $sql,
60 array(
61 $this->getFormattedMessageBody($data["from"], $data["to"], $data["body"]),
62 $pid,
63 $data['groupname'],
64 $data['from'],
65 $data['to'],
66 $data['message_status'],
67 $data['title']
71 if (!$results) {
72 return false;
75 return $results;
78 public function update($pid, $mid, $data)
80 $existingBody = sqlQuery("SELECT body FROM pnotes WHERE id = ?", $mid);
82 $sql = " UPDATE pnotes SET";
83 $sql .= " body=?,";
84 $sql .= " groupname=?,";
85 $sql .= " user=?,";
86 $sql .= " assigned_to=?,";
87 $sql .= " message_status=?,";
88 $sql .= " title=?";
89 $sql .= " WHERE id=?";
91 $results = sqlStatement(
92 $sql,
93 array(
94 $existingBody["body"] . $this->getFormattedMessageBody($data["from"], $data["to"], $data["body"]),
95 $data['groupname'],
96 $data['from'],
97 $data['to'],
98 $data['message_status'],
99 $data['title'],
100 $mid
104 if (!$results) {
105 return false;
108 return $results;
111 public function delete($pid, $mid)
113 $sql = "UPDATE pnotes SET deleted=1 WHERE pid=? AND id=?";
115 return sqlStatement($sql, array($pid, $mid));