/** * Get SMS list. * * @param null $start_date * @param null $end_date * @return array|mixed */ public function getSmsList($start_date = null, $end_date = null) { if ($this->token) { $response = $this->sendGetRequest(self::GET_SMS_LIST, array('start_date' => $start_date, 'end_date' => $end_date)); if ($response) { array_walk($response->list, function (&$item) { $date_time = AB_DateTimeUtils::UTCToWPTimeZone($item->datetime); $item->date = AB_DateTimeUtils::formatDate($date_time); $item->time = AB_DateTimeUtils::formatTime($date_time); $item->message = nl2br($item->message); $item->phone = '+' . $item->phone; $item->charge = rtrim($item->charge, '0'); switch ($item->status) { case 1: case 10: $item->status = __('Queued', 'bookly'); $item->charge = '$' . $item->charge; break; case 2: case 16: $item->status = __('Error', 'bookly'); $item->charge = ''; break; case 3: $item->status = __('Out of credit', 'bookly'); $item->charge = ''; break; case 4: $item->status = __('Country out of service', 'bookly'); $item->charge = ''; break; case 11: $item->status = __('Sending', 'bookly'); $item->charge = '$' . $item->charge; break; case 12: $item->status = __('Sent', 'bookly'); $item->charge = '$' . $item->charge; break; case 13: $item->status = __('Delivered', 'bookly'); $item->charge = '$' . $item->charge; break; case 14: $item->status = __('Failed', 'bookly'); $item->charge = '$' . $item->charge; break; case 15: $item->status = __('Undelivered', 'bookly'); $item->charge = '$' . $item->charge; break; default: $item->status = __('Error', 'bookly'); $item->charge = ''; } }); return $response; } } return array(); }