View | Details | Raw Unified | Return to bug 36698
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt (-2 / +48 lines)
Lines 406-416 Link Here
406
                                            >
406
                                            >
407
                                        </div>
407
                                        </div>
408
                                    [% ELSE %]
408
                                    [% ELSE %]
409
                                        <div class="loginfo" id="loginfo[% loopro.action_id | html %]"> [% loopro.info | html %] </div>
409
                                        <div class="loginfo" id="loginfo[% loopro.action_id | html %]">
410
                                            [% IF ( loopro.module == 'MEMBERS' ) %]
411
                                                <pre>[% loopro.info | html %]</pre>
412
                                            [% ELSE %]
413
                                                [% loopro.info | html %]
414
                                            [% END %]
415
                                        </div>
410
                                    [% END %]
416
                                    [% END %]
411
                                </td>
417
                                </td>
412
                                <td>[% PROCESS translate_log_interface log_interface=loopro.interface %]</td>
418
                                <td>[% PROCESS translate_log_interface log_interface=loopro.interface %]</td>
413
                                <td>[% loopro.diff | html %]</td>
419
                                <td>
420
                                    [% IF ( loopro.module == 'MEMBERS' ) %]
421
                                        <pre class="permissions-diff">[% loopro.diff | html %]</pre>
422
                                    [% ELSE %]
423
                                        [% loopro.diff | html %]
424
                                    [% END %]
425
                                </td>
414
                            </tr>
426
                            </tr>
415
                        [% END %]
427
                        [% END %]
416
                    </tbody>
428
                    </tbody>
Lines 474-479 Link Here
474
    <script>
486
    <script>
475
        var table_settings = [% TablesSettings.GetTableSettings('tools', 'logviewer', 'logst', 'json') | $raw %];
487
        var table_settings = [% TablesSettings.GetTableSettings('tools', 'logviewer', 'logst', 'json') | $raw %];
476
        var CAN_user_parameters_manage_sysprefs = "[% CAN_user_parameters_manage_sysprefs | html %]";
488
        var CAN_user_parameters_manage_sysprefs = "[% CAN_user_parameters_manage_sysprefs | html %]";
489
        $(document).ready(function() {
490
            $("pre.permissions-diff").each(function() {
491
                let text = $(this).html();
492
                let dCounter = 0;
493
494
                let added_label = _("Added ");
495
                let removed_label =  _("Removed ");
496
497
                let all_label = _("-- All --");
498
499
500
                text = text.replace(/^(\s{0,8}"[^"]+"\s*:\s*)\{\s*"A"\s*:\s*1\s*\}/gm, '$1<span style="color:#2ea44f; font-weight:bold;">' +  added_label + all_label + '</span>');
501
                text = text.replace(/^(\s{0,8}"[^"]+"\s*:\s*)\{\s*"R"\s*:\s*1\s*\}/gm, '$1<span style="color:#cf222e; font-weight:bold;">' +  removed_label + all_label + '</span>');
502
503
                text = text.replace(/^(\s*"[^"]+"\s*:\s*)\{\s*"A"\s*:\s*1\s*\}/gm, '$1<span style="color:#2ea44f; font-weight:bold;">' + added_label + '✅</span>');
504
                text = text.replace(/^(\s*"[^"]+"\s*:\s*)\{\s*"R"\s*:\s*1\s*\}/gm, '$1<span style="color:#cf222e; font-weight:bold;">' + removed_label + '❌</span>');
505
506
                text = text.replace(/"D"/g, function() {
507
                    dCounter++;
508
                    var label = (dCounter === 1) ? _("Modifications") : "&nbsp;↳";
509
                    var color = (dCounter === 1) ? "#0056b3" : "#6e7781";
510
                    return '<span style="color:' + color + '; font-weight:bold;">' + label + '</span>';
511
                });
512
513
                text = text.replace(/"A"/g, '<span style="color:#2ea44f; font-weight:bold;">' + _("Added ") + '✅' + '</span>');
514
                text = text.replace(/"R"/g, '<span style="color:#cf222e; font-weight:bold;">' + _("Removed ") + '❌' + '</span>');
515
                text = text.replace(/"O"/g, '<span style="color:#6e7781; font-weight:bold;">' + _("Old value") + '</span>');
516
                text = text.replace(/"N"/g, '<span style="color:#0969da; font-weight:bold;">' + _("New value") + '</span>');
517
518
                text = text.replace(/,\s*$/gm, "");
519
520
                $(this).html(text);
521
            });
522
        });
477
    </script>
523
    </script>
478
    [% Asset.js("js/viewlog.js") | $raw %]
524
    [% Asset.js("js/viewlog.js") | $raw %]
479
[% END %]
525
[% END %]
(-)a/tools/viewlog.pl (-1 / +15 lines)
Lines 234-239 if ($do_it) { Link Here
234
                }
234
                }
235
            }
235
            }
236
        }
236
        }
237
238
        if ( $result->{module} eq 'MEMBERS' ) {
239
            my $json_engine = JSON->new->utf8->canonical(1)->pretty(1);
240
241
            if ( $result->{info} && $result->{info} =~ /^[{\[]/ ) {
242
                my $perl_info = $json_engine->decode( $result->{info} );
243
                $result->{info} = $json_engine->encode($perl_info);
244
            }
245
246
            if ( $result->{diff} && $result->{diff} =~ /^[{\[]/ ) {
247
                my $perl_diff = $json_engine->decode( $result->{diff} );
248
                $result->{diff} = $json_engine->encode($perl_diff);
249
            }
250
        }
251
237
        push @data, $result;
252
        push @data, $result;
238
    }
253
    }
239
    if ( $output eq "screen" ) {
254
    if ( $output eq "screen" ) {
240
- 

Return to bug 36698