(u *User, page int)
| 2122 | } |
| 2123 | |
| 2124 | func (db *datastore) GetAnonymousPosts(u *User, page int) (*[]PublicPost, error) { |
| 2125 | pagePosts := 10 |
| 2126 | start := page*pagePosts - pagePosts |
| 2127 | if page == 0 { |
| 2128 | start = 0 |
| 2129 | pagePosts = 1000 |
| 2130 | } |
| 2131 | |
| 2132 | limitStr := "" |
| 2133 | if page > 0 { |
| 2134 | limitStr = fmt.Sprintf(" LIMIT %d, %d", start, pagePosts) |
| 2135 | } |
| 2136 | rows, err := db.Query("SELECT id, view_count, title, language, created, updated, content FROM posts WHERE owner_id = ? AND collection_id IS NULL ORDER BY created DESC"+limitStr, u.ID) |
| 2137 | if err != nil { |
| 2138 | log.Error("Failed selecting from posts: %v", err) |
| 2139 | return nil, impart.HTTPError{http.StatusInternalServerError, "Couldn't retrieve user anonymous posts."} |
| 2140 | } |
| 2141 | defer rows.Close() |
| 2142 | |
| 2143 | posts := []PublicPost{} |
| 2144 | for rows.Next() { |
| 2145 | p := Post{} |
| 2146 | err = rows.Scan(&p.ID, &p.ViewCount, &p.Title, &p.Language, &p.Created, &p.Updated, &p.Content) |
| 2147 | if err != nil { |
| 2148 | log.Error("Failed scanning row: %v", err) |
| 2149 | break |
| 2150 | } |
| 2151 | p.extractData() |
| 2152 | |
| 2153 | posts = append(posts, p.processPost()) |
| 2154 | } |
| 2155 | err = rows.Err() |
| 2156 | if err != nil { |
| 2157 | log.Error("Error after Next() on rows: %v", err) |
| 2158 | } |
| 2159 | |
| 2160 | return &posts, nil |
| 2161 | } |
| 2162 | |
| 2163 | func (db *datastore) GetUserPosts(u *User) (*[]PublicPost, error) { |
| 2164 | rows, err := db.Query("SELECT p.id, p.slug, p.view_count, p.title, p.created, p.updated, p.content, p.text_appearance, p.language, p.rtl, c.alias, c.title, c.description, c.view_count FROM posts p LEFT JOIN collections c ON collection_id = c.id WHERE p.owner_id = ? ORDER BY created ASC", u.ID) |
nothing calls this directly
no test coverage detected