OCA\OcSms\Db\SmsMapper::getLastMessageTimestampForAllPhonesNumbers PHP Method

getLastMessageTimestampForAllPhonesNumbers() public method

public getLastMessageTimestampForAllPhonesNumbers ( $userId, $order = true )
    public function getLastMessageTimestampForAllPhonesNumbers($userId, $order = true)
    {
        $sql = 'SELECT sms_address, MAX(sms_date) AS mx FROM ' . '*PREFIX*ocsms_smsdatas WHERE user_id = ? AND sms_mailbox IN (?,?) ' . 'GROUP BY sms_address';
        if ($order === true) {
            $sql .= ' ORDER BY mx DESC';
        }
        $query = \OCP\DB::prepare($sql);
        $result = $query->execute(array($userId, 0, 1));
        $phoneList = array();
        while ($row = $result->fetchRow()) {
            $phoneNumber = preg_replace("#[ ]#", "", $row["sms_address"]);
            if (!array_key_exists($phoneNumber, $phoneList)) {
                $phoneList[$phoneNumber] = $row["mx"];
            } else {
                if ($phoneList[$phoneNumber] < $row["mx"]) {
                    $phoneList[$phoneNumber] = $row["mx"];
                }
            }
        }
        return $phoneList;
    }