• Resolved maxxer

    (@maxxer)


    I’ve upgraded the component from 1.2.5 to the latest 1.3.8, PHP 7.2. Now I’m unable to open the Vik console, in errors.log I have the following error:

    [Mon Sep 21 09:56:14.345546 2020] [php7:error] [pid 22228] [client 37.160.69.189:30642] PHP Fatal error: Uncaught Error: Call to undefined method VikBookingReport::getInstanceOf() in /var/www/www.site.it/html/wp-content/plugins/vikbooking/site/helpers/lib.vikbooking.php:10194\nStack trace:\n#0 /var/www/www.site.it/html/wp-content/plugins/vikbooking/admin/layouts/reports/occupancy.php(44): VikBooking::getReportInstance('occupancy_ranki...')\n#1 /var/www/www.site.it/html/wp-content/plugins/vikbooking/libraries/adapter/layout/file.php(135): include('/var/www/www.bu...')\n#2 /var/www/www.site.it/html/wp-content/plugins/vikbooking/libraries/adapter/layout/helper.php(69): JLayoutFile->render(Array)\n#3 /var/www/www.site.it/html/wp-content/plugins/vikbooking/admin/views/dashboard/tmpl/default_forecast.php(22): JLayoutHelper::render('reports.occupan...', Array)\n#4 /var/www/www.site.it/html/wp-content/plugins/vikbooking/libraries/adapter/mvc/view.php(195): include('/var/www/www.bu...')\n#5 /var/www/www.site.it/html/wp-content/plugins/vikbooking/admin/views/dashboar in /var/www/www.site.it/html/wp-content/plugins/vikbooking/site/helpers/lib.vikbooking.php on line 10194, referer: https://www.site.it/camere/wp-admin/

    Other than that I also have this error about failed SQL upgrade:

    
    [Mon Sep 21 09:54:13.850034 2020] [php7:notice] [pid 21502] [client 37.160.69.189:30606] WordPress database error Duplicate column name 'oparams' for query ALTER TABLE <code>databasewp_vikbooking_optionals</code> ADD COLUMN <code>oparams</code> varchar(1024) DEFAULT NULL; made by require_once('wp-admin/admin.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, VikBookingInstaller::update, VikBookingUpdateManager::update, VikBookingUpdateManager::installSql, VikBookingUpdateManager::execSqlFile, JDatabase->execute, referer: https://www.site.it/wp-admin/network/index.php
    [Mon Sep 21 09:54:13.850330 2020] [php7:notice] [pid 21502] [client 37.160.69.189:30606] WordPress database error Duplicate column name 'ordering' for query ALTER TABLE <code>databasewp_vikbooking_characteristics</code> ADD COLUMN <code>ordering</code> int(10) NOT NULL DEFAULT 1; made by require_once('wp-admin/admin.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, VikBookingInstaller::update, VikBookingUpdateManager::update, VikBookingUpdateManager::installSql, VikBookingUpdateManager::execSqlFile, JDatabase->execute, referer: https://www.site.it/wp-admin/network/index.php
    [Mon Sep 21 09:54:13.850639 2020] [php7:notice] [pid 21502] [client 37.160.69.189:30606] WordPress database error Duplicate column name 'promofinalprice' for query ALTER TABLE <code>databasewp_vikbooking_seasons</code> ADD COLUMN <code>promofinalprice</code> tinyint(1) NOT NULL DEFAULT 0; made by require_once('wp-admin/admin.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, VikBookingInstaller::update, VikBookingUpdateManager::update, VikBookingUpdateManager::installSql, VikBookingUpdateManager::execSqlFile, JDatabase->execute, referer: https://www.site.it/wp-admin/network/index.php
    [Mon Sep 21 09:54:13.850943 2020] [php7:notice] [pid 21502] [client 37.160.69.189:30606] WordPress database error Duplicate column name 'excludetaxes' for query ALTER TABLE <code>databasewp_vikbooking_coupons</code> ADD COLUMN <code>excludetaxes</code> tinyint(1) NOT NULL DEFAULT 1; made by require_once('wp-admin/admin.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, VikBookingInstaller::update, VikBookingUpdateManager::update, VikBookingUpdateManager::installSql, VikBookingUpdateManager::execSqlFile, JDatabase->execute, referer: https://www.site.it/wp-admin/network/index.php
    

    After upgrade I got a 403 error, but I wasn’t able to find the cause.

    • This topic was modified 4 years, 2 months ago by maxxer.
Viewing 4 replies - 1 through 4 (of 4 total)
  • Plugin Author e4jvikwp

    (@e4jvikwp)

    Hello,

    Thanks for the detailed logs. It looks like you are missing one PHP file in Vik Booking (or this file is outdated), but this PHP file that declares the method VikBookingReport::getInstanceOf() is definitely available and up to date in the trunk directory of Vik Booking.

    Such issues could be related to some cache applied by your server on certain PHP files, and if you are using the Pro version of Vik Booking, it should be sufficient to re-do the “upgrade to pro” process so that the cache will be cleaned.

    Instead, if you are using the free version of Vik Booking, we invite you to get in touch with our technical support team directly from our website so that we can ask you for a link to your site and maybe for a temporary back-end login to understand why you have one outdated or missing PHP file that is throwing that Fatal Error.

    In any case, the issue is pretty easy to be fixed as it only affects one PHP file of Vik Booking. Just do not remove the plugin Vik Booking or you will lose all data. It is not necessary to de-activate or remove/uninstall Vik Booking to solve a similar issue.

    Thread Starter maxxer

    (@maxxer)

    Thank you very much for the quick response. I had to revert the site back to the previous state as the customer was unable to work and I didn’t know when I would be able to restore it.

    Grepping on the server I found the VikBookingReport class definition, but didn’t check further.

    I’ll set up a dev env and retry the upgrade so we can more easily investigate.

    Plugin Author e4jvikwp

    (@e4jvikwp)

    Okay, please let us know if you need any help. We can confirm the trunk directory of Vik Booking on the WordPress SVN does contain the updated file /site/helpers/lib.vikbooking.php as well as the new file /admin/helpers/report/report.php, which declares the class “VikBookingReport” as well as the class-method “getInstanceOf”.

    As we previously said, if you are using the Pro version of Vik Booking, you can flush the cache by re-doing the “upgrade to pro” process.

    Feel free to reach out to our technical support team by using our website should you have any urgent requests.

    Thread Starter maxxer

    (@maxxer)

    For the record, with the help of @e4jvikwp I managed to fix by manually updating the two files below from current SVN:

    cd wp-content/plugins/vikbooking
    wget https://plugins.svn.www.ads-software.com/vikbooking/trunk/admin/helpers/report/report.php -O admin/helpers/report/report.php
    wget https://plugins.svn.www.ads-software.com/vikbooking/trunk/site/helpers/lib.vikbooking.php -O site/helpers/lib.vikbooking.php

    Thanks again for the support

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Call to undefined method VikBookingReport::getInstanceOf’ is closed to new replies.