Commit 98a2107f7a6f0dc6ea2ca1a3e86d1b830cfb74ff
add ability to publish avatar images
Ev Bogue committed on 6/30/2018, 2:08:10 PMParent: e123126e7f263e8ab6840196d1ed0666c79c1bcc
Files changed
package-lock.json | changed |
package.json | changed |
views.js | changed |
package-lock.json | ||
---|---|---|
The diff is too large to show. Use a local git client to view these changes. Old file size: 205304 bytes New file size: 205908 bytes |
package.json | ||
---|---|---|
@@ -16,12 +16,14 @@ | ||
16 | 16 … | }, |
17 | 17 … | "author": "Ev Bogue <ev@evbogue.com>", |
18 | 18 … | "license": "MIT", |
19 | 19 … | "dependencies": { |
20 … | + "dataurl-": "^0.1.0", | |
20 | 21 … | "decent-ws": "1.0.4", |
21 | 22 … | "deep-extend": "^0.6.0", |
22 | 23 … | "emoji-server": "^1.0.0", |
23 | 24 … | "human-time": "0.0.1", |
25 … | + "hyperfile": "^2.0.0", | |
24 | 26 … | "hyperloadmore": "^1.1.0", |
25 | 27 … | "hyperscript": "^2.0.2", |
26 | 28 … | "hyperscroll": "^1.0.0", |
27 | 29 … | "muxrpcli": "^1.1.0", |
views.js | ||
---|---|---|
@@ -1,8 +1,10 @@ | ||
1 | 1 … | var pull = require('pull-stream') |
2 | 2 … | var human = require('human-time') |
3 | 3 … | var sbot = require('./scuttlebot') |
4 | 4 … | var hyperscroll = require('hyperscroll') |
5 … | +var hyperfile = require('hyperfile') | |
6 … | +var dataurl = require('dataurl-') | |
5 | 7 … | var More = require('pull-more') |
6 | 8 … | var stream = require('hyperloadmore/stream') |
7 | 9 … | var h = require('hyperscript') |
8 | 10 … | var render = require('./render') |
@@ -139,13 +141,14 @@ | ||
139 | 141 … | screen.firstChild.insertBefore(profile, screen.firstChild.firstChild) |
140 | 142 … | } else { |
141 | 143 … | screen.firstChild.appendChild(profile) |
142 | 144 … | } |
145 … | + | |
143 | 146 … | var name = avatar.name(src) |
144 | 147 … | |
145 | 148 … | var editname = h('span', |
146 | 149 … | avatar.name(src), |
147 | - h('button.btn', 'Edit', { | |
150 … | + h('button.btn', 'New name', { | |
148 | 151 … | onclick: function () { |
149 | 152 … | var nameput = h('input', {placeholder: name.textContent}) |
150 | 153 … | var nameedit = |
151 | 154 … | h('span', nameput, |
@@ -171,12 +174,73 @@ | ||
171 | 174 … | } |
172 | 175 … | }) |
173 | 176 … | ) |
174 | 177 … | |
178 … | + var editimage = h('span', | |
179 … | + h('button.btn', 'New image', { | |
180 … | + onclick: function () { | |
181 … | + var upload = | |
182 … | + h('span', | |
183 … | + hyperfile.asDataURL(function (data) { | |
184 … | + if(data) { | |
185 … | + //img.src = data | |
186 … | + var _data = dataurl.parse(data) | |
187 … | + pull( | |
188 … | + pull.once(_data.data), | |
189 … | + sbot.addblob(function (err, hash) { | |
190 … | + if(err) return alert(err.stack) | |
191 … | + selected = { | |
192 … | + link: hash, | |
193 … | + size: _data.data.length, | |
194 … | + type: _data.mimetype, | |
195 … | + width: 512, | |
196 … | + height: 512 | |
197 … | + } | |
198 … | + }) | |
199 … | + ) | |
200 … | + } | |
201 … | + }), | |
202 … | + h('button.btn', 'Preview image', { | |
203 … | + onclick: function() { | |
204 … | + if (selected) { | |
205 … | + console.log(selected) | |
206 … | + var oldImage = document.getElementById('profileImage') | |
207 … | + var newImage = h('span.avatar--medium', h('img', {src: config.blobsUrl + selected.link})) | |
208 … | + var publish = h('button.btn', 'Publish image', { | |
209 … | + onclick: function () { | |
210 … | + sbot.publish({ | |
211 … | + type: 'about', | |
212 … | + about: src, | |
213 … | + image: selected | |
214 … | + }, function (err, published) { | |
215 … | + console.log(published) | |
216 … | + }) | |
217 … | + } | |
218 … | + }) | |
219 … | + upload.parentNode.replaceChild(publish, upload) | |
220 … | + oldImage.parentNode.replaceChild(newImage, oldImage) | |
221 … | + } | |
222 … | + /*if(selected) { | |
223 … | + api.message_confirm({ | |
224 … | + type: 'about', | |
225 … | + about: id, | |
226 … | + image: selected | |
227 … | + }) | |
228 … | + } else { alert('select an image before hitting preview')}*/ | |
229 … | + } | |
230 … | + }) | |
231 … | + ) | |
232 … | + editimage.parentNode.replaceChild(upload, editimage) | |
233 … | + } | |
234 … | + }) | |
235 … | + ) | |
236 … | + | |
175 | 237 … | var avatars = h('div.avatars', |
176 | 238 … | h('a', {href: '#' + src}, |
177 | - h('span.avatar--medium', avatar.image(src)), | |
178 | - editname | |
239 … | + h('span.avatar--medium#profileImage', avatar.image(src)), | |
240 … | + editname, | |
241 … | + h('br'), | |
242 … | + editimage | |
179 | 243 … | ) |
180 | 244 … | ) |
181 | 245 … | |
182 | 246 … | pull( |
Built with git-ssb-web