James
8f143308bf
fix: addRescrapeSelected onclick was mangling JSON in HTML attribute — use stored window variable instead
2026-03-20 00:10:37 -04:00
James
23a009e60d
feat: global org members registry — rescrape, add/delete; deal member picker with search + new person saves to global org
2026-03-19 23:38:19 -04:00
James
063c12d324
fix: member cards not rendering — broken nested template literal; rewrite as renderMemberCard helper with safe string concat
2026-03-19 22:45:54 -04:00
James
ba5591ca2c
chore: auto-commit uncommitted changes
2026-03-18 06:02:21 -04:00
James
aca4789b6c
fix: DealOrgPerms missing VisibleLists field — permissions appeared to not save because visible_lists was silently dropped on unmarshal
2026-03-17 21:32:06 -04:00
James
3765adaf55
fix: savePermissions preserves members; surface actual error message on failure
2026-03-17 21:29:43 -04:00
James
06ff5268ba
fix: remove role from global org registry — role is deal-specific, not org-level
2026-03-17 21:25:36 -04:00
James
412f9f7b12
feat: orgs page — full edit (all fields), delete with deal-membership warning, OrgDeals + DeleteOrg endpoints
2026-03-17 21:23:29 -04:00
James
83a3a43bff
feat: edit org from deal — PATCH /orgs/{dealOrgId} updates org details + role; full field set in ListDealOrgs response
2026-03-17 21:17:23 -04:00
James
df096438e3
fix: addManualPerson shows error when name+email empty; fix duplicate id=templateList
2026-03-17 21:08:15 -04:00
James
875593c0c2
feat: remove org from deal — ⋯ menu on org card with Permissions + Remove from deal
2026-03-17 21:01:19 -04:00
James
8dfd8c8b1d
feat: deal name field in wizard step 1; inline validation errors on required fields; no more alert() dialogs
2026-03-17 16:57:03 -04:00
James
cd2b67edd2
feat: template system — save/load request templates in DB; Use Template button; wizard uses ImportTemplate; save-as-template after import
2026-03-17 15:21:50 -04:00
James
4a7698ed20
fix: reset all org form fields on open/close — stale data from previous org was polluting second org entry
2026-03-17 14:10:08 -04:00
James
ec7b4c9706
fix: AddOrgToDeal accepts no domain (derives from website); frontend derives domain fallback from website field
2026-03-17 13:36:35 -04:00
James
ec0b60d44c
fix: CreateSection/CreateRequest/CreateRequestList now use lib.EntryWrite — no more raw DB calls in handlers
2026-03-17 13:21:49 -04:00
James
eb37f682eb
chore: auto-commit uncommitted changes
2026-03-17 00:01:24 -04:00
James
912fd55bf3
feat: delete project, seller logos on cards, org reuse on scrape
...
- Add DELETE /api/projects/{projectID} — super admin only, soft-deletes
project and all child entries
- Projects page: delete button on hover, alphabetical sort, seller org
logo on project cards
- Scrape endpoint checks for existing org by domain before scraping;
reuses existing org + members if found
- AddOrgToDeal reuses existing org entry when domain matches
- Clearer error message when website HTML exceeds LLM context limit
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 19:22:39 -04:00
James
fe7543a0c8
chore: auto-commit uncommitted changes
2026-03-16 18:02:01 -04:00
James
52edadab72
chore: auto-commit uncommitted changes
2026-03-16 06:02:44 -04:00
James
bfade7a86f
chore: auto-commit uncommitted changes
2026-03-16 00:01:27 -04:00
James
379a79bc9d
chore: auto-commit uncommitted changes
2026-03-15 06:02:11 -04:00
James
dce2728bdb
feat: permissions modal — replace folder dropdown with per-list checkboxes; fix savePermissions body
2026-03-15 00:45:59 -04:00
James
9be3c41493
fix: permissions button broken for new orgs — store orgs in JS map, pass only ID in onclick (same apostrophe/JSON escaping bug)
2026-03-15 00:07:32 -04:00
James
110d44e238
feat: add ⋯ menu to request_list and section rows — rename, delete, add section/request
2026-03-14 23:52:27 -04:00
James
e146deb517
fix: UpdateEntry preserves existing parent/type/depth; import list sort_order; CreateSection dynamic depth
2026-03-14 23:44:34 -04:00
James
1645061932
fix: menu buttons broken when title contains apostrophes — use showAttachModalById to avoid inline onclick escaping issues
2026-03-14 23:39:17 -04:00
James
cec6841938
feat: auto-summarize long requests in Summary View; smarter placeholder text
2026-03-14 19:51:59 -04:00
James
c2ddca03b7
fix: created_at must be UnixMilli not RFC3339 string — was silently dropping new list/section/request from tree
2026-03-14 19:26:30 -04:00
James
f06cce9089
feat: inline add section/request in tree; fix New List sort_order; Import List rename; + Section/+ Request buttons on list rows
2026-03-14 19:16:22 -04:00
James
ce2c68634d
feat: create request list manually; larger action buttons; Summary View/Detailed View toggle
2026-03-14 18:42:21 -04:00
James
2f25eceac7
chore: auto-commit uncommitted changes
2026-03-12 18:02:10 -04:00
James
19fccab7fd
redesign: request detail — card-based layout, max-w-4xl centered, proper hierarchy, empty state
2026-03-12 05:11:07 -04:00
James
51928a1cdc
fix: request detail — full width, response+discussion side by side, buyer preview-only, header breadcrumb
2026-03-12 05:06:42 -04:00
James
58023f464c
redesign: request detail — single column, request→response→discussion, project name in breadcrumb
2026-03-12 05:03:15 -04:00
James
d3f3360c48
fix: role restrictions use localStorage fallback; request text body size not h1 bold
2026-03-12 04:54:42 -04:00
James
e197bb9526
fix: applyRoleRestrictions was called but never defined — was causing Error loading request
2026-03-12 04:51:25 -04:00
James
0e11ba2ba1
fix: buyer view — hide upload/mark answered/compose; fix duplicate request text; tighten title size
2026-03-12 04:36:24 -04:00
James
25f46d5f66
fix: rebuild with SetTestRole handler — service was running stale binary
2026-03-12 04:25:52 -04:00
James
f6632dddfc
fix: add test role select to sidebar — was missing from template
2026-03-12 04:20:17 -04:00
James
84f8350700
feat: server-side test role — PUT /api/admin/test-role writes to session, middleware injects into context
2026-03-12 03:45:39 -04:00
James
e89b4e5a5c
feat: test role switcher in sidebar (admin only) — amber banner when impersonating
2026-03-12 03:19:37 -04:00
James
d19ce5e8fa
fix: org cards clickable — store orgs in JS map, pass entry_id to edit modal
2026-03-12 03:04:48 -04:00
James
62ce5266b7
fix: button text visible on Steel/Brutalist; org list redesign — row layout, sharp corners
2026-03-12 02:57:53 -04:00
James
909ce97aea
ui: bump base font 13→14px; request table stays 13px
2026-03-12 02:56:05 -04:00
James
b402d64cb9
feat: org edit modal — click card to edit name/domains/role/website/desc; PUT /api/orgs/:id
2026-03-12 02:53:23 -04:00
James
bbce4cf36a
fix: orgs page — read o.name/role/domains directly from API response, not data_text
2026-03-12 02:49:16 -04:00
James
35f6279d56
ui: reduce top padding on project page
2026-03-12 02:45:44 -04:00
James
fdcc1b96e3
fix: admin link — inline script hides before paint, no flash
2026-03-12 02:44:40 -04:00
James
28189e17d1
ui: status+Import+Summary on tab line; Summary brighter; Admin pinned to sidebar bottom
2026-03-12 02:42:55 -04:00