build out home page, need to link things up tho
This commit is contained in:
@@ -1,3 +1,44 @@
|
||||
export default (userId: string) => {
|
||||
return `${userId}`;
|
||||
import dbClient from 'db/client.ts';
|
||||
|
||||
interface Plan {
|
||||
id: string;
|
||||
name: string;
|
||||
folder: string;
|
||||
}
|
||||
|
||||
const makePlanButtons = (planId: string, deleted: boolean) =>
|
||||
deleted
|
||||
? `<button>restore</button><button>perm delete</button>`
|
||||
: `<button>open</button><button>share</button><button>rename</button><button>move</button><button>delete</button>`;
|
||||
|
||||
const makePlanItem = (plan: Plan, deleted: boolean) => `<li>${plan.folder}${plan.folder && '/'}${plan.name} - ${makePlanButtons(plan.id, deleted)}</li>`;
|
||||
|
||||
export default async (userId: string, userName: string) => {
|
||||
let failed = false;
|
||||
|
||||
const plans: Plan[] = await dbClient
|
||||
.query('SELECT id, name, folder FROM plans WHERE ownerId = ? AND deleted = 0 GROUP BY folder,name,id ORDER BY folder,name DESC', [userId])
|
||||
.catch((e) => {
|
||||
console.error(e);
|
||||
failed = true;
|
||||
});
|
||||
if (failed) return "Couldn't read DB.";
|
||||
|
||||
const deletedPlans: Plan[] = await dbClient
|
||||
.query('SELECT id, name, folder FROM plans WHERE ownerId = ? AND deleted = 1 GROUP BY folder,name,id ORDER BY folder,name DESC', [userId])
|
||||
.catch(() => {
|
||||
failed = true;
|
||||
});
|
||||
if (failed) return "Couldn't read DB.";
|
||||
|
||||
return `<div>
|
||||
<h3>${userName}'s Plans:</h3>
|
||||
<ul>
|
||||
${plans.map((plan) => makePlanItem(plan, false)).join('')}
|
||||
</ul>
|
||||
<h3>${userName}'s Deleted Plans:</h3>
|
||||
<ul>
|
||||
${deletedPlans.map((plan) => makePlanItem(plan, true)).join('')}
|
||||
</ul>
|
||||
</div>`;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user