Commit 9ac76bea4f88cc5ca22ff5d5f4a4c06980dda5b8
fix spacing and recursive error when fetching thread messages
Ev Bogue committed on 2/13/2019, 5:50:50 AMParent: 73e7d576ed222947d6e6508457bf26c7868b1786
Files changed
views.js | changed |
views.js | ||
---|---|---|
@@ -274,191 +274,193 @@ | ||
274 | 274 | } |
275 | 275 | |
276 | 276 | var userStream = function (src) { |
277 | 277 | var content = h('div.content') |
278 | - var screen = document.getElementById('screen') | |
279 | - screen.appendChild(hyperscroll(content)) | |
280 | - function createStream (opts) { | |
281 | - return pull( | |
282 | - More(sbot.userStream, opts, ['value', 'sequence']), | |
283 | - pull.map(function (msg) { | |
284 | - return render(h('div', msg)) | |
285 | - }) | |
286 | - ) | |
287 | - } | |
278 | + var screen = document.getElementById('screen') | |
288 | 279 | |
289 | - pull( | |
290 | - createStream({old: false, limit: 10, id: src}), | |
291 | - stream.top(content) | |
292 | - ) | |
280 | + screen.appendChild(hyperscroll(content)) | |
293 | 281 | |
294 | - pull( | |
295 | - createStream({reverse: true, live: false, limit: 10, id: src}), | |
296 | - stream.bottom(content) | |
282 | + function createStream (opts) { | |
283 | + return pull( | |
284 | + More(sbot.userStream, opts, ['value', 'sequence']), | |
285 | + pull.map(function (msg) { | |
286 | + return render(h('div', msg)) | |
287 | + }) | |
297 | 288 | ) |
289 | + } | |
298 | 290 | |
299 | - var profile = h('div.content#profile', h('div.message')) | |
291 | + pull( | |
292 | + createStream({old: false, limit: 10, id: src}), | |
293 | + stream.top(content) | |
294 | + ) | |
300 | 295 | |
301 | - if (screen.firstChild.firstChild) { | |
302 | - screen.firstChild.insertBefore(profile, screen.firstChild.firstChild) | |
303 | - } else { | |
304 | - screen.firstChild.appendChild(profile) | |
305 | - } | |
296 | + pull( | |
297 | + createStream({reverse: true, live: false, limit: 10, id: src}), | |
298 | + stream.bottom(content) | |
299 | + ) | |
306 | 300 | |
307 | - var name = avatar.name(src) | |
301 | + var profile = h('div.content#profile', h('div.message')) | |
308 | 302 | |
309 | - var editname = h('span', | |
310 | - avatar.name(src), | |
311 | - h('button.btn', 'New name', { | |
312 | - onclick: function () { | |
313 | - var nameput = h('input', {placeholder: name.textContent}) | |
314 | - var nameedit = | |
315 | - h('span', nameput, | |
316 | - h('button.btn', 'Preview', { | |
317 | - onclick: function () { | |
318 | - if (nameput.value[0] != '@') | |
319 | - tobename = nameput.value | |
320 | - else | |
321 | - tobename = nameput.value.substring(1, 100) | |
322 | - var newname = h('span', h('a', {href: '#' + src}, '@' + tobename), h('button.btn', 'Publish', { | |
323 | - onclick: function () { | |
324 | - var donename = h('span', h('a', {href: '#' + src}, '@' + tobename)) | |
325 | - sbot.publish({type: 'about', about: src, name: tobename}) | |
326 | - localStorage[src + 'name'] = tobename | |
327 | - newname.parentNode.replaceChild(donename, newname) | |
328 | - } | |
329 | - })) | |
330 | - nameedit.parentNode.replaceChild(newname, nameedit) | |
331 | - } | |
332 | - }) | |
333 | - ) | |
334 | - editname.parentNode.replaceChild(nameedit, editname) | |
335 | - } | |
336 | - }) | |
337 | - ) | |
303 | + if (screen.firstChild.firstChild) { | |
304 | + screen.firstChild.insertBefore(profile, screen.firstChild.firstChild) | |
305 | + } else { | |
306 | + screen.firstChild.appendChild(profile) | |
307 | + } | |
338 | 308 | |
339 | - var editimage = h('span', | |
340 | - h('button.btn', 'New image', { | |
341 | - onclick: function () { | |
342 | - var upload = | |
343 | - h('span', | |
344 | - hyperfile.asDataURL(function (data) { | |
345 | - if(data) { | |
346 | - //img.src = data | |
347 | - var _data = dataurl.parse(data) | |
348 | - pull( | |
349 | - pull.once(_data.data), | |
350 | - sbot.addblob(function (err, hash) { | |
351 | - if(err) return alert(err.stack) | |
352 | - selected = { | |
353 | - link: hash, | |
354 | - size: _data.data.length, | |
355 | - type: _data.mimetype | |
356 | - } | |
357 | - }) | |
358 | - ) | |
309 | + var name = avatar.name(src) | |
310 | + | |
311 | + var editname = h('span', | |
312 | + avatar.name(src), | |
313 | + h('button.btn', 'New name', { | |
314 | + onclick: function () { | |
315 | + var nameput = h('input', {placeholder: name.textContent}) | |
316 | + var nameedit = | |
317 | + h('span', nameput, | |
318 | + h('button.btn', 'Preview', { | |
319 | + onclick: function () { | |
320 | + if (nameput.value[0] != '@') | |
321 | + tobename = nameput.value | |
322 | + else | |
323 | + tobename = nameput.value.substring(1, 100) | |
324 | + var newname = h('span', h('a', {href: '#' + src}, '@' + tobename), h('button.btn', 'Publish', { | |
325 | + onclick: function () { | |
326 | + var donename = h('span', h('a', {href: '#' + src}, '@' + tobename)) | |
327 | + sbot.publish({type: 'about', about: src, name: tobename}) | |
328 | + localStorage[src + 'name'] = tobename | |
329 | + newname.parentNode.replaceChild(donename, newname) | |
330 | + } | |
331 | + })) | |
332 | + nameedit.parentNode.replaceChild(newname, nameedit) | |
359 | 333 | } |
360 | - }), | |
361 | - h('button.btn', 'Preview image', { | |
362 | - onclick: function() { | |
363 | - if (selected) { | |
364 | - console.log(selected) | |
365 | - var oldImage = document.getElementById('profileImage') | |
366 | - var newImage = h('span.avatar--medium', h('img', {src: config.blobsUrl + selected.link})) | |
367 | - var publish = h('button.btn', 'Publish image', { | |
368 | - onclick: function () { | |
369 | - sbot.publish({ | |
370 | - type: 'about', | |
371 | - about: src, | |
372 | - image: selected | |
373 | - }, function (err, published) { | |
374 | - console.log(published) | |
375 | - }) | |
376 | - } | |
377 | - }) | |
378 | - upload.parentNode.replaceChild(publish, upload) | |
379 | - oldImage.parentNode.replaceChild(newImage, oldImage) | |
380 | - } | |
381 | - /*if(selected) { | |
382 | - api.message_confirm({ | |
383 | - type: 'about', | |
384 | - about: id, | |
385 | - image: selected | |
386 | - }) | |
387 | - } else { alert('select an image before hitting preview')}*/ | |
388 | - } | |
389 | 334 | }) |
390 | 335 | ) |
391 | - editimage.parentNode.replaceChild(upload, editimage) | |
392 | - } | |
393 | - }) | |
394 | - ) | |
336 | + editname.parentNode.replaceChild(nameedit, editname) | |
337 | + } | |
338 | + }) | |
339 | + ) | |
395 | 340 | |
396 | - var avatars = h('div.avatars', | |
397 | - h('a', {href: '#' + src}, | |
398 | - h('span.avatar--medium#profileImage', avatar.image(src)), | |
399 | - editname, | |
400 | - h('br'), | |
401 | - editimage | |
402 | - ) | |
341 | + var editimage = h('span', | |
342 | + h('button.btn', 'New image', { | |
343 | + onclick: function () { | |
344 | + var upload = | |
345 | + h('span', | |
346 | + hyperfile.asDataURL(function (data) { | |
347 | + if(data) { | |
348 | + //img.src = data | |
349 | + var _data = dataurl.parse(data) | |
350 | + pull( | |
351 | + pull.once(_data.data), | |
352 | + sbot.addblob(function (err, hash) { | |
353 | + if(err) return alert(err.stack) | |
354 | + selected = { | |
355 | + link: hash, | |
356 | + size: _data.data.length, | |
357 | + type: _data.mimetype | |
358 | + } | |
359 | + }) | |
360 | + ) | |
361 | + } | |
362 | + }), | |
363 | + h('button.btn', 'Preview image', { | |
364 | + onclick: function() { | |
365 | + if (selected) { | |
366 | + console.log(selected) | |
367 | + var oldImage = document.getElementById('profileImage') | |
368 | + var newImage = h('span.avatar--medium', h('img', {src: config.blobsUrl + selected.link})) | |
369 | + var publish = h('button.btn', 'Publish image', { | |
370 | + onclick: function () { | |
371 | + sbot.publish({ | |
372 | + type: 'about', | |
373 | + about: src, | |
374 | + image: selected | |
375 | + }, function (err, published) { | |
376 | + console.log(published) | |
377 | + }) | |
378 | + } | |
379 | + }) | |
380 | + upload.parentNode.replaceChild(publish, upload) | |
381 | + oldImage.parentNode.replaceChild(newImage, oldImage) | |
382 | + } | |
383 | + /*if(selected) { | |
384 | + api.message_confirm({ | |
385 | + type: 'about', | |
386 | + about: id, | |
387 | + image: selected | |
388 | + }) | |
389 | + } else { alert('select an image before hitting preview')}*/ | |
390 | + } | |
391 | + }) | |
392 | + ) | |
393 | + editimage.parentNode.replaceChild(upload, editimage) | |
394 | + } | |
395 | + }) | |
396 | + ) | |
397 | + | |
398 | + var avatars = h('div.avatars', | |
399 | + h('a', {href: '#' + src}, | |
400 | + h('span.avatar--medium#profileImage', avatar.image(src)), | |
401 | + editname, | |
402 | + h('br'), | |
403 | + editimage | |
403 | 404 | ) |
404 | - | |
405 | - pull( | |
406 | - sbot.userStream({id: src, reverse: false, limit: 1}), | |
407 | - pull.drain(function (msg) { | |
408 | - var howlong = h('span', h('br'), ' arrived ', human(new Date(msg.value.timestamp))) | |
409 | - avatars.appendChild(howlong) | |
410 | - console.log(msg) | |
411 | - }) | |
412 | - ) | |
405 | + ) | |
406 | + | |
407 | + pull( | |
408 | + sbot.userStream({id: src, reverse: false, limit: 1}), | |
409 | + pull.drain(function (msg) { | |
410 | + var howlong = h('span', h('br'), ' arrived ', human(new Date(msg.value.timestamp))) | |
411 | + avatars.appendChild(howlong) | |
412 | + console.log(msg) | |
413 | + }) | |
414 | + ) | |
413 | 415 | |
414 | 416 | |
415 | - var buttons = h('div.buttons') | |
416 | - | |
417 | - profile.firstChild.appendChild(avatars) | |
418 | - profile.firstChild.appendChild(buttons) | |
419 | - buttons.appendChild(tools.mute(src)) | |
417 | + var buttons = h('div.buttons') | |
418 | + | |
419 | + profile.firstChild.appendChild(avatars) | |
420 | + profile.firstChild.appendChild(buttons) | |
421 | + buttons.appendChild(tools.mute(src)) | |
420 | 422 | |
421 | - var writeMessage = h('button.btn', 'Public message ', avatar.name(src), { | |
422 | - onclick: function () { | |
423 | - opts = {} | |
424 | - opts.type = 'post' | |
425 | - opts.mentions = '[' + name.textContent + '](' + src + ')' | |
426 | - var composer = h('div#composer', h('div.message', compose(opts))) | |
427 | - profile.appendChild(composer) | |
428 | - } | |
429 | - }) | |
423 | + var writeMessage = h('button.btn', 'Public message ', avatar.name(src), { | |
424 | + onclick: function () { | |
425 | + opts = {} | |
426 | + opts.type = 'post' | |
427 | + opts.mentions = '[' + name.textContent + '](' + src + ')' | |
428 | + var composer = h('div#composer', h('div.message', compose(opts))) | |
429 | + profile.appendChild(composer) | |
430 | + } | |
431 | + }) | |
430 | 432 | |
431 | - var writePrivate = h('button.btn', 'Private message ', avatar.name(src), { | |
432 | - onclick: function () { | |
433 | - opts = {} | |
434 | - opts.type = 'post' | |
435 | - opts.mentions = '[' + name.textContent + '](' + src + ')' | |
436 | - opts.recps = [src, id] | |
437 | - var composer = h('div#composer', h('div.message', compose(opts))) | |
438 | - profile.appendChild(composer) | |
439 | - } | |
440 | - }) | |
433 | + var writePrivate = h('button.btn', 'Private message ', avatar.name(src), { | |
434 | + onclick: function () { | |
435 | + opts = {} | |
436 | + opts.type = 'post' | |
437 | + opts.mentions = '[' + name.textContent + '](' + src + ')' | |
438 | + opts.recps = [src, id] | |
439 | + var composer = h('div#composer', h('div.message', compose(opts))) | |
440 | + profile.appendChild(composer) | |
441 | + } | |
442 | + }) | |
441 | 443 | |
442 | - buttons.appendChild(writeMessage) | |
443 | - buttons.appendChild(writePrivate) | |
444 | - buttons.appendChild(tools.follow(src)) | |
445 | - buttons.appendChild(tools.block(src)) | |
444 | + buttons.appendChild(writeMessage) | |
445 | + buttons.appendChild(writePrivate) | |
446 | + buttons.appendChild(tools.follow(src)) | |
447 | + buttons.appendChild(tools.block(src)) | |
446 | 448 | |
447 | - buttons.appendChild(h('button.btn', 'Generate follows', { | |
448 | - onclick: function () { | |
449 | - profile.firstChild.appendChild(tools.getFollowing(src)) | |
450 | - profile.firstChild.appendChild(tools.getFollowers(src)) | |
451 | - } | |
452 | - })) | |
449 | + buttons.appendChild(h('button.btn', 'Generate follows', { | |
450 | + onclick: function () { | |
451 | + profile.firstChild.appendChild(tools.getFollowing(src)) | |
452 | + profile.firstChild.appendChild(tools.getFollowers(src)) | |
453 | + } | |
454 | + })) | |
453 | 455 | |
454 | - buttons.appendChild(h('button.btn', 'Generate blocks', { | |
455 | - onclick: function () { | |
456 | - profile.firstChild.appendChild(tools.getBlocks(src)) | |
457 | - profile.firstChild.appendChild(tools.getBlocked(src)) | |
458 | - } | |
459 | - })) | |
460 | - buttons.appendChild(h('a', {href: '#wall/' + src}, h('button.btn', avatar.name(src), "'s wall"))) | |
456 | + buttons.appendChild(h('button.btn', 'Generate blocks', { | |
457 | + onclick: function () { | |
458 | + profile.firstChild.appendChild(tools.getBlocks(src)) | |
459 | + profile.firstChild.appendChild(tools.getBlocked(src)) | |
460 | + } | |
461 | + })) | |
462 | + buttons.appendChild(h('a', {href: '#wall/' + src}, h('button.btn', avatar.name(src), "'s wall"))) | |
461 | 463 | |
462 | 464 | } |
463 | 465 | |
464 | 466 | var privateMsg = function (src) { |
@@ -496,26 +498,26 @@ | ||
496 | 498 | } |
497 | 499 | }) |
498 | 500 | ) |
499 | 501 | |
500 | - | |
501 | 502 | sbot.get(src, function (err, data) { |
502 | 503 | if (err) { |
503 | 504 | var message = h('div.message', 'Missing message!') |
504 | 505 | content.appendChild(message) |
505 | 506 | } |
506 | 507 | if (data) { |
507 | - data.value = data | |
508 | - data.key = src | |
509 | - console.log(data) | |
510 | - var rootMsg = render(data) | |
508 | + var message = {} | |
509 | + message.value = data | |
510 | + message.key = src | |
511 | + console.log(message) | |
512 | + var rootMsg = render(message) | |
511 | 513 | |
512 | 514 | if (content.firstChild) { |
513 | 515 | content.insertBefore(rootMsg, content.firstChild) |
514 | 516 | } else { |
515 | 517 | content.appendChild(rootMsg) |
516 | 518 | } |
517 | - if (data.value.content.type == 'git-repo') { | |
519 | + if (message.value.content.type == 'git-repo') { | |
518 | 520 | pull( |
519 | 521 | sbot.backlinks({query: [{$filter: {value: {content: {type: 'git-update'}}, dest: src}}]}), |
520 | 522 | pull.drain(function (msg) { |
521 | 523 | if (msg.value) { |
@@ -526,8 +528,9 @@ | ||
526 | 528 | } |
527 | 529 | |
528 | 530 | } |
529 | 531 | }) |
532 | + | |
530 | 533 | } |
531 | 534 | |
532 | 535 | var keyPage = function () { |
533 | 536 | var screen = document.getElementById('screen') |
@@ -765,8 +768,8 @@ | ||
765 | 768 | else |
766 | 769 | search(src.substr(1).split('%20').join(' ')) |
767 | 770 | } else { |
768 | 771 | everythingStream() |
769 | - checkInvite() | |
772 | + //checkInvite() | |
770 | 773 | } |
771 | 774 | |
772 | 775 | } |
Built with git-ssb-web