ui: 比赛广播消息时显示发送者uid

This commit is contained in:
undefined committed 2021-06-13 19:13:10 +08:00
1 parent 923d10fb84
commit 549c68cfa4
7 files changed
+35 -27

No files matched your search

+3 -3
View File
@@ -166,8 +166,8 @@ apt-get -qq update && apt-get -q install -y mongodb-org`, { retry: true }],
{
init: '正在安装沙箱 / Installing sandbox',
operations: [
[`curl -fSL ${_SANDBOX_[retry % _SANDBOX_.length]} -o /usr/bin/sandbox`, { retry: true }],
'chmod +x /usr/bin/sandbox',
[`curl -fSL ${_SANDBOX_[retry % _SANDBOX_.length]} -o /usr/bin/hydro-sandbox`, { retry: true }],
'chmod +x /usr/bin/hydro-sandbox',
],
},
{
@@ -195,7 +195,7 @@ apt-get -qq update && apt-get -q install -y mongodb-org`, { retry: true }],
`pm2 start "MINIO_ACCESS_KEY=${MINIO_ACCESS_KEY} MINIO_SECRET_KEY=${MINIO_SECRET_KEY} minio server /data/file" --name minio`,
'pm2 start "mongod --auth --bind_ip 0.0.0.0" --name mongodb',
() => sleep(1000),
'pm2 start sandbox',
'pm2 start hydro-sandbox',
'pm2 start hydrooj',
'pm2 startup',
'pm2 save',
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "2.28.34",
"version": "2.28.35",
"bin": "bin/hydrooj.js",
"main": "dist/loader.js",
"typings": "dist/loader.d.ts",
+3 -1
View File
@@ -87,7 +87,9 @@ export class ProblemMainHandler extends ProblemHandler {
sort = result;
} else query.$text = { $search: q };
}
if (!this.user.hasPerm(PERM.PERM_VIEW_PROBLEM_HIDDEN)) query.hidden = false;
if (!this.user.hasPerm(PERM.PERM_VIEW_PROBLEM_HIDDEN)) {
query.$or = [{ hidden: false }, { owner: this.user._id }, { maintainer: this.user._id }];
}
await bus.serial('problem/list', query, this);
// eslint-disable-next-line prefer-const
let [pdocs, ppcount, pcount] = await paginate(
@@ -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();
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@hydrooj/ui-default",
"version": "4.11.19",
"version": "4.11.20",
"author": "undefined <i@undefined.moe>",
"license": "AGPL-3.0",
"main": "hydro.js",