Merge branch 'master' into develop

This commit is contained in:
Barış Soner Uşaklı
2024-12-24 10:13:51 -05:00
15 changed files with 125 additions and 41 deletions

View File

@@ -194,14 +194,13 @@ module.exports = function (module) {
if (!key || (Array.isArray(key) && !key.length) || !Array.isArray(fields) || !fields.length) {
return;
}
fields = fields.filter(Boolean);
fields = fields.map(helpers.fieldToString).filter(Boolean);
if (!fields.length) {
return;
}
const data = {};
fields.forEach((field) => {
field = helpers.fieldToString(field);
data[field] = '';
});
if (Array.isArray(key)) {

View File

@@ -172,8 +172,11 @@ module.exports = function (module) {
if (key === undefined || key === null || field === undefined || field === null) {
return;
}
await module.client.hdel(key, field);
cache.del(key);
field = field.toString();
if (field) {
await module.client.hdel(key, field);
cache.del(key);
}
};
module.deleteObjectFields = async function (key, fields) {

View File

@@ -354,8 +354,11 @@ Emailer.sendViaFallback = async (data) => {
data.text = data.plaintext;
delete data.plaintext;
// NodeMailer uses a combined "from"
data.from = `${data.from_name}<${data.from}>`;
// use an address object https://nodemailer.com/message/addresses/
data.from = {
name: data.from_name,
address: data.from,
};
delete data.from_name;
await Emailer.fallbackTransport.sendMail(data);
};

View File

@@ -200,7 +200,7 @@ async function completeConfigSetup(config) {
config.package_manager = nconf.get('package_manager');
}
if (install.values.hasOwnProperty('saas_plan')) {
if (install.values && install.values.hasOwnProperty('saas_plan')) {
config.saas_plan = install.values.saas_plan;
}

View File

@@ -68,8 +68,8 @@ _mounts.post = (app, name, middleware, controllers) => {
middleware.registrationComplete,
middleware.pluginHooks,
];
app.get(`/${name}/:pid`, middleware.busyCheck, middlewares, controllers.posts.redirectToPost);
app.get(`/api/${name}/:pid`, middlewares, controllers.posts.redirectToPost);
app.get(`/${name}/:pid`, middleware.busyCheck, middlewares, helpers.tryRoute(controllers.posts.redirectToPost));
app.get(`/api/${name}/:pid`, middlewares, helpers.tryRoute(controllers.posts.redirectToPost));
};
_mounts.tags = (app, name, middleware, controllers) => {

View File

@@ -39,7 +39,7 @@
</div>
<div class="btn-group">
<button class="btn btn-primary btn-sm dropdown-toggle" id="action-dropdown" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" type="button" disabled="disabled">[[admin/manage/users:edit]] <span class="caret"></span></button>
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" role="menu">
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm overflow-auto" role="menu" style="max-height:75vh;">
<li><h6 class="dropdown-header">[[admin/manage/users:email]]</h6></li>
<li><a href="#" class="dropdown-item rounded-1 change-email" role="menuitem"><i class="text-secondary fa fa-fw fa-envelope text-start"></i> [[admin/manage/users:change-email]]</a></li>

View File

@@ -1,6 +1,4 @@
<div class="tool-modal d-flex">
<div class="card shadow">
<h5 class="card-header">[[topic:thread-tools.merge-topics]]</h5>
<div class="card-body">
@@ -13,7 +11,7 @@
<span class="input-group-text"><i class="fa fa-search"></i></span>
</div>
<div class="quick-search-container dropdown-menu d-block p-2 hidden">
<div class="quick-search-container dropdown-menu d-block p-2 hidden w-100">
<div class="text-center loading-indicator"><i class="fa fa-spinner fa-spin"></i></div>
<div class="quick-search-results-container"></div>
</div>

View File

@@ -3,7 +3,7 @@
{{{ end }}}
<div component="chat/recent/room" data-roomid="{./roomId}" data-full="1" class="rounded-1 {{{ if ./unread }}}unread{{{ end }}}">
<div class="d-flex gap-1 justify-content-between">
<div class="chat-room-btn position-relative d-flex flex-grow-1 gap-2 justify-content-start align-items-start btn btn-ghost btn-sm ff-sans text-start">
<a href="#" class="chat-room-btn position-relative d-flex flex-grow-1 gap-2 justify-content-start align-items-start btn btn-ghost btn-sm ff-sans text-start">
<div class="main-avatar">
{{{ if ./users.length }}}
{{{ if ./groupChat}}}
@@ -33,7 +33,7 @@
</div>
<!-- IMPORT partials/chats/room-teaser.tpl -->
</div>
</div>
</a>
<div>
<button class="mark-read btn btn-ghost btn-sm d-flex align-items-center justify-content-center flex-grow-0 flex-shrink-0 p-1" style="width: 1.5rem; height: 1.5rem;">
<i class="unread fa fa-2xs fa-circle text-primary {{{ if !./unread }}}hidden{{{ end }}}" aria-label="[[unread:mark-as-read]]"></i>