diff --git a/src/Steein/SDK/SteeinResponse.php b/src/Steein/SDK/SteeinResponse.php index d835cb0..9c3b844 100644 --- a/src/Steein/SDK/SteeinResponse.php +++ b/src/Steein/SDK/SteeinResponse.php @@ -32,8 +32,10 @@ use Steein\SDK\Exceptions\SteeinSDKException; use Steein\SDK\Interfaces\SteeinResponseInterface; use Steein\SDK\Support\ModelFactory; -use Steein\SDK\Support\Models\MediaModel; +use Steein\SDK\Support\Models\FollowersModel; +use Steein\SDK\Support\Models\FollowingModel; use Steein\SDK\Support\Models\PostModel; +use Steein\SDK\Support\Models\PostsModel; use Steein\SDK\Support\Models\UserModel; /** @@ -287,18 +289,37 @@ public function getApiObject($subclassName = null) } /** - * Удобный способ для создания коллекции ApiUser. + * Инициализация коллекции UserModel. * * @return Support\Model|UserModel - * @throws SteeinSDKException */ public function getUserModel() { return $this->factory->makeModel(UserModel::class); } - /** - * Удобный способ для создания коллекции ApiPost. + /*** + * Инициализация коллекции FollowersModel. + * + * @return Support\Model|FollowersModel + */ + public function getFollowersModel() + { + return $this->factory->makeModel(FollowersModel::class); + } + + /*** + * Инициализация коллекции FollowingModel. + * + * @return Support\Model|FollowingModel + */ + public function getFollowingModel() + { + return $this->factory->makeModel(FollowingModel::class); + } + + /*** + * Инициализация коллекции PostModel. * * @return Support\Model|PostModel */ @@ -307,14 +328,24 @@ public function getPostModel() return $this->factory->makeModel(PostModel::class); } - /** - * Удобный способ для создания коллекции MediaModel. + /*** + * Инициализация коллекции PostsModel. * - * @return Support\Model|MediaModel - * @throws SteeinSDKException + * @return Support\Model|PostsModel + */ + public function getPostsModel() + { + return $this->factory->makeModel(PostsModel::class); + } + + /*** + * Инициализация коллекции CommentModel. + * + * @return Support\Model|CommentModel */ - public function getMediaModel() + public function getCommentModel() { - return $this->factory->makeModel(MediaModel::class); + return $this->factory->makeModel(CommentModel::class); } + } diff --git a/src/Steein/SDK/Support/Model.php b/src/Steein/SDK/Support/Model.php index d7c6812..5b9e82f 100644 --- a/src/Steein/SDK/Support/Model.php +++ b/src/Steein/SDK/Support/Model.php @@ -133,8 +133,8 @@ public function isIso8601DateString($string) public function shouldCastAsDateTime($key) { return in_array($key, [ - 'created_at', - 'updated_at', + 'created_', + 'updated', 'start_time', 'end_time', 'backdated_time', diff --git a/src/Steein/SDK/Support/Models/MediaFinally.php b/src/Steein/SDK/Support/Models/MediaFinally.php deleted file mode 100644 index cbe2307..0000000 --- a/src/Steein/SDK/Support/Models/MediaFinally.php +++ /dev/null @@ -1,68 +0,0 @@ -get('media_id'); - } - - /** - * Возвращает Размер файла - * - * @return integer - */ - public function getSize() { - return $this->get('size'); - } - - /** - * Возвращает Тип файла - * - * @return string - */ - public function getImageType() - { - return $this->get('image_type'); - } -} \ No newline at end of file diff --git a/src/Steein/SDK/Support/Models/MediaModel.php b/src/Steein/SDK/Support/Models/MediaModel.php deleted file mode 100644 index 253757f..0000000 --- a/src/Steein/SDK/Support/Models/MediaModel.php +++ /dev/null @@ -1,58 +0,0 @@ - MediaFinally::class - ]; - - /** - * Возвращает Статус добавления - * - * @return integer - */ - public function getStatus() - { - return $this->get('status'); - } -} diff --git a/src/Steein/SDK/Support/Models/PostHashTag.php b/src/Steein/SDK/Support/Models/PostHashTag.php deleted file mode 100644 index d67b875..0000000 --- a/src/Steein/SDK/Support/Models/PostHashTag.php +++ /dev/null @@ -1,50 +0,0 @@ -get('text'); - } -} diff --git a/src/Steein/SDK/Support/Models/PostMedia.php b/src/Steein/SDK/Support/Models/PostMedia.php deleted file mode 100644 index 049a8f1..0000000 --- a/src/Steein/SDK/Support/Models/PostMedia.php +++ /dev/null @@ -1,29 +0,0 @@ -get('image'); - } -} \ No newline at end of file diff --git a/src/Steein/SDK/Support/Models/PostModel.php b/src/Steein/SDK/Support/Models/PostModel.php deleted file mode 100644 index f42377c..0000000 --- a/src/Steein/SDK/Support/Models/PostModel.php +++ /dev/null @@ -1,91 +0,0 @@ - PostHashTag::class, - 'user_definition' => UserDefinition::class, - 'media' => PostMedia::class, - 'user' => PostUser::class - ]; - - /** - * Возвращает ID записи - * - * @return integer - */ - public function getId() - { - return $this->get('id'); - } - - /** - * Возвращает ID автора - * - * @return integer - */ - public function getUserId() - { - return $this->get('user_id'); - } - - /** - * Возвращает полный текст записи - * - * @return string - */ - public function getText() - { - return $this->get('text'); - } - - /** - * Возвращает Дату создания записи - * - * @return string - */ - public function getCreatedAt() - { - return $this->get('created_at'); - } -} diff --git a/src/Steein/SDK/Support/Models/PostUser.php b/src/Steein/SDK/Support/Models/PostUser.php deleted file mode 100644 index c0c3664..0000000 --- a/src/Steein/SDK/Support/Models/PostUser.php +++ /dev/null @@ -1,99 +0,0 @@ -get('id'); - } - - /** - * Возвращает Имя и Фамилию - * - * @return string|null - */ - public function getName() - { - return $this->get('name'); - } - - /** - * Возвращает Имя пользователя - * - * @return string|null - */ - public function getUserName() - { - return $this->get('username'); - } - - /** - * Возвращает путь к учетной записи - * - * @return string - */ - public function getAccountUrl() - { - return $this->get('account_url'); - } - - /** - * Возвращает путь к аватарке - * - * @return boolean - */ - public function getProfileImageUrl() - { - return $this->get('profile_image_url'); - } - - /** - * Возвращает используемую локализацию - * - * @return string|null - */ - public function getLanguage() - { - return $this->get('language'); - } -} \ No newline at end of file diff --git a/src/Steein/SDK/Support/Models/UserDefinition.php b/src/Steein/SDK/Support/Models/UserDefinition.php deleted file mode 100644 index d205467..0000000 --- a/src/Steein/SDK/Support/Models/UserDefinition.php +++ /dev/null @@ -1,75 +0,0 @@ -get('id'); - } - - /** - * Возвращает Имя пользователя - * - * @return string|null - */ - public function getUserName() - { - return $this->get('username'); - } - - /** - * Возвращает Имя и Фамилию - * - * @return string|null - */ - public function getName() - { - return $this->get('name'); - } - - /** - * Возвращает статус проверенных учетных записей - * - * @return boolean - */ - public function getVerified() - { - return $this->get('verified'); - } -} diff --git a/src/Steein/SDK/Support/Models/UserModel.php b/src/Steein/SDK/Support/Models/UserModel.php index fc3e2d3..7e94d74 100644 --- a/src/Steein/SDK/Support/Models/UserModel.php +++ b/src/Steein/SDK/Support/Models/UserModel.php @@ -37,38 +37,68 @@ */ class UserModel extends Model { - /** - * Возвращает ID в ввиде строки - * - * @return string|null - */ - public function getId() - { - return $this->get('id'); - } + /*** + * Возвращает идентификатор пользователя + * + * @return integer + */ + public function getId() + { + return $this->get('id'); + } + + /*** + * Возвращает адрес электронной почты + * + * @return string|null + */ + public function getEmail() + { + return $this->get('email'); + } - /** - * Возвращает Имя пользователя + /*** + * Возвращает индивидуальное имя пользователя + * + * @return string|null + */ + public function getUsername() + { + return $this->get('username'); + } + + /*** + * Возвращает полное имя и фамилию + * + * @return string|null + */ + public function getDisplayName() + { + return $this->get('displayName'); + } + + /*** + * Возращает Имя * * @return string|null */ - public function getUserName() + public function getFirstName() { - return $this->get('username'); + return $this->get('name')['first_name']; } - /** - * Возвращает Имя и Фамилию + /*** + * Возращает Фамилию * * @return string|null */ - public function getFullName() + public function getLastName() { - return $this->get('displayName'); + return $this->get('name')['last_name']; } - /** - * Возвращает Описание + /*** + * Возращает информацию "О себе" * * @return string|null */ @@ -77,83 +107,73 @@ public function getDescription() return $this->get('description'); } - /** - * Возвращает полный адрес + /*** + * Возвращает Страну и Город * * @return string|null - */ + */ public function getCountry() { return $this->get('country'); } - /** - * Возвращает Email + /*** + * Возращает ссылку на учетную записи в Steein * * @return string|null - */ - public function getEmail() - { - return $this->get('email'); - } - - /** - * Возвращает путь к учетной записи - * - * @return string - */ + */ public function getLink() { - return $this->get('url'); + return $this->get('link'); } - /** - * Возвращает используемую локализацию + /*** + * Возвращает статус "Подтврежденной страницы" * - * @return string|null - */ - public function getLocale() + * @return integer + */ + public function getVerified() { - return $this->get('locale'); + return $this->get('verified'); } - /** - * Возвращает статус проверенных учетных записей + /*** + * Возвращает аватарку * - * @return boolean - */ - public function getVerified() + * @return string|null + */ + public function getAvatar() { - return $this->get('verified'); + return $this->get('avatar'); } - /** - * Возвращает счетчик подписчиков + /*** + * Возвращает количество подписчиков * * @return integer */ - public function getFollowersCount() + public function getCountFollowers() { - return (int)$this->get('additional')['followers_count']; + return $this->get('action')['followers']; } - /** - * Возвращает счетчик подписок + /*** + * Возвращает количество пидписок * * @return integer */ - public function getFollowingCount() + public function getCountFollowing() { - return (int)$this->get('additional')['following_count']; + return $this->get('action')['following']; } - /** - * Возвращает счетчик записей + /*** + * Возвращает количество записей * * @return integer */ - public function getPostsCount() + public function getCountPosts() { - return (int)$this->get('additional')['posts_count']; + return $this->get('action')['posts']; } } \ No newline at end of file diff --git a/src/Steein/SDK/Support/SignatureParameters.php b/src/Steein/SDK/Support/SignatureParameters.php index 3b01006..9e17c8e 100644 --- a/src/Steein/SDK/Support/SignatureParameters.php +++ b/src/Steein/SDK/Support/SignatureParameters.php @@ -59,7 +59,7 @@ abstract class SignatureParameters * * @const string */ - const BASE_OBJECT_PREFIX = '\\Steein\\SDK\\Support\\Models\\'; + const BASE_OBJECT_PREFIX = '\\Steein\\SDK\\Support\\Models'; /** * Объект ответа от Api.