Commit Graph

75 Commits

Author SHA1 Message Date
James ce80aeeb4a feat: member inline edit (name/title/email/biz+personal phone); expand/collapse rows; add form includes phone fields 2026-03-20 00:41:03 -04:00
James 5291edfa94 feat: remove scrape cap; not-found people require explicit confirm-to-remove 2026-03-20 00:24:57 -04:00
James 41d3844a18 feat: rescrape max 20; select all checkbox in scrape results 2026-03-20 00:16:09 -04:00
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 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 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 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 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 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 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 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
James 449a902b4d ui: project name full white; Org tab → Parties; Summary toggle inline with tabs 2026-03-12 02:40:01 -04:00
James a9d40a31b5 ui: custom project switcher dropdown — no native select 2026-03-12 02:37:04 -04:00
James a2fc510065 ui: project switcher — strip browser default select styling 2026-03-12 02:35:41 -04:00
James 34319eef07 fix: remove inline SVG data URI from template attr (breaks Go template engine) 2026-03-12 02:34:04 -04:00
James 9368261ce2 ui: project switcher dropdown in header; consistent type hierarchy throughout 2026-03-12 02:32:40 -04:00
James 4abac19f35 ui: larger header + logo, project name in header selectable, sidebar font larger, no repeated h1 2026-03-12 02:29:41 -04:00
James bb33323957 feat: Steel + Brutalist themes; tighten all theme base sizes to 13px 2026-03-12 02:19:27 -04:00