ok lets ship for now

This commit is contained in:
davmar
2026-09-10 20:44:59 +02:00
parent 3187499385
commit e7617a2d98
2 changed files with 108 additions and 0 deletions
@@ -0,0 +1,67 @@
/// PocketBase migration: per-user app preferences (Home sections + Look ahead).
///
/// Apply on the server:
///
/// sudo cp this_file /opt/pocketbase/pb_migrations/
/// sudo chown pocketbase:pocketbase /opt/pocketbase/pb_migrations/*.js
/// sudo -u pocketbase /opt/pocketbase/pocketbase migrate up
/// sudo systemctl restart pocketbase
///
/// Depends on usersapp.
migrate((app) => {
const users = app.findCollectionByNameOrId("usersapp");
const ownerRules = {
listRule: "user = @request.auth.id",
viewRule: "user = @request.auth.id",
createRule: "@request.auth.id != '' && user = @request.auth.id",
updateRule: "user = @request.auth.id",
deleteRule: "user = @request.auth.id",
};
const appPrefs = new Collection({
type: "base",
name: "app_prefs",
...ownerRules,
fields: [
{
type: "relation",
name: "user",
required: true,
collectionId: users.id,
cascadeDelete: true,
maxSelect: 1,
},
{
type: "bool",
name: "home_show_transactions",
required: false,
},
{
type: "bool",
name: "home_show_categorized",
required: false,
},
{
type: "bool",
name: "home_show_recent",
required: false,
},
{
type: "number",
name: "look_ahead_max_years",
required: false,
onlyInt: true,
},
],
indexes: [
"CREATE UNIQUE INDEX idx_app_prefs_user ON app_prefs (user)",
],
});
app.save(appPrefs);
}, (app) => {
try {
const col = app.findCollectionByNameOrId("app_prefs");
app.delete(col);
} catch (_) {}
});