From: Mark Wells Date: Tue, 1 Sep 2015 05:16:37 +0000 (-0700) Subject: allow services with a tower but no sector to appear in search results, #33056 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=6163b943f45e083a87cc03344eb775a9edd553ce allow services with a tower but no sector to appear in search results, #33056 --- diff --git a/FS/FS/svc_Tower_Mixin.pm b/FS/FS/svc_Tower_Mixin.pm index 2555b9e50..d6776791c 100644 --- a/FS/FS/svc_Tower_Mixin.pm +++ b/FS/FS/svc_Tower_Mixin.pm @@ -27,7 +27,13 @@ sub tower_sector_sql { my $in = join(',', map { /^(\d+)$/ ? $1 : () } @$value); my @orwhere; push @orwhere, "tower_sector.$field IN ($in)" if $in; - push @orwhere, "tower_sector.$field IS NULL" if grep /^none$/, @$value; + if ( grep /^none$/, @$value ) { + # then allow this field to be null + push @orwhere, "tower_sector.$field IS NULL"; + # and if this field is the sector, also allow the default sector + # on the tower + push @orwhere, "sectorname = '_default'" if $field eq 'sectornum'; + } push @where, '( '.join(' OR ', @orwhere).' )'; } elsif ( $value =~ /^(\d+)$/ ) { diff --git a/httemplate/elements/select-tower_sector.html b/httemplate/elements/select-tower_sector.html index a16d3bfa0..59b016359 100644 --- a/httemplate/elements/select-tower_sector.html +++ b/httemplate/elements/select-tower_sector.html @@ -12,7 +12,7 @@ table => 'tower', name_col => 'towername', id => 'towernum', - field => 'dummy_towernum', + field => 'towernum', onchange => 'change_towernum(this.value);', element_etc => 'STYLE="vertical-align:top"', &> @@ -63,5 +63,5 @@ foreach my $towernum (keys %sectors_of) { } } -my $empty_label = $opt{'empty_label'} || 'Include services with no tower/sector'; +my $empty_label = $opt{'empty_label'} || 'Include services with no sector';