1 |
dpavlin |
1063 |
package Frey::HTML::Diff; |
2 |
|
|
use Moose::Role; |
3 |
|
|
|
4 |
|
|
sub html_diff { |
5 |
|
|
my ($self,$diff) = @_; |
6 |
|
|
|
7 |
|
|
$diff = $self->html_escape( $diff ); |
8 |
|
|
$self->add_css( qq| |
9 |
|
|
pre span.add, |
10 |
|
|
pre span.del { |
11 |
|
|
float: left; |
12 |
|
|
width: 100%; |
13 |
|
|
} |
14 |
|
|
pre span.add { background: #dfd } |
15 |
|
|
pre span.del { background: #fdd } |
16 |
|
|
pre form.inline { display: inline } |
17 |
|
|
| ); |
18 |
|
|
$diff =~ s{^(\+.*?)$}{<span class="add">$1</span>}gm; |
19 |
|
|
$diff =~ s{^(\-.*?)$}{<span class="del">$1</span>}gm; |
20 |
|
|
|
21 |
|
|
$diff = qq|<pre>$diff</pre>| if $diff; |
22 |
|
|
|
23 |
|
|
return $diff; |
24 |
|
|
} |
25 |
|
|
|
26 |
|
|
1; |