mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
ui: 比赛广播消息时显示发送者uid
This commit is contained in:
1 parent
923d10fb84
commit
549c68cfa4
7 files changed
+35
-27
No files matched your search
@@ -13,7 +13,7 @@ export default class DomDialog extends DOMAttachedObject {
|
||||
this.options = {
|
||||
cancelByClickingBack: false,
|
||||
cancelByEsc: false,
|
||||
onDispatch: () => {},
|
||||
onDispatch: () => { },
|
||||
...options,
|
||||
};
|
||||
this._defer = null;
|
||||
@@ -37,17 +37,17 @@ export default class DomDialog extends DOMAttachedObject {
|
||||
opacity: 0,
|
||||
});
|
||||
$wrap.width();
|
||||
$wrap.transition({
|
||||
opacity: 1,
|
||||
}, {
|
||||
duration: 100,
|
||||
easing: 'easeOutCubic',
|
||||
});
|
||||
$wrap.transition(
|
||||
{ opacity: 1 },
|
||||
{
|
||||
duration: 100,
|
||||
easing: 'easeOutCubic',
|
||||
}
|
||||
);
|
||||
|
||||
const $dgContent = this.$dom.find('.dialog__content');
|
||||
$dgContent.css({
|
||||
scale: 0.8,
|
||||
});
|
||||
$dgContent.css({ scale: 0.8 });
|
||||
$dgContent.trigger('vjContentNew');
|
||||
await $dgContent
|
||||
.transition({
|
||||
scale: 1,
|
||||
|
||||
@@ -2,14 +2,19 @@ import { AutoloadPage } from 'vj/misc/Page';
|
||||
import request from 'vj/utils/request';
|
||||
|
||||
export default new AutoloadPage('media', async () => {
|
||||
const items = [];
|
||||
const resolvers = [];
|
||||
const users = $('div[data-user]');
|
||||
users.get().forEach((ele) => {
|
||||
items.push({ type: 'user', id: $(ele).text() });
|
||||
resolvers.push((html) => $(ele).replaceWith($(html)));
|
||||
});
|
||||
if (!items.length) return;
|
||||
const res = await request.post('/media', { items });
|
||||
for (let i = 0; i < res.length; i++) resolvers[i](res[i]);
|
||||
async function parseMedia($dom = $(document.body)) {
|
||||
const items = [];
|
||||
const resolvers = [];
|
||||
const users = $dom.find('div[data-user]');
|
||||
users.get().forEach((ele) => {
|
||||
items.push({ type: 'user', id: $(ele).text() });
|
||||
resolvers.push((html) => $(ele).replaceWith($(html)));
|
||||
});
|
||||
if (!items.length) return;
|
||||
const res = await request.post('/media', { items });
|
||||
for (let i = 0; i < res.length; i++) resolvers[i](res[i]);
|
||||
}
|
||||
|
||||
await parseMedia();
|
||||
$(document).on('vjContentNew', (e) => parseMedia($(e.target)));
|
||||
});
|
||||
@@ -32,9 +32,10 @@ const messagePage = new AutoloadPage('messagePage', () => {
|
||||
if (msg.mdoc.flag & FLAG_ALERT) {
|
||||
// Is alert
|
||||
new InfoDialog({
|
||||
cancelByClickingBack: false,
|
||||
$body: tpl`
|
||||
<div class="typo">
|
||||
<p>${i18n('Message from {0}:', msg.mdoc.from)}</p>
|
||||
${{ templateRaw: true, html: i18n('Message from {0}:', `<div data-user>${msg.mdoc.from}</div>`) }}
|
||||
<p>${i18n(msg.mdoc.content)}</p>
|
||||
</div>`,
|
||||
}).open();
|
||||
|
||||
Reference in new issue
Block a user