status.go
changeset 132 639bbcddb4fe
parent 130 c450bb73f59a
child 134 588edbc9e14b
equal deleted inserted replaced
131:68ef6504637e 132:639bbcddb4fe
   115 }
   115 }
   116 
   116 
   117 // GetStatus returns a status
   117 // GetStatus returns a status
   118 // The returned status can be nil if there is an error or if the
   118 // The returned status can be nil if there is an error or if the
   119 // requested ID does not exist.
   119 // requested ID does not exist.
   120 func (g *Client) GetStatus(id int) (*Status, error) {
   120 func (g *Client) GetStatus(statusID int) (*Status, error) {
   121 	var status Status
   121 	var status Status
   122 
   122 
   123 	if err := g.queryStatusData(id, "status", &status); err != nil {
   123 	if err := g.queryStatusData(statusID, "status", &status); err != nil {
   124 		return nil, err
   124 		return nil, err
   125 	}
   125 	}
   126 	if status.ID == 0 {
   126 	if status.ID == 0 {
   127 		return nil, ErrEntityNotFound
   127 		return nil, ErrEntityNotFound
   128 	}
   128 	}
   129 	return &status, nil
   129 	return &status, nil
   130 }
   130 }
   131 
   131 
   132 // GetStatusContext returns a status context
   132 // GetStatusContext returns a status context
   133 func (g *Client) GetStatusContext(id int) (*Context, error) {
   133 func (g *Client) GetStatusContext(statusID int) (*Context, error) {
   134 	var context Context
   134 	var context Context
   135 	if err := g.queryStatusData(id, "context", &context); err != nil {
   135 	if err := g.queryStatusData(statusID, "context", &context); err != nil {
   136 		return nil, err
   136 		return nil, err
   137 	}
   137 	}
   138 	return &context, nil
   138 	return &context, nil
   139 }
   139 }
   140 
   140 
   141 // GetStatusCard returns a status card
   141 // GetStatusCard returns a status card
   142 func (g *Client) GetStatusCard(id int) (*Card, error) {
   142 func (g *Client) GetStatusCard(statusID int) (*Card, error) {
   143 	var card Card
   143 	var card Card
   144 	if err := g.queryStatusData(id, "card", &card); err != nil {
   144 	if err := g.queryStatusData(statusID, "card", &card); err != nil {
   145 		return nil, err
   145 		return nil, err
   146 	}
   146 	}
   147 	return &card, nil
   147 	return &card, nil
   148 }
   148 }
   149 
   149 
   150 // GetStatusRebloggedBy returns a list of the accounts who reblogged a status
   150 // GetStatusRebloggedBy returns a list of the accounts who reblogged a status
   151 func (g *Client) GetStatusRebloggedBy(id int) ([]Account, error) {
   151 func (g *Client) GetStatusRebloggedBy(statusID int) ([]Account, error) {
   152 	var accounts []Account
   152 	var accounts []Account
   153 	err := g.queryStatusData(id, "reblogged_by", &accounts)
   153 	err := g.queryStatusData(statusID, "reblogged_by", &accounts)
   154 	return accounts, err
   154 	return accounts, err
   155 }
   155 }
   156 
   156 
   157 // GetStatusFavouritedBy returns a list of the accounts who favourited a status
   157 // GetStatusFavouritedBy returns a list of the accounts who favourited a status
   158 func (g *Client) GetStatusFavouritedBy(id int) ([]Account, error) {
   158 func (g *Client) GetStatusFavouritedBy(statusID int) ([]Account, error) {
   159 	var accounts []Account
   159 	var accounts []Account
   160 	err := g.queryStatusData(id, "favourited_by", &accounts)
   160 	err := g.queryStatusData(statusID, "favourited_by", &accounts)
   161 	return accounts, err
   161 	return accounts, err
   162 }
   162 }
   163 
   163 
   164 // PostStatus posts a new "toot"
   164 // PostStatus posts a new "toot"
   165 // All parameters but "text" can be empty.
   165 // All parameters but "text" can be empty.
   184 	}
   184 	}
   185 	return &status, err
   185 	return &status, err
   186 }
   186 }
   187 
   187 
   188 // DeleteStatus deletes a status
   188 // DeleteStatus deletes a status
   189 func (g *Client) DeleteStatus(id int) error {
   189 func (g *Client) DeleteStatus(statusID int) error {
   190 	var status Status
   190 	var status Status
   191 	o := updateStatusOptions{ID: id}
   191 	o := updateStatusOptions{ID: statusID}
   192 	err := g.updateStatusData("delete", o, &status)
   192 	err := g.updateStatusData("delete", o, &status)
   193 	return err
   193 	return err
   194 }
   194 }
   195 
   195 
   196 // ReblogStatus reblogs a status
   196 // ReblogStatus reblogs a status
   197 func (g *Client) ReblogStatus(id int) error {
   197 func (g *Client) ReblogStatus(statusID int) error {
   198 	var status Status
   198 	var status Status
   199 	o := updateStatusOptions{ID: id}
   199 	o := updateStatusOptions{ID: statusID}
   200 	err := g.updateStatusData("reblog", o, &status)
   200 	err := g.updateStatusData("reblog", o, &status)
   201 	return err
   201 	return err
   202 }
   202 }
   203 
   203 
   204 // UnreblogStatus unreblogs a status
   204 // UnreblogStatus unreblogs a status
   205 func (g *Client) UnreblogStatus(id int) error {
   205 func (g *Client) UnreblogStatus(statusID int) error {
   206 	var status Status
   206 	var status Status
   207 	o := updateStatusOptions{ID: id}
   207 	o := updateStatusOptions{ID: statusID}
   208 	err := g.updateStatusData("unreblog", o, &status)
   208 	err := g.updateStatusData("unreblog", o, &status)
   209 	return err
   209 	return err
   210 }
   210 }
   211 
   211 
   212 // FavouriteStatus favourites a status
   212 // FavouriteStatus favourites a status
   213 func (g *Client) FavouriteStatus(id int) error {
   213 func (g *Client) FavouriteStatus(statusID int) error {
   214 	var status Status
   214 	var status Status
   215 	o := updateStatusOptions{ID: id}
   215 	o := updateStatusOptions{ID: statusID}
   216 	err := g.updateStatusData("favourite", o, &status)
   216 	err := g.updateStatusData("favourite", o, &status)
   217 	return err
   217 	return err
   218 }
   218 }
   219 
   219 
   220 // UnfavouriteStatus unfavourites a status
   220 // UnfavouriteStatus unfavourites a status
   221 func (g *Client) UnfavouriteStatus(id int) error {
   221 func (g *Client) UnfavouriteStatus(statusID int) error {
   222 	var status Status
   222 	var status Status
   223 	o := updateStatusOptions{ID: id}
   223 	o := updateStatusOptions{ID: statusID}
   224 	err := g.updateStatusData("unfavourite", o, &status)
   224 	err := g.updateStatusData("unfavourite", o, &status)
   225 	return err
   225 	return err
   226 }
   226 }