fisharebest / webtrees

Online genealogy
https://webtrees.net
GNU General Public License v3.0
463 stars 299 forks source link

Error when accessing the site when pending records are present #4912

Closed jviseur closed 9 months ago

jviseur commented 10 months ago

When there are any pending records I get the message shown below when I access the site. I can login but again I shows this message. I can go to the Control Panel and that works fine.

Once I accept the changes all the errors disappear.

I am using XAMPP to host the WebTrees.

Error Message Details

Cannot assign null to property Fisharebest\Webtrees\I18N::$language of type Fisharebest\Webtrees\Module\ModuleLanguageInterface …\app\I18N.php:306 #0 …\app\Module\ReviewChangesModule.php(128): Fisharebest\Webtrees\I18N::init('en_GB') #1 …\resources\views\tree-page-block.phtml(20): Fisharebest\Webtrees\Module\ReviewChangesModule->getBlock(Object(Fisharebest\Webtrees\Tree), 72, 'tree') #2 …\app\View.php(183): include('E:\\xampp\\htdocs...') #3 …\app\View.php(278): Fisharebest\Webtrees\View->render() #4 …\app\Helpers\functions.php(145): Fisharebest\Webtrees\View::make('tree-page-block', Array) #5 …\resources\views\tree-page.phtml(25): view('tree-page-block', Array) #6 …\app\View.php(183): include('E:\\xampp\\htdocs...') #7 …\app\View.php(278): Fisharebest\Webtrees\View->render() #8 …\app\Helpers\functions.php(145): Fisharebest\Webtrees\View::make('tree-page', Array) #9 …\app\Http\ViewResponseTrait.php(50): view('tree-page', Array) #10 …\app\Http\RequestHandlers\TreePage.php(87): Fisharebest\Webtrees\Http\RequestHandlers\TreePage->viewResponse('tree-page', Array) #11 …\app\Http\Middleware\RequestHandler.php(55): Fisharebest\Webtrees\Http\RequestHandlers\TreePage->handle(Object(Nyholm\Psr7\ServerRequest)) #12 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\RequestHandler->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #13 …\app\Module\HitCountFooterModule.php(154): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #14 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Module\HitCountFooterModule->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #15 …\app\Module\CheckForNewVersion.php(122): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #16 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Module\CheckForNewVersion->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #17 …\app\Http\Middleware\CheckCsrf.php(80): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #18 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CheckCsrf->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #19 …\vendor\oscarotero\middleland\src\Dispatcher.php(118): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #20 …\app\Webtrees.php(275): Middleland\Dispatcher->dispatch(Object(Nyholm\Psr7\ServerRequest)) #21 …\app\Http\Middleware\Router.php(161): Fisharebest\Webtrees\Webtrees::dispatch(Object(Nyholm\Psr7\ServerRequest), Array) #22 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\Router->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #23 …\app\Http\Middleware\BootModules.php(58): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #24 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BootModules->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #25 …\app\Http\Middleware\RegisterGedcomTags.php(54): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #26 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\RegisterGedcomTags->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #27 …\app\Http\Middleware\LoadRoutes.php(75): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #28 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\LoadRoutes->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #29 …\app\Http\Middleware\CheckForNewVersion.php(57): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #30 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CheckForNewVersion->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #31 …\app\Http\Middleware\UseTransaction.php(45): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #32 …\vendor\illuminate\database\Concerns\ManagesTransactions.php(29): Fisharebest\Webtrees\Http\Middleware\UseTransaction::Fisharebest\Webtrees\Http\Middleware\{closure}(Object(Illuminate\Database\MySqlConnection)) #33 …\app\Http\Middleware\UseTransaction.php(46): Illuminate\Database\Connection->transaction(Object(Closure), 3) #34 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseTransaction->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #35 …\app\Http\Middleware\DoHousekeeping.php(71): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #36 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\DoHousekeeping->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #37 …\app\Http\Middleware\UseTheme.php(67): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #38 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseTheme->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #39 …\app\Http\Middleware\CheckForMaintenanceMode.php(51): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #40 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CheckForMaintenanceMode->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #41 …\app\Http\Middleware\UseLanguage.php(69): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #42 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseLanguage->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #43 …\app\Http\Middleware\UseSession.php(78): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #44 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseSession->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #45 …\app\Http\Middleware\UpdateDatabaseSchema.php(57): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #46 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UpdateDatabaseSchema->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #47 …\app\Http\Middleware\UseDatabase.php(122): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #48 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseDatabase->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #49 …\app\Http\Middleware\BadBotBlocker.php(293): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #50 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BadBotBlocker->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #51 …\app\Http\Middleware\CompressResponse.php(71): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #52 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CompressResponse->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #53 …\app\Http\Middleware\ContentLength.php(40): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #54 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ContentLength->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #55 …\vendor\middlewares\client-ip\src\ClientIp.php(65): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #56 …\app\Http\Middleware\ClientIp.php(47): Middlewares\ClientIp->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #57 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ClientIp->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #58 …\app\Http\Middleware\HandleExceptions.php(89): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #59 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\HandleExceptions->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #60 …\app\Http\Middleware\BaseUrl.php(73): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #61 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BaseUrl->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #62 …\app\Http\Middleware\ReadConfigIni.php(68): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #63 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ReadConfigIni->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #64 …\app\Http\Middleware\SecurityHeaders.php(48): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #65 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\SecurityHeaders->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #66 …\app\Http\Middleware\EmitResponse.php(57): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #67 …\vendor\oscarotero\middleland\src\Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\EmitResponse->process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #68 …\vendor\oscarotero\middleland\src\Dispatcher.php(118): Middleland\Dispatcher->handle(Object(Nyholm\Psr7\ServerRequest)) #69 …\app\Webtrees.php(275): Middleland\Dispatcher->dispatch(Object(Nyholm\Psr7\ServerRequest)) #70 …\app\Webtrees.php(262): Fisharebest\Webtrees\Webtrees::dispatch(Object(Nyholm\Psr7\ServerRequest), Array) #71 …\index.php(51): Fisharebest\Webtrees\Webtrees->httpRequest() #72 {main}

fisharebest commented 9 months ago

Something in your code is trying to set the language to en_GB. This should be en-GB (hyphen, not underscore).

You can either check (and reset) the settings for the site and each user in the control panel, or you can run these two SQL queries to do the same thing:

UPDATE wt_site_setting SET setting_value = 'en-GB' WHERE setting_name = 'LANGUAGE' AND setting_value = 'en_GB';
UPDATE wt_user_setting SET setting_value = 'en-GB' WHERE setting_name = 'LANGUAGE' AND setting_value = 'en_GB';
fisharebest commented 9 months ago

IIRC, phpGedView used the underscore notation, so it is possible that this is very old data that was not migrated properly.

If not, then I have no idea how it could be there. Values are set from a list of values, which uses hyphens.

If you have any ideas, then we can re-open this issue. Otherwise, I think it is a glitch in your data - and the comment above should show you how to fix it.