From: <mp...@kr...> - 2012-10-16 14:36:29
|
Revision: 6894 Author: mpeters Date: 2012-10-16 10:36:08 -0400 (Tue, 16 Oct 2012) Log Message: ----------- Added "limit" option to Krang::Widget::autocomplete_values Modified Paths: -------------- trunk/krang/docs/changelog.pod trunk/krang/lib/Krang/Widget.pm Modified: trunk/krang/docs/changelog.pod =================================================================== --- trunk/krang/docs/changelog.pod 2012-10-12 14:40:26 UTC (rev 6893) +++ trunk/krang/docs/changelog.pod 2012-10-16 14:36:08 UTC (rev 6894) @@ -8,6 +8,10 @@ =item * +Added "limit" option to Krang::Widget::autocomplete_values. [Michael Peters] + +=item * + Added "Search Full Text?" checkbox on "Find Media" screen just like the one on "Find Stories" screen. [Michael Peters] Modified: trunk/krang/lib/Krang/Widget.pm =================================================================== --- trunk/krang/lib/Krang/Widget.pm 2012-10-12 14:40:26 UTC (rev 6893) +++ trunk/krang/lib/Krang/Widget.pm 2012-10-16 14:36:08 UTC (rev 6894) @@ -1063,14 +1063,19 @@ Any additional logic that will added the generated SQL's C<WHERE> clause using C<AND>. +=item limit + +A limit on the number of results to return at once. By default there is +no limit. + =back =cut sub autocomplete_values { my %args = @_; - my ($phrase, $table, $fields, $dbh, $where, $no_split, $no_anchor) = - @args{qw(phrase table fields dbh where no_split no_anchor)}; + my ($phrase, $table, $fields, $dbh, $where, $no_split, $no_anchor, $limit) = + @args{qw(phrase table fields dbh where no_split no_anchor limit)}; $dbh ||= dbh(); if (!$phrase) { @@ -1095,6 +1100,8 @@ . join(' OR ', map { "`$_` $pattern_op ?" } @$fields) . ')'; $sql .= " AND $where" if $where; + $sql .= " LIMIT $limit " if $limit; + my $sth = $dbh->prepare_cached($sql); my @binds = map { $pattern } @$fields; $sth->execute(@binds); |