sub maybe_set_param { my ( $self, $param, $default, $value ) = @_; $self->session->param( $param => defined $value ? $value : $default ); } #### $self->maybe_set_param( page => $post{ page }, 1 ); #### sub maybe_set_param { my ( $self, $param, $default ) = @_; my $value = $self->post->{ $param }; $self->session->param( $param => defined $value ? $value : $default ); } # ... $self->maybe_set_param( page => 1 ); #### sub maybe_set_param { my $self = shift; my %defaults = @_; my $post = $self->post; while ( my ( $param, $default ) = each %defaults ) { my $value = $post->{ $param }; $self->session->param( $param => defined $value ? $value : $default ); } } #### $self->maybe_set_param( page => 1, foo => 15, bar => -1 );