forked from cory/tildefriends
Fix votes multiplying, and make everything expand through the one true state.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4150 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
@ -12,9 +12,7 @@ class TfMessageElement extends LitElement {
|
||||
users: {type: Object},
|
||||
drafts: {type: Object},
|
||||
raw: {type: Boolean},
|
||||
content_warning_expanded: {type: Boolean},
|
||||
blog_data: {type: String},
|
||||
blog_expanded: {type: Boolean},
|
||||
expanded: {type: Object},
|
||||
}
|
||||
}
|
||||
@ -197,8 +195,12 @@ class TfMessageElement extends LitElement {
|
||||
return total;
|
||||
}
|
||||
|
||||
set_expanded(expanded) {
|
||||
this.dispatchEvent(new CustomEvent('tf-expand', {bubbles: true, composed: true, detail: {id: this.message.id, expanded: expanded}}));
|
||||
set_expanded(expanded, tag) {
|
||||
this.dispatchEvent(new CustomEvent('tf-expand', {bubbles: true, composed: true, detail: {id: (this.message.id || '') + (tag || ''), expanded: expanded}}));
|
||||
}
|
||||
|
||||
toggle_expanded(tag) {
|
||||
this.set_expanded(!this.expanded[(this.message.id || '') + (tag || '')], tag);
|
||||
}
|
||||
|
||||
render_children() {
|
||||
@ -298,7 +300,7 @@ class TfMessageElement extends LitElement {
|
||||
this.render_raw() :
|
||||
unsafeHTML(tfutils.markdown(content.text));
|
||||
let content_warning = html`
|
||||
<div style="border: 1px solid #fff; border-radius: 1em; padding: 8px; margin: 4px" @click=${x => self.content_warning_expanded = !self.content_warning_expanded}>${content.contentWarning}</div>
|
||||
<div style="border: 1px solid #fff; border-radius: 1em; padding: 8px; margin: 4px" @click=${x => this.toggle_expanded(':cw')}>${content.contentWarning}</div>
|
||||
`;
|
||||
let content_html =
|
||||
html`
|
||||
@ -307,7 +309,7 @@ class TfMessageElement extends LitElement {
|
||||
`;
|
||||
let payload =
|
||||
content.contentWarning ?
|
||||
self.content_warning_expanded ?
|
||||
self.expanded[(this.message.id || '') + ':cw'] ?
|
||||
html`
|
||||
${content_warning}
|
||||
${content_html}
|
||||
@ -351,7 +353,7 @@ class TfMessageElement extends LitElement {
|
||||
self.blog_data = data;
|
||||
});
|
||||
let payload =
|
||||
this.blog_expanded ?
|
||||
this.expanded[(this.message.id || '') + ':blog'] ?
|
||||
html`<div>${this.blog_data ? unsafeHTML(tfutils.markdown(this.blog_data)) : 'Loading...'}</div>` :
|
||||
undefined;
|
||||
let body = this.raw ?
|
||||
@ -359,7 +361,7 @@ class TfMessageElement extends LitElement {
|
||||
html`
|
||||
<div
|
||||
style="border: 1px solid #fff; border-radius: 1em; padding: 8px; margin: 4px; cursor: pointer"
|
||||
@click=${x => self.blog_expanded = !self.blog_expanded}>
|
||||
@click=${x => self.toggle_expanded(':blog')}>
|
||||
<h2>${content.title}</h2>
|
||||
<div style="display: flex; flex-direction: row">
|
||||
<img src=/${content.thumbnail}/view></img>
|
||||
|
@ -81,6 +81,7 @@ class TfNewsElement extends LitElement {
|
||||
}
|
||||
|
||||
for (let message of messages) {
|
||||
message.votes = [];
|
||||
message.parent_message = undefined;
|
||||
message.child_messages = undefined;
|
||||
}
|
||||
|
Reference in New Issue
Block a user