added identicons for default profile pictures

This commit is contained in:
Adrian Tiberius 2016-06-21 15:23:19 +03:00
parent 7459b63251
commit eab8dd5ca2
5 changed files with 17 additions and 4 deletions

View File

@ -18,7 +18,8 @@
"react-native-linear-gradient", "react-native-linear-gradient",
"react-native-android-sms-listener", "react-native-android-sms-listener",
"react-native-camera", "react-native-camera",
"react-native-qrcode" "react-native-qrcode",
"identicon.js"
], ],
"imageDirs": [ "imageDirs": [
"images" "images"

View File

@ -7,6 +7,7 @@
}, },
"dependencies": { "dependencies": {
"awesome-phonenumber": "^1.0.13", "awesome-phonenumber": "^1.0.13",
"identicon.js": "github:status-im/identicon.js",
"react": "^0.14.5", "react": "^0.14.5",
"react-native": "^0.24.1", "react-native": "^0.24.1",
"react-native-action-button": "^1.1.4", "react-native-action-button": "^1.1.4",

View File

@ -7,6 +7,7 @@
image image
linear-gradient linear-gradient
touchable-highlight]] touchable-highlight]]
[status-im.utils.identicon :refer [identicon]]
[status-im.components.toolbar :refer [toolbar]] [status-im.components.toolbar :refer [toolbar]]
[status-im.components.drawer.view :refer [drawer-view open-drawer]] [status-im.components.drawer.view :refer [drawer-view open-drawer]]
[status-im.components.styles :refer [color-purple [status-im.components.styles :refer [color-purple
@ -71,7 +72,7 @@
:custom-content toolbar-title :custom-content toolbar-title
:action {:image {:source {:uri :icon_add} :action {:image {:source {:uri :icon_add}
:style icon-search} :style icon-search}
:handler #(dispatch [:add-new-contact new-contact])}}] :handler #(dispatch [:add-new-contact (merge new-contact {:photo-path (identicon whisper-identity 40)})])}}]
[view st/form-container [view st/form-container
[contact-whisper-id-input whisper-identity] [contact-whisper-id-input whisper-identity]
[contact-name-input name] [contact-name-input name]

View File

@ -1,5 +1,6 @@
(ns status-im.models.contacts (ns status-im.models.contacts
(:require [status-im.persistence.realm :as r] (:require [status-im.persistence.realm :as r]
[status-im.utils.identicon :refer [identicon]]
[status-im.persistence.realm-queries :refer [include-query [status-im.persistence.realm-queries :refer [include-query
exclude-query]])) exclude-query]]))
@ -8,9 +9,9 @@
(r/sorted :name :asc) (r/sorted :name :asc)
r/collection->map)) r/collection->map))
(defn create-contact [{:keys [name photo-path] :as contact}] (defn create-contact [{:keys [name photo-path whisper-identity] :as contact}]
(->> {:name (or name "") (->> {:name (or name "")
:photo-path (or photo-path "")} :photo-path (or photo-path (identicon whisper-identity 40))}
(merge contact) (merge contact)
(r/create :contacts))) (r/create :contacts)))

View File

@ -0,0 +1,9 @@
(ns status-im.utils.identicon
(:require [clojure.string :as s]
[status-im.utils.utils :as u]))
(def identicon-js (u/require "identicon.js"))
(defn identicon [hash options]
(str "data:image/png;base64," (.toString (new identicon-js hash options))))