fix: add missing files

This commit is contained in:
Julian Lam
2025-08-19 19:54:57 -04:00
parent 10d84d0329
commit 057e3b790b
3 changed files with 138 additions and 0 deletions

33
src/activitypub/rules.js Normal file
View File

@@ -0,0 +1,33 @@
'use strict';
const db = require('../database');
const utils = require('../utils');
const Rules = module.exports;
Rules.list = async () => {
const rids = await db.getSortedSetMembers('categorization:rid');
let rules = await db.getObjects(rids.map(rid => `rid:${rid}`));
rules = rules.map((rule, idx) => {
rule.rid = rids[idx];
return rule;
});
return rules;
};
Rules.add = async (type, value, cid) => {
const uuid = utils.generateUUID();
await Promise.all([
db.setObject(`rid:${uuid}`, { type, value, cid }),
db.sortedSetAdd('categorization:rid', Date.now(), uuid),
]);
};
Rules.delete = async (rid) => {
await Promise.all([
db.sortedSetRemove('categorization:rid', rid),
db.delete(`rid:${rid}`),
]);
};

View File

@@ -0,0 +1,26 @@
<p class="lead">[[admin/settings/activitypub:rules.modal.title]]</p>
<p>[[admin/settings/activitypub:rules.modal.instructions]]</p>
<hr />
<form role="form">
<div class="mb-3">
<label class="form-label" for="type">Type</label>
<select class="form-control" name="type" id="type">
<option value="hashtag">Hashtag</option>
<!--<option value="content">Content contains...</option>-->
</select>
</div>
<div class="mb-3">
<label class="form-label" for="value">Value</label>
<input type="text" id="value" name="value" title="Value" class="form-control" placeholder="forum">
<p class="form-text">[[admin/settings/activitypub:rules.modal.values-multiple]]</p>
</div>
<div class="mb-3">
<label class="form-label">Category</label>
<div class="d-block">
<!-- IMPORT admin/partials/category/selector-dropdown-left.tpl -->
</div>
<input type="hidden" name="cid" />
</div>
</form>