summaryrefslogtreecommitdiffstats
path: root/store/sqlstore/emoji_store.go
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2018-01-19 09:37:59 -0500
committerHarrison Healey <harrisonmhealey@gmail.com>2018-01-19 09:37:59 -0500
commita8445775351c32f8a12081f60bda2099571b2758 (patch)
treebf5a6aace4bb5f4356d9103fbe1d68468e88ea22 /store/sqlstore/emoji_store.go
parent9d6a9ff4be15f673e8364a984ccc2b2c3a465b73 (diff)
downloadchat-a8445775351c32f8a12081f60bda2099571b2758.tar.gz
chat-a8445775351c32f8a12081f60bda2099571b2758.tar.bz2
chat-a8445775351c32f8a12081f60bda2099571b2758.zip
Add sort query parameter to GET /emojis (#8121)
Diffstat (limited to 'store/sqlstore/emoji_store.go')
-rw-r--r--store/sqlstore/emoji_store.go19
1 files changed, 10 insertions, 9 deletions
diff --git a/store/sqlstore/emoji_store.go b/store/sqlstore/emoji_store.go
index 9ef071f02..734190dbb 100644
--- a/store/sqlstore/emoji_store.go
+++ b/store/sqlstore/emoji_store.go
@@ -123,18 +123,19 @@ func (es SqlEmojiStore) GetByName(name string) store.StoreChannel {
})
}
-func (es SqlEmojiStore) GetList(offset, limit int) store.StoreChannel {
+func (es SqlEmojiStore) GetList(offset, limit int, sort string) store.StoreChannel {
return store.Do(func(result *store.StoreResult) {
var emoji []*model.Emoji
- if _, err := es.GetReplica().Select(&emoji,
- `SELECT
- *
- FROM
- Emoji
- WHERE
- DeleteAt = 0
- LIMIT :Limit OFFSET :Offset`, map[string]interface{}{"Offset": offset, "Limit": limit}); err != nil {
+ query := "SELECT * FROM Emoji WHERE DeleteAt = 0"
+
+ if sort == model.EMOJI_SORT_BY_NAME {
+ query += " ORDER BY Name"
+ }
+
+ query += " LIMIT :Limit OFFSET :Offset"
+
+ if _, err := es.GetReplica().Select(&emoji, query, map[string]interface{}{"Offset": offset, "Limit": limit}); err != nil {
result.Err = model.NewAppError("SqlEmojiStore.GetList", "store.sql_emoji.get_all.app_error", nil, err.Error(), http.StatusInternalServerError)
} else {
result.Data = emoji