File Coverage

blib/lib/Kwiki/Edit/ContentionManagement.pm
Criterion Covered Total %
statement 7 9 77.7
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 10 12 83.3


line stmt bran cond sub pod time code
1             package Kwiki::Edit::ContentionManagement;
2              
3 1     1   22190 use warnings;
  1         3  
  1         35  
4 1     1   6 use strict;
  1         7  
  1         40  
5 1     1   484 use Kwiki::Plugin '-Base';
  0            
  0            
6             use mixin 'Kwiki::Installer';
7             our $VERSION = '0.01';
8              
9             const class_title => 'Contention Management';
10             const class_id => 'contention_management';
11              
12             sub register {
13             my $registry = shift;
14              
15             $registry->add(hook => 'edit:edit',
16             pre => 'contention_check'
17             );
18             }
19              
20             sub contention_check {
21             my $hook = pop;
22             return if $self->cgi->button ne $self->config->edit_save_button_text;
23              
24             my $page = $self->pages->current;
25             if ($page->modified_time != $self->cgi->page_time) {
26             my $ret = $self->render_screen(
27             page_time => $page->modified_time);
28             my $warning = Kwiki::Edit::ContentionManagement::warning(
29             $self, $page);
30             $ret =~ s/\