disable quotations, RT#20688, RT#22232
[freeside.git] / httemplate / search / elements / search.html
index 5a16a22..b70b82d 100644 (file)
@@ -167,6 +167,11 @@ Example:
     # miscellany
    'download_label' => 'Download this report',
                         # defaults to 'Download full results' 
+   'link_field'     => 'pkgpart'
+                        # will create internal links for each row,
+                        # with the value of this field as the NAME attribute
+                        # If this is a coderef, will evaluate it, passing the
+                        # row as an argument, and use the result as the NAME.
   &>
 
 </%doc>
@@ -302,9 +307,11 @@ if ( $opt{'disableable'} ) {
     $opt{'query'}{'hashref'}{'disabled'} = '';
     $opt{'query'}{'extra_sql'} =~ s/^\s*WHERE/ AND/i;
 
+    my $table = $opt{'query'}{'table'};
+
     $opt{'count_query'} .=
       ( $opt{'count_query'} =~ /WHERE/i ? ' AND ' : ' WHERE ' ).
-      "( disabled = '' OR disabled IS NULL )";
+      "( $table.disabled = '' OR $table.disabled IS NULL )";
 
   } elsif (    $opt{'disabled_statuspos'}
             || $opt{'disabled_statuspos'} eq '0' ) { #add status column
@@ -348,19 +355,13 @@ if ( $opt{'disableable'} ) {
 my $limit = '';
 my($confmax, $maxrecords, $offset );
 
-unless ( $type =~ /^(csv|\w*.xls)$/) {
+unless ( $type =~ /^(csv|xml|\w*.xls)$/) {
 # html mode
   unless (exists($opt{count_query}) && length($opt{count_query})) {
     ( $opt{count_query} = $opt{query} ) =~
       s/^\s*SELECT\s*(.*?)\s+FROM\s/SELECT COUNT(*) FROM /i; #silly vim:/
   }
 
-  if ( $opt{disableable} && ! $cgi->param('showdisabled') ) {
-    $opt{count_query} .=
-      ( ( $opt{count_query} =~ /WHERE/i ) ? ' AND ' : ' WHERE ' ).
-      "( disabled = '' OR disabled IS NULL )";
-  }
-
   unless ( $type eq 'html-print' ) {
 
     #setup some pagination things if we're in html mode
@@ -448,4 +449,6 @@ if ( ref($opt{query}) ) {
   $header ||= $sth->{NAME};
 }
 
+push @$rows, $opt{'footer_data'} if $opt{'footer_data'};
+
 </%init>