add lists to user home
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package pixelapi
|
||||
|
||||
import "time"
|
||||
|
||||
// API error constants
|
||||
const (
|
||||
ListNotFoundError = "list_not_found"
|
||||
@@ -7,22 +9,23 @@ const (
|
||||
|
||||
// List information object from the pixeldrain API
|
||||
type List struct {
|
||||
Success bool `json:"success"`
|
||||
ID string `json:"id"`
|
||||
Title string `json:"title"`
|
||||
DateCreated int64 `json:"date_created"`
|
||||
Success bool `json:"success"`
|
||||
ID string `json:"id"`
|
||||
Title string `json:"title"`
|
||||
DateCreated time.Time `json:"date_created"`
|
||||
FileCount int `json:"file_count"`
|
||||
Files []ListFile
|
||||
}
|
||||
|
||||
// ListFile information object from the pixeldrain API
|
||||
type ListFile struct {
|
||||
ID string `json:"id"`
|
||||
DetailHREF string `json:"detail_href"`
|
||||
FileName string `json:"file_name"`
|
||||
Description string `json:"description"`
|
||||
DateCreated int64 `json:"date_created"`
|
||||
DateLastView int64 `json:"date_last_view"`
|
||||
ListDescription string `json:"list_description"`
|
||||
ID string `json:"id"`
|
||||
DetailHREF string `json:"detail_href"`
|
||||
FileName string `json:"file_name"`
|
||||
Description string `json:"description"`
|
||||
DateCreated time.Time `json:"date_created"`
|
||||
DateLastView time.Time `json:"date_last_view"`
|
||||
ListDescription string `json:"list_description"`
|
||||
}
|
||||
|
||||
// GetList get a List from the pixeldrain API. Errors will be available through
|
||||
|
@@ -48,7 +48,7 @@ type SuccessResponse struct {
|
||||
func (p *PixelAPI) jsonRequest(method, url string, target interface{}) error {
|
||||
req, err := http.NewRequest(method, url, nil)
|
||||
if err != nil {
|
||||
return &Error{
|
||||
return Error{
|
||||
ReqError: true,
|
||||
Success: false,
|
||||
Value: err.Error(),
|
||||
@@ -62,7 +62,7 @@ func (p *PixelAPI) jsonRequest(method, url string, target interface{}) error {
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
return &Error{
|
||||
return Error{
|
||||
ReqError: true,
|
||||
Success: false,
|
||||
Value: err.Error(),
|
||||
|
@@ -79,3 +79,21 @@ func (p *PixelAPI) UserFiles(page, limit int) (resp *UserFiles, err error) {
|
||||
}
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
type UserLists struct {
|
||||
Success bool `json:"success"`
|
||||
Lists []List `json:"lists"`
|
||||
}
|
||||
|
||||
func (p *PixelAPI) UserLists(page, limit int) (resp *UserLists, err error) {
|
||||
resp = &UserLists{Lists: make([]List, 0)}
|
||||
err = p.jsonRequest(
|
||||
"GET",
|
||||
fmt.Sprintf("%s/user/lists?page=%d&limit=%d", p.apiEndpoint, page, limit),
|
||||
resp,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return resp, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user