Commit Graph

1035 Commits

Author SHA1 Message Date
Julien Nahum cf4688d75e Improve numeric condition handling in form logic checker
- Add robust numeric comparison for zero and negative numbers
- Implement safe numeric parsing and validation
- Enhance condition checking for numeric fields across PHP and JavaScript
- Add comprehensive test cases for edge case numeric comparisons
- Fix 'is_not_empty' operator logic in JavaScript condition checker
2025-03-03 19:29:40 +08:00
Julien Nahum 405ab64e41 Merge branch 'main' of https://github.com/JhumanJ/OpnForm 2025-03-03 17:12:31 +08:00
Julien Nahum 58cff70a97 Update Custom Plan pricing for monthly and yearly subscriptions
- Adjust pricing for custom plan in CustomPlan.vue
- Reduce yearly price from $160 to $79
- Reduce monthly price from $200 to $100
2025-03-03 17:12:21 +08:00
Julien Nahum 267beec582
Refactor form initialization and data management in OpenForm component (#709)
* Refactor form initialization and data management in OpenForm component

- Add resetAndFill method to Form class for more flexible form data handling
- Update initForm method to use nextTick for better reactivity
- Modify form initialization logic to reset and fill form data more consistently
- Remove unnecessary computed import and add debug console.log

* fix on fill again

---------

Co-authored-by: Chirag Chhatrala <chirag.chhatrala@gmail.com>
2025-03-03 14:29:15 +08:00
Julien Nahum c9dbc79f75 Add Docker environment variables documentation
- Update environment-variables.mdx with Docker-specific environment variable guidance
- Add environment variable sections to docker-development.mdx and docker.mdx
- Provide instructions for updating environment variables in Docker containers
- Include a warning about properly recreating containers when changing environment variables
2025-02-27 15:56:18 +08:00
Julien Nahum b388c729ce Refactor Stripe subscription line item management in WorkspaceUsersUpdated job
- Improve handling of extra user line items in Stripe subscriptions
- Add logic to remove line item when quantity is zero
- Optimize line item creation and update process
- Simplify environment check using app() helper method
2025-02-27 15:04:38 +08:00
Julien Nahum d2f938803b Improve Captcha Provider Handling and Availability Checks
- Add conditional rendering for captcha based on site key availability
- Dynamically generate captcha options based on configured providers
- Prevent displaying captcha input when no providers are configured
- Add runtime config checks for captcha site keys
2025-02-27 15:00:56 +08:00
Chirag Chhatrala 308ce7031a
Add localized 'Yes' and 'No' translations for checkbox fields (#710) 2025-02-24 17:08:37 +08:00
Chirag Chhatrala 9c58f2cf6f
integration modal close modal improve (#708)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-24 16:25:06 +08:00
Chirag Chhatrala 65eebb7277
Fix redirect URL mentions (#707) 2025-02-24 16:11:30 +08:00
Julien Nahum d1902112dd Add null check for block type in FormFieldEdit component
- Prevent potential errors when displaying field type information
- Add conditional rendering to handle cases where block type might be undefined
2025-02-19 19:10:13 +01:00
Julien Nahum 28248259be Improve form property logic validation for checkbox conditions
- Update FormPropertyLogicRule to handle operators without values
- Add support for checkbox conditions like 'is_checked' and 'is_not_checked'
- Refactor logic validation in both API and client-side implementations
- Remove unnecessary console.log statements
- Update error modal text for better user experience
2025-02-19 15:11:27 +01:00
Julien Nahum efd31133cc Enhance default field values and block type configuration
- Refactor field options to use default values from blocks_types.json
- Add default values for various form input types in blocks_types.json
- Improve default field initialization logic in FieldOptions and working_form store
- Add camera switching functionality for mobile devices in CameraUpload component
2025-02-19 12:25:26 +01:00
Chirag Chhatrala 83ef18f453
fix camera upload for mobile (#686)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-19 11:23:26 +01:00
Julien Nahum 55b0f57741 Enhance form column settings and table display
- Add "Show all" and "Hide all" buttons in column settings modal
- Improve column width handling and default width management
- Update OpenSelect and OpenText components to support more flexible prop types
- Add z-index to table header for better visual hierarchy
- Refactor column width property from `cell_width` to `width`
2025-02-17 15:51:14 +01:00
Julien Nahum 0d6bd1bfde Update Vapor deployment configuration
Remove redundant `php artisan event:cache` and `php artisan optimize` steps in build and deploy processes
2025-02-15 09:18:27 +00:00
Chirag Chhatrala e7585c32d3
Refactor form property logic rule to load condition mapping from external JSON file (#698)
* Refactor form property logic rule to load condition mapping from external JSON file

* fix CONDITION_MAPPING

* use config file for load mapping

* Simplify condition mapping retrieval in FormPropertyLogicRule

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-14 22:32:55 +00:00
Chirag Chhatrala 82fae97a3e
Clean up empty HTML and help text in form inputs (#700)
* Clean up empty HTML and help text in form inputs

* Update api/app/Http/Requests/UserFormRequest.php

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-02-14 15:23:09 +00:00
Chirag Chhatrala c819e76463
On duplicate form re-generate slug (#703)
* when duplicate remove removed_properties

* when duplicate remove removed_properties

* On duplicate form re-generate slug

* On duplicate form re-generate slug
2025-02-14 15:15:10 +00:00
Chirag Chhatrala 33bd85fd2c
when duplicate form remove removed_properties (#702)
* when duplicate remove removed_properties

* when duplicate remove removed_properties
2025-02-13 15:23:51 +01:00
Chirag Chhatrala 29ef44d50e
Enhance form submissions column management (#691)
* Enhance form submissions column management

* Modernize UI components with Nuxt UI and improved styling

- Refactor RecordOperations component to use UButtonGroup and UButton
- Update FormSubmissions component with Nuxt UI buttons and modal
- Improve table cell styling in OpenTable component
- Simplify column management and export functionality

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-12 13:48:06 +01:00
Chirag Chhatrala aae28d09cc
Add workspace update functionality (#699)
* Add workspace update functionality

* Refactor workspace settings header layout and edit button styling

* Update workspace route and API endpoint to use root path

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-12 13:43:55 +01:00
Chirag Chhatrala 1f9a1f835f
Improve resources loading (#692)
* improve load forms

* improve load submissions

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-11 17:14:44 +01:00
Julien Nahum 853760484c Enhance form logic property resolver and validation UI
- Refactor `shouldBeRequired()` method in FormLogicPropertyResolver for clearer logic and better handling of conditional requirements
- Add comprehensive test cases for dynamic field requirement logic
- Update CustomFieldValidation component with improved UI and guidance for validation setup
- Improve error message and validation rule description in form validation interface
2025-02-11 15:09:21 +01:00
Julien Nahum f5b9b86c16 Refactor checkbox condition logic with new operators
- Replace legacy 'equals' and 'does_not_equal' checkbox operators with 'is_checked' and 'is_not_checked'
- Update FormLogicConditionChecker in PHP and JavaScript to handle new operators
- Modify open_filters.json to reflect new checkbox comparator structure
- Add migration logic in ColumnCondition.vue to support legacy operator conversion
- Improve checkbox condition handling with explicit true/false checks
2025-02-10 22:03:19 +01:00
Julien Nahum b457368398 Merge branch 'main' of https://github.com/JhumanJ/OpnForm 2025-02-10 17:33:08 +01:00
Julien Nahum a27eb0acd4 Optimize PHP extension installation in Dockerfile.api
- Separate PHP extension installation into distinct steps
- Add explicit module verification after each extension installation
- Configure optimization flags for more stable builds
- Improve build process with granular extension configuration
2025-02-10 17:33:01 +01:00
Chirag Chhatrala 9df70b97c7
Add support for additional language locales (#693)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-10 12:33:52 +01:00
Chirag Chhatrala 11d15b56ac
i18n Cookie issue (#694) 2025-02-10 12:29:42 +01:00
Julien Nahum 29640fc70b Enhance Docker API build configuration
- Add system build dependencies for PHP extension compilation
- Update PHP extension installation with explicit configuration
- Configure PostgreSQL extension with explicit path
- Improve build process with parallel extension installation
2025-02-04 20:24:00 +01:00
Chirag Chhatrala 5f0fc2f62d
Quill translate bug (#689)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-03 20:19:03 +01:00
Chirag Chhatrala 717fcc78d1
Fix tag selection method in home page component (#690) 2025-02-03 08:52:26 +01:00
Julien Nahum cc1199f52a Merge branch 'main' of https://github.com/JhumanJ/OpnForm 2025-02-01 22:53:23 +01:00
Julien Nahum f350ed778c Refactor form submission processing with new FormSubmissionProcessor
- Introduce FormSubmissionProcessor service to handle synchronous/asynchronous form submission logic
- Modify PublicFormController to use new processor for submission and redirect handling
- Update StoreFormSubmissionJob to support processed data retrieval
- Add comprehensive test suite for FormSubmissionProcessor
- Improve handling of generated fields and redirect URL processing
2025-02-01 22:52:20 +01:00
nielscodes 3acf046975
Update nginx.conf (#687)
Changed undefined variable original_uri to request_uri which should use the original request uri. (nginx container won't start otherwise)

Co-authored-by: Julien Nahum <julien@nahum.net>
2025-02-01 22:48:53 +01:00
Julien Nahum bb34cd98e5 Update GitHub Actions workflow to use latest GitHub Actions versions
Upgrade GitHub Actions workflow configuration:
- Update actions/checkout from v2 to v4
- Update actions/setup-node from v1 to v4
- Update actions/cache from v2 to v4
- Update actions/upload-artifact from v3 to v4
- Replace deprecated `::set-output` with `>>$GITHUB_OUTPUT`
2025-02-01 22:11:54 +01:00
Julien Nahum 5f0f873fb2 Add configuration option to hide official templates
Introduce a new environment variable and configuration option to allow users to hide official templates in the template gallery. This provides more flexibility for self-hosted instances of OpnForm.
2025-02-01 21:14:28 +01:00
Julien Nahum 932585b9d3 Remove bootstrap cache volume from docker-compose.yml
Simplify Docker configuration by removing an unnecessary volume mapping for the Laravel bootstrap cache directory
2025-01-29 21:45:50 +01:00
Julien Nahum 44a4b983d5 Simplify Docker development setup with minimal configuration
- Remove Redis, queue workers, and scheduler from development environment
- Update docker-compose.dev.yml with simplified service configurations
- Modify Dockerfile.api to support flexible dependency installation
- Update docker-setup.sh script to use single compose file
- Revise Docker development documentation to reflect new lightweight approach
2025-01-29 18:44:42 +01:00
Julien Nahum f7df6bc0d7 Refactor Docker configuration and development setup
- Update .dockerignore with comprehensive ignore patterns for API and client
- Modify docker-compose files to improve service configurations
- Enhance Nginx configuration for development and production environments
- Refactor Dockerfile.api with improved build process
- Add docker-setup.sh script for simplified Docker deployment
- Update update-credentials.vue page with improved UI
- Remove hCaptcha dependency from package-lock.json
- Update PHP configuration and entrypoint scripts
2025-01-29 17:19:36 +01:00
Julien Nahum bf85d8fa76
Developer docker setup (#683)
* Add build context to compose

Signed-off-by: Daniel Ekman <knegge@gmail.com>

* Update Docker documentation with build instructions

Enhance Docker deployment documentation by:
- Adding detailed instructions for building Docker images
- Providing two methods for image building (Docker Compose and manual)
- Clarifying how to use local images with docker-compose.override.yml

* Add development Docker configuration

Introduce development-specific Docker configuration:
- Create docker-compose.dev.yml for local development setup
- Add nginx.dev.conf with development CORS settings
- Update Dockerfile.api to support environment-specific dependency installation
- Configure development services with appropriate volumes and environment variables

* Improve Docker and Development Documentation

- Remove platform-specific ARM64 constraints in docker-compose.dev.yml
- Enhance Nginx configuration with improved proxy and HMR settings
- Update documentation for development setup and Docker deployment
- Add new Docker development documentation page
- Refactor getting started guide with clearer development instructions

* Enhance Docker configuration and CI/CD pipeline

- Update Docker Compose files with improved service configurations
- Add database healthcheck in docker-compose.yml
- Refactor GitHub Actions workflow for Docker image publishing
- Optimize Dockerfile.api with multi-stage build and environment-specific configurations
- Update Nginx configuration for development and production environments

* Add GitHub Actions permissions for Docker image publishing

Configure GitHub Actions workflow with explicit read and write permissions for content and packages to improve security and clarity of Docker image deployment process

---------

Signed-off-by: Daniel Ekman <knegge@gmail.com>
Co-authored-by: Daniel Ekman <knegge@gmail.com>
2025-01-28 17:52:48 +01:00
Daniel Ekman ae74f33a27
Add build context to compose (#680)
* Add build context to compose

Signed-off-by: Daniel Ekman <knegge@gmail.com>

* Update Docker documentation with build instructions

Enhance Docker deployment documentation by:
- Adding detailed instructions for building Docker images
- Providing two methods for image building (Docker Compose and manual)
- Clarifying how to use local images with docker-compose.override.yml

---------

Signed-off-by: Daniel Ekman <knegge@gmail.com>
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-01-28 12:56:01 +01:00
Julien Nahum 735f398605 Fix forms 2025-01-28 09:23:11 +01:00
Julien Nahum c49af07aa1 Merge branch 'main' of https://github.com/JhumanJ/OpnForm 2025-01-27 18:24:33 +01:00
Julien Nahum 4a2adcf8f7 Add client linting to GitHub Actions workflow
Enhance CI/CD pipeline by introducing a new job to run ESLint on the client application. This ensures code quality and consistency for the frontend codebase.
2025-01-27 18:24:27 +01:00
Chirag Chhatrala 4fae4e6328
Enhance email settings functionality by adding sender address support (#668)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-01-27 16:07:01 +01:00
Julien Nahum a91c194161 Update Billing Tab Condition in Settings Page
Change the condition for displaying the Billing tab from checking user subscription status to verifying the presence of a customer ID
2025-01-27 11:37:36 +01:00
Julien Nahum b5f5f40753 Add reCAPTCHA environment variables to documentation
- Updated environment variables table to include reCAPTCHA site and secret keys
- Added front-end and back-end reCAPTCHA configuration variables
- Maintained consistent documentation style with existing entries
2025-01-25 18:12:20 +01:00
Chirag Chhatrala 55bbb476a9
Fix EmailIntegrationActions for display emails (#667)
Co-authored-by: Julien Nahum <julien@nahum.net>
2025-01-16 10:23:59 +01:00
Julien Nahum a67dff14a4 Fixed linting 2025-01-16 10:09:54 +01:00