use Time::HiRes qw(time);
-sub save_tx {
- my ($self,$tx) = @_;
+sub save_action {
+ my ($self) = @_;
# warn "## before_dispatch req ",dump($tx->req->url, $tx->req->params);
- my $parts = $tx->req->url->path->parts;
- warn "# parts ",dump( $parts );
- if ( $parts->[0] eq 'data' ) {
- if ( my $params = $tx->req->params ) {
-
- warn "# params ",dump($params);
+ my $path = $self->req->url->path;
+ if ( $path =~ m{/data/} ) {
+ if ( my $params = $self->req->params ) {
my $time = time();
if ( my $time_travel = $params->param('time') ) {
- warn "# time-travel to $time_travel from ", $tx->remote_address;
+ warn "# time-travel to $time_travel\n";
$time = $time_travel;
}
- my $path = '/tmp/actions/';
- mkdir $path unless -e $path;
- $path .= sprintf '%.4f.%s', $time, join('.', @$parts);
+ my $actions_path = '/tmp/actions/';
+ mkdir $actions_path unless -e $actions_path;
+ $path =~ s{/}{.}g;
+ $actions_path .= sprintf '%.4f%s', $time, $path;
- store $params, $path;
- warn "$path ", -s $path, " bytes\n";
+ my $array = $params->params;
+ if ( @$array ) {
+ store $array, $actions_path;
+ warn "SAVE $actions_path ", -s $actions_path, " bytes params = ", dump($array), $/;
+ }
}
}
}
# $self->plugin( 'request_timer' );
$self->plugins->add_hook(
- before_dispatch => sub {
- my ($self, $c) = @_;
- my $tx = $c->tx;
- save_tx( $self, $tx );
+ after_dispatch => sub {
+ my ($self) = @_;
+ save_action( $self );
}
);
% if ( my $master = $ENV{'MASTER'} ) {
<input class=replication type=checkbox name="_master" value="<%= $master %>" title="replicate to <%= $master %>">
% }
-% my $params = $change->{params};
<ul>
-% while ( @$params ) {
-% my $n = shift @$params;
-% my $v = shift @$params;
+% while ( @$change ) {
+% my $n = shift @$change;
+% my $v = shift @$change;
<li><label class=checkbox_to_text>
<%= $n %>
<span class=value title="double click to edit">
<span title="unique">✍</span>
% }
% if ( session('order') ne $n ) {
-<a href="<%= url_for( action => 'order' )->query( order => $n, sort => 'a' ) %>"><%= $n %></a>
+<a href="<%= url_for( action => 'items' )->query( order => $n, sort => 'a' ) %>"><%= $n %></a>
% } else {
-<a href="<%= url_for( action => 'order' )->query( order => $n, sort => session('sort') eq 'a' ? 'd' : 'a' ) %>"><%= $n %></a>
+<a href="<%= url_for( action => 'items' )->query( order => $n, sort => session('sort') eq 'a' ? 'd' : 'a' ) %>"><%= $n %></a>
<%== session('sort') eq 'a' ? '↑' : '↓' %>
% }
<div class="col_opts">