[freeside-commits] branch FREESIDE_2_3_BRANCH updated. fa270adc74187564109bcdac9cc5fc4acfb4bf47

Ivan ivan at 420.am
Fri Jan 11 21:22:25 PST 2013


The branch, FREESIDE_2_3_BRANCH has been updated
       via  fa270adc74187564109bcdac9cc5fc4acfb4bf47 (commit)
      from  6ebc73c81b2b4d9524c2a4899629dc6c14ed341d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit fa270adc74187564109bcdac9cc5fc4acfb4bf47
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Fri Jan 11 21:22:24 2013 -0800

    add svc_phone.sim_imsi, RT#20768

diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm
index 03a6c27..c434e8a 100644
--- a/FS/FS/Schema.pm
+++ b/FS/FS/Schema.pm
@@ -3271,6 +3271,7 @@ sub tables_hashref {
         'svcnum',       'int',         '',      '', '', '', 
         'countrycode',  'varchar',     '',       3, '', '', 
         'phonenum',     'varchar',     '',      15, '', '',  #12 ?
+        'sim_imsi',     'varchar', 'NULL',      15, '', '',
         'pin',          'varchar', 'NULL', $char_d, '', '',
         'sip_password', 'varchar', 'NULL', $char_d, '', '',
         'phone_name',   'varchar', 'NULL', $char_d, '', '',
diff --git a/FS/FS/svc_phone.pm b/FS/FS/svc_phone.pm
index 118748e..bb57573 100644
--- a/FS/FS/svc_phone.pm
+++ b/FS/FS/svc_phone.pm
@@ -22,10 +22,11 @@ $DEBUG = 0;
 @pw_set = ( 'a'..'k', 'm','n', 'p-z', 'A'..'N', 'P'..'Z' , '2'..'9' );
 
 #ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::svc_acct'} = sub { 
+FS::UID->install_callback( sub { 
   $conf = new FS::Conf;
   $phone_name_max = $conf->config('svc_phone-phone_name-max_length');
-};
+}
+);
 
 =head1 NAME
 
@@ -67,6 +68,10 @@ primary key
 
 =item phonenum
 
+=item sim_imsi
+
+SIM IMSI (http://en.wikipedia.org/wiki/International_mobile_subscriber_identity)
+
 =item sip_password
 
 =item pin
@@ -146,6 +151,7 @@ sub table_info {
                             disable_select => 1,
                           },
         'phonenum'     => 'Phone number',
+        'sim_imsi'     => 'IMSI', #http://en.wikipedia.org/wiki/International_mobile_subscriber_identity
         'pin'          => { label => 'Voicemail PIN', #'Personal Identification Number',
                             type  => 'text',
                             disable_inventory => 1,
@@ -464,6 +470,7 @@ sub check {
     $self->ut_numbern('svcnum')
     || $self->ut_numbern('countrycode')
     || $self->$phonenum_check_method('phonenum')
+    || $self->ut_numbern('sim_imsi')
     || $self->ut_anything('sip_password')
     || $self->ut_numbern('pin')
     || $self->ut_textn('phone_name')
@@ -484,6 +491,10 @@ sub check {
   ;
   return $error if $error;
 
+  return 'Illegal IMSI (not 14-15 digits)' #shorter?
+    if length($self->sim_imsi)
+    && ( length($self->sim_imsi) < 14 || length($self->sim_imsi) > 15 );
+
     # LNP data validation
     return 'Cannot set LNP fields: no LNP in progress'
 	if ( ($self->lnp_desired_due_date || $self->lnp_due_date 
diff --git a/httemplate/edit/svc_phone.cgi b/httemplate/edit/svc_phone.cgi
index 9647b68..8ee71b8 100644
--- a/httemplate/edit/svc_phone.cgi
+++ b/httemplate/edit/svc_phone.cgi
@@ -28,6 +28,11 @@ my $begin_callback = sub {
                 type     => 'select-did',
                 label    => 'Phone number',
                 multiple => $bulk,
+              },
+              { field     => 'sim_imsi',
+                type      => 'text',
+                size      => 15,
+                maxlength => 15,
               };
 
   push @$fields, { field => 'domsvc',
diff --git a/httemplate/view/svc_phone.cgi b/httemplate/view/svc_phone.cgi
index 40c8d85..0eba093 100644
--- a/httemplate/view/svc_phone.cgi
+++ b/httemplate/view/svc_phone.cgi
@@ -16,7 +16,7 @@ my %labels = map { $_ =>  ( ref($fields->{$_})
                          );
                  } keys %$fields;
 
-my @fields = qw( countrycode phonenum );
+my @fields = qw( countrycode phonenum sim_imsi );
 push @fields, 'domain' if $conf->exists('svc_phone-domain');
 push @fields, qw( pbx_title sip_password pin phone_name forwarddst email );
 

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/Schema.pm               |    1 +
 FS/FS/svc_phone.pm            |   15 +++++++++++++--
 httemplate/edit/svc_phone.cgi |    5 +++++
 httemplate/view/svc_phone.cgi |    2 +-
 4 files changed, 20 insertions(+), 3 deletions(-)




More information about the freeside-commits mailing list