fisharebest / webtrees

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

2.0.19 Control panel - website log: table layout breaks for particular long cell contents #4209

Closed ungeahnt closed 2 years ago

ungeahnt commented 2 years ago

On the log page, you can change the number of rows to be displayed using the selection box "Display" (below the table).

However, as soon as you change the number of rows (e.g. set from 10 to 500), the row width also changes and the table goes beyond the right edge of the screen and the data is no longer visible.

Tested with Firefox and Chrome.

fisharebest commented 2 years ago

I think this has nothing to do with the number of rows.

When you change the number, you are displaying different rows - and I guess one of them contains very long text which breaks the table layout.

ungeahnt commented 2 years ago

You are right. The table layout breaks when the cell is filled with a string like the below one:

Tree preference "INDI_FACTS_ADD" set to "ADOP,AFN,NMR,NCHI,EDUC,EMIG,BARM,BASM,OCCU,DSCR,PROP,BURI,GRAD,CREM,NATU,RESN,IMMI,FCOM,CHRA,BIRT,ENDL,SLGC,CONL,BAPL,IDNO,CONF,_MILI,NATI,ORDN,RELI,RETI,BLES,SSN,BAPM,WILL,PROB,TITL,DEAT,ASSO,CENS,RESI"

However, there are a lot of significantly longer entries in my log where the problem does not occur.

Could it be that the quotes in the string are preventing a line break?

Below is a long log entry where the layout is preserved and the text is wrapped in the cell:

Undefined index: xref …/app/Module/InteractiveTreeModule.php:194 #0 …/app/Module/InteractiveTreeModule.php(194): Fisharebest\Webtrees\Webtrees::Fisharebest\Webtrees\{closure}(8, &#039;Undefined index...&#039;, &#039;/home/www/proav...&#039;, 194, Array) #1 …/app/Http/RequestHandlers/ModuleAction.php(88): Fisharebest\Webtrees\Module\InteractiveTreeModule-&gt;getChartAction(Object(Nyholm\Psr7\ServerRequest)) #2 …/app/Http/Middleware/WrapHandler.php(83): Fisharebest\Webtrees\Http\RequestHandlers\ModuleAction-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #3 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\WrapHandler-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) <b>#4 …/modules_v4/faces/src/Modules/FacesModule.php(93): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest))</b> #5 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): UksusoFF\WebtreesModules\Faces\Modules\FacesModule-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #6 …/app/Module/HitCountFooterModule.php(157): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #7 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Module\HitCountFooterModule-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #8 …/app/Http/Middleware/CheckCsrf.php(75): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #9 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CheckCsrf-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #10 …/vendor/oscarotero/middleland/src/Dispatcher.php(118): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #11 …/app/Http/Middleware/Router.php(166): Middleland\Dispatcher-&gt;dispatch(Object(Nyholm\Psr7\ServerRequest)) #12 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\Router-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #13 …/app/Http/Middleware/BootModules.php(62): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #14 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BootModules-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #15 …/app/Http/Middleware/LoadRoutes.php(76): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #16 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\LoadRoutes-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #17 …/app/Http/Middleware/UseTransaction.php(45): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #18 …/vendor/illuminate/database/Concerns/ManagesTransactions.php(29): Fisharebest\Webtrees\Http\Middleware\UseTransaction::Fisharebest\Webtrees\Http\Middleware\{closure}(Object(Illuminate\Database\MySqlConnection)) #19 …/app/Http/Middleware/UseTransaction.php(46): Illuminate\Database\Connection-&gt;transaction(Object(Closure), 3) #20 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseTransaction-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #21 …/app/Http/Middleware/DoHousekeeping.php(74): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #22 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\DoHousekeeping-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #23 …/app/Http/Middleware/UseTheme.php(70): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #24 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseTheme-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #25 …/app/Http/Middleware/CheckForMaintenanceMode.php(51): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #26 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CheckForMaintenanceMode-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #27 …/app/Http/Middleware/UseLanguage.php(70): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #28 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseLanguage-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #29 …/app/Http/Middleware/UseSession.php(71): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #30 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseSession-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #31 …/app/Http/Middleware/UpdateDatabaseSchema.php(58): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #32 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UpdateDatabaseSchema-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #33 …/app/Http/Middleware/UseDebugbar.php(67): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #34 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseDebugbar-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #35 …/app/Http/Middleware/UseDatabase.php(117): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #36 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\UseDatabase-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #37 …/app/Http/Middleware/BadBotBlocker.php(223): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #38 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BadBotBlocker-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #39 …/app/Http/Middleware/CompressResponse.php(75): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #40 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\CompressResponse-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #41 …/app/Http/Middleware/ContentLength.php(40): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #42 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ContentLength-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #43 …/vendor/middlewares/client-ip/src/ClientIp.php(81): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #44 …/app/Http/Middleware/ClientIp.php(47): Middlewares\ClientIp-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #45 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ClientIp-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #46 …/app/Http/Middleware/HandleExceptions.php(90): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #47 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\HandleExceptions-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #48 …/app/Http/Middleware/BaseUrl.php(77): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #49 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\BaseUrl-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #50 …/app/Http/Middleware/ReadConfigIni.php(69): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #51 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\ReadConfigIni-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #52 …/app/Http/Middleware/SecurityHeaders.php(48): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #53 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\SecurityHeaders-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #54 …/app/Http/Middleware/EmitResponse.php(57): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #55 …/vendor/oscarotero/middleland/src/Dispatcher.php(136): Fisharebest\Webtrees\Http\Middleware\EmitResponse-&gt;process(Object(Nyholm\Psr7\ServerRequest), Object(Middleland\Dispatcher)) #56 …/vendor/oscarotero/middleland/src/Dispatcher.php(118): Middleland\Dispatcher-&gt;handle(Object(Nyholm\Psr7\ServerRequest)) #57 …/app/Webtrees.php(241): Middleland\Dispatcher-&gt;dispatch(Object(Nyholm\Psr7\ServerRequest)) #58 …/app/Webtrees.php(228): Fisharebest\Webtrees\Webtrees::dispatch(Object(Nyholm\Psr7\ServerRequest), Array) #59 …/index.php(44): Fisharebest\Webtrees\Webtrees-&gt;httpRequest() #60 {main}