Fix a bug that allowed multiple files to be dropped onto a single-file input element
- Fix a bug that allowed multiple files to be dropped onto a single-file input element by accepting only the first file.
* backup
* remove debugs
* oauth to saml and compare fixes etc
* ee flag for saml
* more fixes
* info to debug
* remove unused repo
* spring dev fix for saml
* debugs
* saml stuff
* debugs
* fix
- Fix Array.from syntax in nonmultiple file upload as Array.from(<non-array or string>) returns an empty array which is the case when a file is selected from an input element (when multiple attribute isn't supported) which can be found in Array.from(element.files[0]) -> results in an empty array.
* Implement Command class for Command Pattern
Created a base `Command` class to implement the **Command Pattern**. This class provides a skeletal implementation for `execute`, `undo`, and `redo` methods.
**Note:** This class is intended to be subclassed and not instantiated directly.
* Add undo/redo stacks and operations
* Use rotate element command to perform execute/undo/redo operations
* Handle commands executed through events
- Add "command-execution" event listener to execute commands that are not invoked from the same class while adding the command to the undo stack and clearing the redo stack.
* Add and use rotate all command to rotate/redo/undo all elements
* Use command pattern to delete pages
* Use command pattern for page selection
* Use command pattern to move pages up and down
* Use command pattern to remove selected pages
* Use command pattern to perform the splitting operation
* Add undo/redo functionality with filename input exclusion
- Implement undo (Ctrl+Z) and redo (Ctrl+Y) functionality.
- Prevent undo/redo actions when the filename input field is focused.
- Ensures proper handling of undo/redo actions without interfering with text editing.
* Introduce UndoManager for managing undo/redo operations
- Encapsulate undo/redo stacks and operations within UndoManager.
- Simplify handling of undo/redo functionality through a dedicated manager.
* Call execute on splitAllCommand
- Fix a bug that caused split all functionality to not work as execute() wasn't called on splitAllCommand
* Add undo/redo buttons to multi tool
- Add undo/redo buttons to multi tool
- Dispatch an event upon state change (such as changes in the undo/redo stacks) to update the UI accordingly.
* Add undo/redo to translations
* Replace hard-coded "Undo"/"Redo" with translation keys in multi tool
---------
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Azerbaijani flag and dropdown item added
* Azerbaijani Language file Added
* AZ - ignore_translation.toml init
* AZ Translation Enterprise Edition Section
* Translation for Generic
* translation-az pipeline
* Translation for Analytics
* Translation for NAVBAR
* Translation for SETTINGS
* translation-az homepage
* Translation for #login
* Translation for (showJS)
* Translation for #showJS
* Translation for #PDFToWord
* Translation for #PDFToPresentation
* Translation for #PDFToText
* Translation for #PDFToHTML
* Translation for #PDFToXML
* Translation for #PDFToCSV
* Translation for #repair
* Translation for #pageLayout
* Translation for #pdfToSinglePage
* Translation for #pageExtracter
* Translation for #getPdfInfo
* Translation for #markdown-to-pdf
* Translation for #PDFToXML
* Translation for #html-to-pdf
* Translation for #PDFToHTML
* Translation for #PDFToText
* Translation for #PDFToPresentation
* Translation for #PDFToWord
* Translation for #PDFToCSV
* Translation for #url-to-pdf
* Translation for #pdfToImage
* Translation for #BookToPDF
* Translation for #PDFToBook
* Translation for #autoRedact
* Translation for #Add image
* Translation for #File to PDF
* Translation for (remove-image)
* Translation for (remove-image)
* Translation for (survey)
* Translation for (licenses)
* Translation for (printFile)
* Translation for (split-bysections)
* Translation for (overlay-pdfs)
* Translation for (split-by-size-or-count)
* Translation for (addPageNumbers)
* Translation for (adjustContrast)
* Translation for (autoSplitPDF)
* Translation for (scalePages)
* Translation for (removeCertSign)
* Translation for (removeAnnotations)
* Translation for (sign)
* Translation for (flatten)
* Translation for (extractImages)
* Translation for (merge)
* Translation for (view pdf)
* Translation for (pageRemover)
* Translation for (rotate)
* az Translation for replace-invert-color
* az Translation for addstamprequest
* Translation for (remove-image)
* Translation for #url-to-pdf
* Update messages_az_AZ.properties
* Update README.md
* Update README.md
* Update messages_az_AZ.properties
* Translation for #compress
* Translation for #Change permissions
* Translation for #remove password
* Translation for #pdfToPDFA
* Translation for #changeMetadata
* Translation for #merge
* Translation for #split-pdfs
* translation-az addpass
* translation-az watermark
* translation-az removeblanks
* translation-az compare
* translation-az certsign
* Translation for #pdfOrganiser
* Translation for #multiTool
* Translation for #multiTool
* az translation scannerimagesplit
* az translation ocr
* az translation fix
* az translation linebreak fix
* az translation linebreak fix
---------
Co-authored-by: Lucifer25x <lucifer25x@protonmail.com>
Co-authored-by: islamd7 <vusal04999@gmail.com>
Co-authored-by: Valida Rahmanova <validerehmanova04@gmail.com>
Co-authored-by: yusif043-bit <yusif.abbaszade.043@gmail.com>
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Fix input files being overwritten by newly uploaded files
- Fix a bug that caused existing selected/uploaded files to be overwritten when a new input file is uploaded through input element.
- Add source property to change event to differentiate between uploaded files using input element and drag/drop uploads to avoid processing drag/drop files more than once, thus avoiding file duplication (file duplication resulting from copying drop/drop files to input files on each 'change' event).
* Dispatch and use file-input-change instead of change event for merging
- Dispatch "file-input-change" event after each "change" event in file upload, to notify other functions/components relying on the files provided by the \<input\> element.
- Use "file-input-change" instead of "change" event to display the latest version of uploaded files.
# FAQ:
- Why use "file-input-change" instead of "change" in merge.js?
= "change" event is automatically triggered when a file is uploaded through \<input\> element which would replace all the existing selected/uploaded files including the drag/drop files.
## Example:
Let's say that the user wants to upload/select the x.pdf, y.pdf and z.pdf all together:
- user selects "x.pdf" -> file selected successfully.
= selected files: x.pdf
- user drags and drops "y.pdf" -> file dropped successfully
= selected files: x.pdf, y.pdf
- user selects again using \<input\> "z.pdf" -> file selected succesfully overwriting selected files.
= selected files: z.pdf
* Add Tabula dependency and exclude slf4j-simple
- Add tabula-java dependency to extract tables into CSV.
- Exclude slf4j-simple due to Logback
* Add a flexible CSVWriter
- Add FlexibleCSVWriter which extends CSVWriter to pass a custom CSVFormat, as CSVWriter's parameterized constructor (that allows changing CSVFormat) is protected.
* Use Tabula in extracting tables from PDF
- Use Tabula in extracting tables from PDF instead of the existing implementation
* Delete PDFTableStripper as It is unneeded
- Delete PDFTableStripper as It is unneeded as Tabula-Java is used instead.
* Use correct class in ExtractCSVController logger
* Exclude gson and bcprov-jdk15on dependencies from tabula
- Exclude gson and bcprov-jdk15on from tabula-java due to detected security vulnerabilities.
* French translations for multiTool
* fix french translation invalidPasswordMessage/confirmPasswordErrorMessage
* french translation : reset/navbar.search/sign.saved
* fix my invalidPasswordMessage french translation :)
* Sign multiple PDF pages at the same time in the same location (#2008)
* Modifying the functionality of how the signature is added to all pages (#2008)
* Adding the functionality to reverse the addition on all pages and implementing buttons to navigate to the first and last pages (#2008)
* Multitool - Select multiple pages for rotation tool
* Multitool multi select delete feature
* Multitool multi select UI improvements and big fixes
* Multitool multi select select all and UI improvements
* Multi tool multi select, download selected, clean up and bug fixes
* Groundwork for multiselect drag and drop
* Multi select drag and drop finalised
* Update translation files
Signed-off-by: GitHub Action <action@github.com>
* Turn off select mode after multidrag
---------
Signed-off-by: GitHub Action <action@github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Fix: Bored waiting button doesnt remove itself after processing (#2079)
hide bored waiting? button after request handling both success and error cases to properly hide the button.
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Azerbaijani flag and dropdown item added
* Azerbaijani Language file Added
* AZ - ignore_translation.toml init
* AZ Translation Enterprise Edition Section
* Translation for Generic
* translation-az pipeline
* Translation for Analytics
* Translation for NAVBAR
* Translation for SETTINGS
* translation-az homepage
* Translation for #login
* Translation for (showJS)
* Translation for #showJS
* Translation for #PDFToWord
* Translation for #PDFToPresentation
* Translation for #PDFToText
* Translation for #PDFToHTML
* Translation for #PDFToXML
* Translation for #PDFToCSV
* Translation for #repair
* Translation for #pageLayout
* Translation for #pdfToSinglePage
* Translation for #pageExtracter
* Translation for #getPdfInfo
* Translation for #markdown-to-pdf
* Translation for #PDFToXML
* Translation for #html-to-pdf
* Translation for #PDFToHTML
* Translation for #PDFToText
* Translation for #PDFToPresentation
* Translation for #PDFToWord
* Translation for #PDFToCSV
* Translation for #url-to-pdf
* Translation for #pdfToImage
* Translation for #BookToPDF
* Translation for #PDFToBook
* Translation for #autoRedact
* Translation for #Add image
* Translation for #File to PDF
* Translation for (remove-image)
* Translation for (remove-image)
* Translation for (survey)
* Translation for (licenses)
* Translation for (printFile)
* Translation for (split-bysections)
* Translation for (overlay-pdfs)
* Translation for (split-by-size-or-count)
* Translation for (addPageNumbers)
* Translation for (adjustContrast)
* Translation for (autoSplitPDF)
* Translation for (scalePages)
* Translation for (removeCertSign)
* Translation for (removeAnnotations)
* Translation for (sign)
* Translation for (flatten)
* Translation for (extractImages)
* Translation for (merge)
* Translation for (view pdf)
* Translation for (pageRemover)
* Translation for (rotate)
* az Translation for replace-invert-color
* az Translation for addstamprequest
* Translation for (remove-image)
* Translation for #url-to-pdf
* Update messages_az_AZ.properties
* Update README.md
* Update README.md
* Update messages_az_AZ.properties
---------
Co-authored-by: NureddinFarzaliyev <nureddin.fa@gmail.com>
Co-authored-by: Lucifer25x <lucifer25x@protonmail.com>
Co-authored-by: islamd7 <vusal04999@gmail.com>
Co-authored-by: Valida Rahmanova <validerehmanova04@gmail.com>
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Hide empty menus that don't match search criteria
- Hide empty menus (accordions/feature groups) that don't match search criteria.
* Expand menus automatically for matching search results
- Fix a bug where menus (accordions/feature groups) did not automatically expand on the homepage when search results matched.
---------
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Update messages_ca_CA.properties
Partial Catalan Translation Contribution for Stirling PDF
Hi,
I’ve completed a partial Catalan translation for Stirling PDF, covering all strings up to the Pipeline section. I focused on maintaining consistency in terminology to ensure a smooth user experience in Catalan.
* Update messages_ca_CA.properties
Update on Catalan Translation Verification – Test 2 Passed
Hi [Developer’s Name],
I’ve now completed the verification for Test 2 and ensured that all keys in messages_en_GB.properties align with those in messages_ca_CA.properties. The files should now be fully synchronized with no missing or extra keys.
I’ll proceed to re-run the tests to confirm everything is in order.
Please feel free to review the updated pull request, and let me know if there’s anything further you’d like me to adjust.
Thank you for your support!
Best regards,
* Catalan Translation - Stirling PDF String Updates
Hi,
I have worked on the Catalan translation for some of the text strings in the Stirling PDF project. Attached are my contributions, which include the relevant strings for various parts of the system. I’ve made a few small adjustments to ensure the translation is as accurate and coherent as possible in technical contexts.
Changes made:
1. Translation of strings related to PDF manipulation tools (e.g., Add Watermark, Split PDF, etc.).
2. Adjustments of terms for better accuracy, such as using “Eliminar” instead of “Treure” or “Esborrar”.
3. Review of technical translations to ensure consistency, such as using “Nombre” instead of “Quantitat” for referring to the number of documents or pages.
Attached are the modified strings for your review:
• [Attach the modified strings file]
If you have any questions or need further adjustments, I’m happy to help.
Thank you for your attention and for all your work on the project!
Best regards,
* Catalan Translation - Stirling PDF String Updates
Hi,
I have worked on the Catalan translation for some of the text strings in the Stirling PDF project. Attached are my contributions, which include the relevant strings for various parts of the system. I’ve made a few small adjustments to ensure the translation is as accurate and coherent as possible in technical contexts.
Changes made:
1. Translation of strings related to PDF manipulation tools (e.g., Add Watermark, Split PDF, etc.).
2. Adjustments of terms for better accuracy, such as using “Eliminar” instead of “Treure” or “Esborrar”.
3. Review of technical translations to ensure consistency, such as using “Nombre” instead of “Quantitat” for referring to the number of documents or pages.
Attached are the modified strings for your review:
• [Attach the modified strings file]
If you have any questions or need further adjustments, I’m happy to help.
Thank you for your attention and for all your work on the project!
Best regards,
* Catalan Translation - Stirling PDF String Updates
Hi,
I have worked on the Catalan translation for some of the text strings in the Stirling PDF project. Attached are my contributions, which include the relevant strings for various parts of the system. I’ve made a few small adjustments to ensure the translation is as accurate and coherent as possible in technical contexts.
Changes made:
1. Translation of strings related to PDF manipulation tools (e.g., Add Watermark, Split PDF, etc.).
2. Adjustments of terms for better accuracy, such as using “Eliminar” instead of “Treure” or “Esborrar”.
3. Review of technical translations to ensure consistency, such as using “Nombre” instead of “Quantitat” for referring to the number of documents or pages.
Attached are the modified strings for your review:
• [Attach the modified strings file]
If you have any questions or need further adjustments, I’m happy to help.
Thank you for your attention and for all your work on the project!
Best regards,
* Catalan Translation - Stirling PDF String Updates
* 📝 Sync README
> Made via sync_files.yml
---------
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Update messages_ca_CA.properties
Partial Catalan Translation Contribution for Stirling PDF
Hi,
I’ve completed a partial Catalan translation for Stirling PDF, covering all strings up to the Pipeline section. I focused on maintaining consistency in terminology to ensure a smooth user experience in Catalan.
* Update messages_ca_CA.properties
Update on Catalan Translation Verification – Test 2 Passed
Hi [Developer’s Name],
I’ve now completed the verification for Test 2 and ensured that all keys in messages_en_GB.properties align with those in messages_ca_CA.properties. The files should now be fully synchronized with no missing or extra keys.
I’ll proceed to re-run the tests to confirm everything is in order.
Please feel free to review the updated pull request, and let me know if there’s anything further you’d like me to adjust.
Thank you for your support!
Best regards,
---------
Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
* Update 'ProcessExecutor.java' to use dynamic process limits from properties
* Move limits location out of 'application.properties'
* Rename 'SemaphoreLimit' to 'SessionLimit' and bundle with 'Timeout...' into one parent class
* fix signature logo not loading and add option to disable it
* Hardening suggestions for Stirling-PDF / fix-sig-logo (#2144)
Modernize and secure temp file creation
Co-authored-by: pixeebot[bot] <104101892+pixeebot[bot]@users.noreply.github.com>
---------
Co-authored-by: pixeebot[bot] <104101892+pixeebot[bot]@users.noreply.github.com>