Open ashkart opened 4 years ago
UPD: Попробовал workaround, создал новый трейт, засунул в него трейт InlineCalendar, переопределил метод, чтоб он возвращал sendTextMessage(), который существует, возможно раньше он как раз назывался showTextMessage, но не попал в рефакторинг после переименования в api Longman'а, не знаю. Но теперь календарь рисуется и ничего не крашится.
<?php
namespace Application\Library\InlineCalendar;
use CaliforniaMountainSnake\InlineCalendar\CalendarConfig;
use Longman\TelegramBot\Entities\Keyboard;
use Longman\TelegramBot\Entities\ServerResponse;
trait InlineCalendar
{
use \CaliforniaMountainSnake\InlineCalendar\InlineCalendar;
protected function showCalendarMessage(
CalendarConfig $config,
string $messageText,
?array $errors = null,
Keyboard $keyboard = null
): ServerResponse
{
$this->setCalendarNotes($config, [$this->getNoteNameIsFirstCalendarLaunch() => false]);
return $this->sendTextMessage($messageText, $errors, $keyboard);
}
}
Привет! В трейте нет такого метода, исполнение падает в этом месте, тк InlineCalendar::showCalendarMessage() возвращает null, хотя ожидается ServerResponse. Что там на самом деле должно быть? Вот код из трейта: