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

Fix message countries, this fix message count and conversations

This commit is contained in:
Loic Blot 2015-01-09 19:17:12 +00:00
parent f76a376635
commit 84db79a300
2 changed files with 14 additions and 14 deletions

View File

@ -164,18 +164,18 @@ class SmsController extends Controller {
if ($contactName != "" && isset($iContacts[$contactName])) {
// forall numbers in iContacts
foreach($iContacts[$contactName] as $cnumber) {
$messages = $messages + $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $cnumber, $lastDate);
$msgCount += $this->smsMapper->countMessagesForPhoneNumber($this->userId, $cnumber);
$messages = $messages + $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $cnumber, $configuredCountry, $lastDate);
$msgCount += $this->smsMapper->countMessagesForPhoneNumber($this->userId, $cnumber, $configuredCountry);
$phoneNumbers[] = PhoneNumberFormatter::format($configuredCountry, $cnumber);
}
}
else {
$messages = $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $phoneNumber, $lastDate);
$msgCount = $this->smsMapper->countMessagesForPhoneNumber($this->userId, $phoneNumber);
$messages = $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $phoneNumber, $configuredCountry, $lastDate);
$msgCount = $this->smsMapper->countMessagesForPhoneNumber($this->userId, $phoneNumber, $configuredCountry);
if(isset($peerNumber[$fmtPN])) {
foreach($peerNumber[$fmtPN] as $cnumber) {
$messages = $messages + $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $cnumber, $lastDate);
$msgCount += $this->smsMapper->countMessagesForPhoneNumber($this->userId, $cnumber);
$messages = $messages + $this->smsMapper->getAllMessagesForPhoneNumber($this->userId, $cnumber, $configuredCountry, $lastDate);
$msgCount += $this->smsMapper->countMessagesForPhoneNumber($this->userId, $cnumber, $configuredCountry);
}
}
$phoneNumbers[] = PhoneNumberFormatter::format($configuredCountry, $phoneNumber);

View File

@ -102,14 +102,14 @@ class SmsMapper extends Mapper {
/*
get all possible SMS_adresses for a given formated phonenumber
*/
public function getAllPhoneNumbersForFPN ($userId,$phoneNumber) {
public function getAllPhoneNumbersForFPN ($userId, $phoneNumber, $country) {
$query = \OCP\DB::prepare('SELECT sms_address FROM ' .
'*PREFIX*ocsms_smsdatas WHERE user_id = ? AND sms_mailbox IN (?,?)');
$result = $query->execute(array($userId, 0, 1));
$phoneList = array();
while($row = $result->fetchRow()) {
$pn = $row["sms_address"];
$fmtPN = PhoneNumberFormatter::format($pn);
$fmtPN = PhoneNumberFormatter::format($country, $pn);
if (!isset($phoneList[$fmtPN])) {
$phoneList[$fmtPN] = array();
}
@ -118,7 +118,7 @@ class SmsMapper extends Mapper {
}
$phoneList[$fmtPN][$pn] += 1;
}
$fpn = PhoneNumberFormatter::format($phoneNumber);
$fpn = PhoneNumberFormatter::format($country, $phoneNumber);
if(isset($phoneList[$fpn])){
return $phoneList[$fpn];
}
@ -127,9 +127,9 @@ class SmsMapper extends Mapper {
}
}
public function getAllMessagesForPhoneNumber ($userId, $phoneNumber, $minDate = 0) {
public function getAllMessagesForPhoneNumber ($userId, $phoneNumber, $country, $minDate = 0) {
$phlst = $this->getAllPhoneNumbersForFPN ($userId,$phoneNumber);
$phlst = $this->getAllPhoneNumbersForFPN($userId, $phoneNumber, $country);
$messageList = array();
$query = \OCP\DB::prepare('SELECT sms_date, sms_msg, sms_type FROM ' .
'*PREFIX*ocsms_smsdatas WHERE user_id = ? AND sms_address = ? ' .
@ -148,9 +148,9 @@ class SmsMapper extends Mapper {
return $messageList;
}
public function countMessagesForPhoneNumber ($userId, $phoneNumber) {
public function countMessagesForPhoneNumber ($userId, $phoneNumber, $country) {
$cnt = 0;
$phlst = $this->getAllPhoneNumbersForFPN ($userId,$phoneNumber);
$phlst = $this->getAllPhoneNumbersForFPN ($userId, $phoneNumber, $country);
$query = \OCP\DB::prepare('SELECT count(sms_date) as ct FROM ' .
'*PREFIX*ocsms_smsdatas WHERE user_id = ? AND sms_address = ? ' .