summaryrefslogtreecommitdiffstats
path: root/api/preference.go
diff options
context:
space:
mode:
authorhmhealey <harrisonmhealey@gmail.com>2015-10-15 15:09:40 -0400
committerhmhealey <harrisonmhealey@gmail.com>2015-10-15 15:17:07 -0400
commit327b0b5a2119ae888c812f682b3934061b8f59bf (patch)
treed2b91e8649a68ec0b87e4e7349d29965a664b43a /api/preference.go
parent4b99e1714029689f27ebf4cb078c60367b0594a4 (diff)
downloadchat-327b0b5a2119ae888c812f682b3934061b8f59bf.tar.gz
chat-327b0b5a2119ae888c812f682b3934061b8f59bf.tar.bz2
chat-327b0b5a2119ae888c812f682b3934061b8f59bf.zip
Added an initial call to get all user preferences on page load
Diffstat (limited to 'api/preference.go')
-rw-r--r--api/preference.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/api/preference.go b/api/preference.go
index 3a0535473..6d6ac1a7f 100644
--- a/api/preference.go
+++ b/api/preference.go
@@ -14,11 +14,22 @@ func InitPreference(r *mux.Router) {
l4g.Debug("Initializing preference api routes")
sr := r.PathPrefix("/preferences").Subrouter()
+ sr.Handle("/", ApiUserRequired(getAllPreferences)).Methods("GET")
sr.Handle("/save", ApiUserRequired(savePreferences)).Methods("POST")
sr.Handle("/{category:[A-Za-z0-9_]+}", ApiUserRequired(getPreferenceCategory)).Methods("GET")
sr.Handle("/{category:[A-Za-z0-9_]+}/{name:[A-Za-z0-9_]+}", ApiUserRequired(getPreference)).Methods("GET")
}
+func getAllPreferences(c *Context, w http.ResponseWriter, r *http.Request) {
+ if result := <-Srv.Store.Preference().GetAll(c.Session.UserId); result.Err != nil {
+ c.Err = result.Err
+ } else {
+ data := result.Data.(model.Preferences)
+
+ w.Write([]byte(data.ToJson()))
+ }
+}
+
func savePreferences(c *Context, w http.ResponseWriter, r *http.Request) {
preferences, err := model.PreferencesFromJson(r.Body)
if err != nil {