diff --git a/src/cocoatweet/api/status/status.cc b/src/cocoatweet/api/status/status.cc index ce9d288..4f066a2 100644 --- a/src/cocoatweet/api/status/status.cc +++ b/src/cocoatweet/api/status/status.cc @@ -13,6 +13,14 @@ CocoaTweet::API::Model::Tweet Status::Update(const std::string& _status) const { return update.process(oauth_); } +CocoaTweet::API::Model::Tweet Status::Update(const std::string& _status, + std::vector _mediaId) const { + CocoaTweet::API::Statuses::Update update; + update.status(_status); + update.mediaId(_mediaId); + return update.process(oauth_); +} + CocoaTweet::API::Model::Tweet Status::Destroy(const std::string& _id) const { CocoaTweet::API::Statuses::Destroy destroy; destroy.id(_id); diff --git a/src/cocoatweet/api/status/status.h b/src/cocoatweet/api/status/status.h index b5919da..ce0f976 100644 --- a/src/cocoatweet/api/status/status.h +++ b/src/cocoatweet/api/status/status.h @@ -4,6 +4,7 @@ #include "cocoatweet/api/interface/groupInterface.h" #include "cocoatweet/oauth/oauth.h" #include +#include namespace CocoaTweet::API::Statuses { class Status : public groupInterface { @@ -11,6 +12,10 @@ public: Status() = default; Status(std::shared_ptr _oauth); CocoaTweet::API::Model::Tweet Update(const std::string& _status) const; + + CocoaTweet::API::Model::Tweet Update(const std::string& _status, + std::vector _mediaId) const; + CocoaTweet::API::Model::Tweet Destroy(const std::string& _id) const; private: diff --git a/src/cocoatweet/api/status/update.cc b/src/cocoatweet/api/status/update.cc index e6e8612..df13b6d 100644 --- a/src/cocoatweet/api/status/update.cc +++ b/src/cocoatweet/api/status/update.cc @@ -1,4 +1,5 @@ #include "cocoatweet/api/status/update.h" +#include namespace CocoaTweet::API::Statuses { Update::Update() { @@ -11,6 +12,10 @@ void Update::status(const std::string _status) { bodyParam_.insert_or_assign("status", status_); } +void Update::mediaId(const std::vector _media) { + bodyParam_.insert_or_assign("media_ids", CocoaTweet::Util::join(_media, ",")); +} + CocoaTweet::API::Model::Tweet Update::process(std::weak_ptr _oauth) { CocoaTweet::API::Model::Tweet tweet; HttpPost::process(_oauth, diff --git a/src/cocoatweet/api/status/update.h b/src/cocoatweet/api/status/update.h index 90fa54e..640e1bb 100644 --- a/src/cocoatweet/api/status/update.h +++ b/src/cocoatweet/api/status/update.h @@ -4,12 +4,16 @@ #include #include #include +#include namespace CocoaTweet::API::Statuses { class Update : public CocoaTweet::API::Interface::HttpPost { public: Update(); void status(const std::string _status); + + void mediaId(const std::vector _media); + CocoaTweet::API::Model::Tweet process(std::weak_ptr _oauth); private: