Skip to content

Feature/printer wake cancel darkmode#2

Open
Debagnik wants to merge 2 commits into
masterfrom
feature/printer-wake-cancel-darkmode
Open

Feature/printer wake cancel darkmode#2
Debagnik wants to merge 2 commits into
masterfrom
feature/printer-wake-cancel-darkmode

Conversation

@Debagnik

Copy link
Copy Markdown
Owner

No description provided.

- Add double-sided printing toggle and number of copies to configure page
- Compute PDF page count on upload using pdf-lib
- Display live paper sheets needed estimate (dynamic JS calculation)
- Split PDF into odd/even pages for duplex printing flow
- Add flip-pages intermediary view with step-by-step instructions
- Print odd pages first, wait for user confirmation, then print even pages
- Single-sided flow remains unchanged (no regression)
- Add client-side password validation to registration form

New files:
- src/utils/pdfUtils.js: PDF page counting and odd/even splitting
- views/flip-pages.ejs: Flip pages confirmation screen

Modified files:
- src/models/printSettings.js: doubleSided + numCopies settings
- src/controllers/uploadController.js: pageCount on upload
- src/controllers/configController.js: new form fields + pageCount
- src/controllers/jobController.js: duplex print flow + confirm-flip
- src/app.js: new /submit-job/confirm-flip route
- views/configure.ejs: toggle, copies input, sheets calculator
- views/submit-job.ejs: duplex info in summary
- views/register.ejs: client-side password validation
- Add wakePrinter() to auto-wake sleeping printers before job submission
- Add cross-platform getSpoolQueue(), cancelPrintJob(), cancelAllPrintJobs()
- Add user cancel button on dashboard (POST /api/job/:jobId/cancel)
- Add admin print queue page with live spooler data and cancel controls
- Add routes: admin print queue, admin cancel, admin cancel-all, spool API
- Fix dark mode: migrate 6 views from hardcoded inline styles to CSS variables
- Add comprehensive CSS variable system with dark mode overrides
- Add status-cancelled badge style
- Fix a11y: toggle-switch label changed to span in configure.ejs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant