From 0af746b06b77914123e4f9af8c9bca855017d041 Mon Sep 17 00:00:00 2001 From: michaelr Date: Wed, 30 Mar 2016 00:12:27 +0300 Subject: [PATCH] adjust code to work with 'Contact' - >:contact, fix bug Former-commit-id: c6a589bd4b2fb26b9f9147a6fb9ee0b2b813735b --- syng-im/src/syng_im/handlers.cljs | 5 +++-- syng-im/src/syng_im/models/chat.cljs | 6 +++--- syng-im/src/syng_im/models/chats.cljs | 9 ++++++--- syng-im/src/syng_im/models/contacts.cljs | 4 ++-- syng-im/src/syng_im/persistence/realm.cljs | 2 +- 5 files changed, 15 insertions(+), 11 deletions(-) diff --git a/syng-im/src/syng_im/handlers.cljs b/syng-im/src/syng_im/handlers.cljs index 225f4c0549..790fed7eb3 100644 --- a/syng-im/src/syng_im/handlers.cljs +++ b/syng-im/src/syng_im/handlers.cljs @@ -61,8 +61,9 @@ (set-initialized true)))) (register-handler :received-msg - (fn [db [_ {chat-id :from - msg-id :msg-id :as msg}]] + (fn [db [action {chat-id :from + msg-id :msg-id :as msg}]] + (log/debug action "msg" msg) (save-message chat-id msg) (-> db (create-chat chat-id [chat-id]) diff --git a/syng-im/src/syng_im/models/chat.cljs b/syng-im/src/syng_im/models/chat.cljs index 1b773d21c6..dba7b41a27 100644 --- a/syng-im/src/syng_im/models/chat.cljs +++ b/syng-im/src/syng_im/models/chat.cljs @@ -9,9 +9,9 @@ (defn signal-chat-updated [db chat-id] (update-in db (db/updated-chat-signal-path chat-id) (fn [current] - (if current - (inc current) - 0)))) + (if current + (inc current) + 0)))) (defn chat-updated? [db chat-id] (->> (db/updated-chat-signal-path chat-id) diff --git a/syng-im/src/syng_im/models/chats.cljs b/syng-im/src/syng_im/models/chats.cljs index 35bcfa9551..8f801a4828 100644 --- a/syng-im/src/syng_im/models/chats.cljs +++ b/syng-im/src/syng_im/models/chats.cljs @@ -2,7 +2,8 @@ (:require [syng-im.persistence.realm :as r] [syng-im.utils.random :refer [timestamp]] [clojure.string :refer [join blank?]] - [syng-im.db :as db])) + [syng-im.db :as db] + [syng-im.utils.logging :as log])) (defn signal-chats-updated [db] (update-in db db/updated-chats-signal-path (fn [current] @@ -32,9 +33,11 @@ ([db chat-id identities] (create-chat db chat-id identities nil)) ([db chat-id identities chat-name] - (when-not (r/exists? :chats :chat-id chat-id) + (if (r/exists? :chats :chat-id chat-id) + db (let [chat-name (or chat-name - (get-chat-name chat-id identities))] + (get-chat-name chat-id identities)) + _ (log/debug "creating chat" chat-name)] (r/write (fn [] (let [group-chat? (> (count identities) 1) diff --git a/syng-im/src/syng_im/models/contacts.cljs b/syng-im/src/syng_im/models/contacts.cljs index 53686a3298..f96fccec28 100644 --- a/syng-im/src/syng_im/models/contacts.cljs +++ b/syng-im/src/syng_im/models/contacts.cljs @@ -48,7 +48,7 @@ :whisper-identity "abc" :name "fake" :photo-path ""}] - (realm/get-list "Contact"))) + (realm/get-list :contacts))) (defn load-syng-contacts [db] (let [contacts (map (fn [contact] @@ -61,7 +61,7 @@ (assoc db :contacts contacts))) (defn- create-contact [{:keys [phone-number whisper-identity name photo-path]}] - (realm/create "Contact" + (realm/create :contacts {:phone-number phone-number :whisper-identity whisper-identity :name (or name "") diff --git a/syng-im/src/syng_im/persistence/realm.cljs b/syng-im/src/syng_im/persistence/realm.cljs index 5716d46e34..103e34eb91 100644 --- a/syng-im/src/syng_im/persistence/realm.cljs +++ b/syng-im/src/syng_im/persistence/realm.cljs @@ -114,7 +114,7 @@ (.-length objs)) (defn get-list [schema-name] - (vals (js->clj (.objects realm schema-name) :keywordize-keys true))) + (vals (js->clj (.objects realm (to-string schema-name)) :keywordize-keys true))) (comment