1
0
mirror of https://github.com/nerzhul/ocsms.git synced 2025-06-07 16:06:15 +00:00

added argument to writeToDB to purge database entries before adding new records

This commit is contained in:
Loic Blot 2014-09-15 13:35:07 +02:00
parent 3ea5fee350
commit cd8c0e57f1
2 changed files with 11 additions and 3 deletions

View File

@ -43,7 +43,7 @@ class SmsController extends Controller {
* @NoAdminRequired
*/
public function push ($smsCount, $smsDatas) {
if ($this->checkPushStructure($smsCount, $smsDatas) === false) {
if ($this->checkPushStructure($smsCount, $smsDatas, true) === false) {
return new JSONResponse(array("status" => false, "msg" => $this->errorMsg));
}

View File

@ -20,15 +20,22 @@ class SmsMapper extends Mapper {
parent::__construct($db, 'ocsms_smsdatas');
}
public function writeToDB($userId, $smsList) {
public function writeToDB($userId, $smsList, $purgeBeforeInsert = false) {
\OCP\DB::beginTransaction();
if ($purgeBeforeInsert === true) {
$query = \OCP\DB::prepare('DELETE FROM *PREFIX*ocsms_smsdatas ' .
'WHERE user_id = ?');
$result = $query->execute(array($userId));
}
foreach ($smsList as $sms) {
$smsFlags = sprintf("%s%s",
$sms["read"] === "true" ? "1" : "0",
$sms["seen"] === "true" ? "1" : "0"
);
$query = \OC_DB::prepare('INSERT INTO *PREFIX*ocsms_smsdatas ' .
$query = \OCP\DB::prepare('INSERT INTO *PREFIX*ocsms_smsdatas ' .
'(user_id, added, lastmodified, sms_flags, sms_date, sms_id,' .
'sms_address, sms_msg, sms_mailbox, sms_type) VALUES ' .
'(?,?,?,?,?,?,?,?,?,?)');
@ -41,6 +48,7 @@ class SmsMapper extends Mapper {
}
\OCP\DB::commit();
}