diff options
| -rw-r--r-- | FS/FS/part_export/thirdlane.pm | 6 | ||||
| -rw-r--r-- | FS/FS/svc_pbx.pm | 17 | 
2 files changed, 22 insertions, 1 deletions
diff --git a/FS/FS/part_export/thirdlane.pm b/FS/FS/part_export/thirdlane.pm index cbcf98a26..196177ea3 100644 --- a/FS/FS/part_export/thirdlane.pm +++ b/FS/FS/part_export/thirdlane.pm @@ -41,6 +41,12 @@ sub _export_insert {    if ( $svc_x->isa('FS::svc_pbx') ) { +    return 'Name must be 19 characters or less (thirdlane restriction?)' +      if length($svc_x->title) > 19; + +    return 'Name must consist of alphanumerics and spaces only (thirdlane restriction?)' +      unless $svc_x->title =~ /^[\w\s]+$/; +      my $tenant = {        'tenant'   => $svc_x->title,        'maxusers' => $svc_x->max_extensions, diff --git a/FS/FS/svc_pbx.pm b/FS/FS/svc_pbx.pm index 8263bdf3c..37c7bb719 100644 --- a/FS/FS/svc_pbx.pm +++ b/FS/FS/svc_pbx.pm @@ -2,7 +2,7 @@ package FS::svc_pbx;  use strict;  use base qw( FS::svc_External_Common ); -#use FS::Record qw( qsearch qsearchs ); +use FS::Record qw( qsearchs ); # qsearch );  use FS::cust_svc;  =head1 NAME @@ -214,6 +214,21 @@ sub check {    $self->SUPER::check;  } +#XXX this is a way-too simplistic implementation +# at the very least, title should be unique across exports that need that or +# controlled by a conf setting or something +sub _check_duplicate { +  my $self = shift; + +  $self->lock_table; + +  if ( qsearchs( 'svc_pbx', { 'title' => $self->title } ) ) { +    return "Name in use"; +  } else { +    return ''; +  } +} +  =back  =head1 BUGS  | 
