Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial postgresql support available #10

Closed
nesiax opened this issue Jan 29, 2021 · 3 comments
Closed

Initial postgresql support available #10

nesiax opened this issue Jan 29, 2021 · 3 comments

Comments

@nesiax
Copy link

nesiax commented Jan 29, 2021

Hi, this is not a issue per se, but I developed a BookedScheduler version for postgresql and is already available for download at: https://github.com/nesiax/PGBookedScheduler in case you want to test it.

@effgarces
Copy link
Collaborator

Awesome work, I don't usually work pgsql, but I really should., it seems much more stable.
If we could merge this support in a single version it would be great. I need 48h days

@nesiax
Copy link
Author

nesiax commented Jan 29, 2021

Hi,

Unfortunately it is not easy to merge the work into a single one.

Booked Scheduler don't use a ORM, and there is a file at lib/Database/Commands/Queries.php with almost all sql queries for the database that must be adjusted for MySQL and PostgreSQL. I modified all the queries and adapt them for PGSQL.

But that is not the only file that created sql statements, there are a lot more at: Domain/Access/ and lib/Database/ so not easy as it seems.

Also I found some error on the application that were not noticeable while working with MySQL mostly because the app turn off error logging, but they appear in the 'Reports' page and the 'Groups' page.

I will keep an eye on what you add to BookedScheduler in order to add them to PGBookedScheduler and keep them in sync.

Give PostgreSQL a try, you will love it !

@effgarces
Copy link
Collaborator

Yeah, you are absolutely right, not easy, probably not for a nearby future.

Will do, thanks.

effgarces pushed a commit that referenced this issue Feb 9, 2024
JohnVillalovos added a commit to JohnVillalovos/libre-booking that referenced this issue May 30, 2024
Got the following error:

  Slim Application Error
  The application could not run because of the following error:
  Details
  Code: 8192
  Message:urlencode(): Passing null to parameter #1 ($string) of type string is deprecated
  File:/var/www/html/lib/Server/Url.php
  Line: 52
  Trace:
  #0 [internal function]: Slim\Slim::handleErrors()
  #1 /var/www/html/lib/Server/Url.php(52): urlencode()
  #2 /var/www/html/lib/Application/Schedule/CalendarSubscriptionUrl.php(26): Url->AddQueryString()
  LibreBooking#3 /var/www/html/WebServices/Responses/ResourceResponse.php(82): CalendarSubscriptionUrl->__construct()
  LibreBooking#4 /var/www/html/WebServices/Responses/ResourcesResponse.php(20): ResourceResponse->__construct()
  LibreBooking#5 /var/www/html/WebServices/ResourcesWebService.php(65): ResourcesResponse->__construct()
  LibreBooking#6 [internal function]: ResourcesWebService->GetAll()
  LibreBooking#7 /var/www/html/lib/external/Slim/Router.php(200): call_user_func_array()
  LibreBooking#8 /var/www/html/lib/external/Slim/Slim.php(1218): Slim\Router->dispatch()
  LibreBooking#9 /var/www/html/lib/external/Slim/Middleware/Flash.php(86): Slim\Slim->call()
  LibreBooking#10 /var/www/html/lib/external/Slim/Middleware/MethodOverride.php(94): Slim\Middleware\Flash->call()
  LibreBooking#11 /var/www/html/lib/external/Slim/Middleware/PrettyExceptions.php(67): Slim\Middleware\MethodOverride->call()
  LibreBooking#12 /var/www/html/lib/external/Slim/Slim.php(1167): Slim\Middleware\PrettyExceptions->call()
  LibreBooking#13 /var/www/html/Web/Services/index.php(72): Slim\Slim->run()
  LibreBooking#14 {main}</pre></body></html>
JohnVillalovos pushed a commit to JohnVillalovos/libre-booking that referenced this issue Jul 26, 2024
The user would see "Unknown error" on the page. With this fix they now
see the correct message of "You do not have permission to access one
or more of the requested resources"

Had got this error in the log when the user did not have access to any
resources:

  Uncaught exception: TypeError: implode(): Argument #1 ($array) must be of type array, string given in /var/www/librebooking/lib/Common/SmartyPage.php:907
  #0 /var/www/librebooking/lib/Common/SmartyPage.php(907): implode()
  #1 /var/www/librebooking/tpl_c/bdc8821f0b14313eaf56b1ea126646d5b4ea5097_0.file.schedule.tpl.php(506): SmartyPage->Implode()
  #2 /var/www/librebooking/vendor/smarty/smarty/libs/sysplugins/smarty_template_resource_base.php(123): content_669e13d3aee330_23010540()
  LibreBooking#3 /var/www/librebooking/vendor/smarty/smarty/libs/sysplugins/smarty_template_compiled.php(114): Smarty_Template_Resource_Base->getRenderedTemplateCode()
  LibreBooking#4 /var/www/librebooking/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(217): Smarty_Template_Compiled->render()
  LibreBooking#5 /var/www/librebooking/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(238): Smarty_Internal_Template->render()
  LibreBooking#6 /var/www/librebooking/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatebase.php(134): Smarty_Internal_TemplateBase->_execute()
  LibreBooking#7 /var/www/librebooking/Pages/Page.php(375): Smarty_Internal_TemplateBase->display()
  LibreBooking#8 /var/www/librebooking/Pages/SchedulePage.php(317): Page->Display()
  LibreBooking#9 /var/www/librebooking/Pages/ActionPage.php(32): SchedulePage->ProcessPageLoad()
  LibreBooking#10 /var/www/librebooking/Pages/SecurePage.php(171): ActionPage->PageLoad()
  LibreBooking#11 /var/www/librebooking/Web/schedule.php(8): SecurePageDecorator->PageLoad()
  LibreBooking#12 {main}
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

No branches or pull requests

2 participants