is => 'ro',
isa => HashRef,
writer => '_set_request_data',
+ predicate => 'has_request_data',
trigger => sub
{
my ($self, $new) = @_;
my $controller = $self->_controller;
+ return unless defined($new) && keys %$new;
$self->_set_prefetch($new->{$controller->prefetch_arg}) if exists $new->{$controller->prefetch_arg};
$self->_set_select($new->{$controller->select_arg}) if exists $new->{$controller->select_arg};
$self->_set_as($new->{$controller->as_arg}) if exists $new->{$controller->as_arg};
$self->_set_grouped_by($new->{$controller->grouped_by_arg}) if exists $new->{$controller->grouped_by_arg};
$self->_set_ordered_by($new->{$controller->ordered_by_arg}) if exists $new->{$controller->ordered_by_arg};
- $self->_set_search($new->{$controller->search_arg}) if exists $new->{$controller->search_arg};
$self->_set_count($new->{$controller->count_arg}) if exists $new->{$controller->count_arg};
$self->_set_page($new->{$controller->page_arg}) if exists $new->{$controller->page_arg};
$self->_set_offset($new->{$controller->offset_arg}) if exists $new->{$controller->offset_arg};
+ $self->_set_search($new->{$controller->search_arg}) if exists $new->{$controller->search_arg};
}
);
method format_search_parameters => sub
{
- $DB::single = 1;
my ($self, $params) = @_;
my $genparams = [];
method generate_column_parameters => sub
{
- $DB::single = 1;
my ($self, $source, $param, $join, $base) = @_;
$base ||= 'me';
my $search_params;
method generate_parameters_attributes => sub
{
- $DB::single = 1;
my ($self, $args) = @_;
return ( $self->format_search_parameters($args), $self->search_attributes );
elsif(!$self->has_page && defined($search_attributes->{offset}) && defined($search_attributes->{rows}))
{
$search_attributes->{page} = $search_attributes->{offset} / $search_attributes->{rows} + 1;
+ delete $search_attributes->{offset};
}