[freeside-commits] branch master updated. d4251de78f0fe8543b3ef9ab2933d5f491435c5f

Ivan ivan at 420.am
Sat Jan 18 19:16:01 PST 2014


The branch, master has been updated
       via  d4251de78f0fe8543b3ef9ab2933d5f491435c5f (commit)
      from  543b41a1f5e3620949a9733588d10f15afcb6a09 (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 d4251de78f0fe8543b3ef9ab2933d5f491435c5f
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Sat Jan 18 19:16:00 2014 -0800

    pbx extensions, RT#26957

diff --git a/FS/FS/pbx_extension.pm b/FS/FS/pbx_extension.pm
new file mode 100644
index 0000000..e8975d8
--- /dev/null
+++ b/FS/FS/pbx_extension.pm
@@ -0,0 +1,124 @@
+package FS::pbx_extension;
+use base qw( FS::Record );
+
+use strict;
+#use FS::Record qw( qsearch qsearchs );
+
+=head1 NAME
+
+FS::pbx_extension - Object methods for pbx_extension records
+
+=head1 SYNOPSIS
+
+  use FS::pbx_extension;
+
+  $record = new FS::pbx_extension \%hash;
+  $record = new FS::pbx_extension { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+=head1 DESCRIPTION
+
+An FS::pbx_extension object represents an PBX extension.  FS::pbx_extension
+inherits from FS::Record.  The following fields are currently supported:
+
+=over 4
+
+=item extensionnum
+
+primary key
+
+=item svcnum
+
+svcnum
+
+=item extension
+
+extension
+
+=item pin
+
+pin
+
+=item sip_password
+
+sip_password
+
+=item phone_name
+
+phone_name
+
+
+=back
+
+=head1 METHODS
+
+=over 4
+
+=item new HASHREF
+
+Creates a new extension.  To add the extension to the database, see L<"insert">.
+
+Note that this stores the hash reference, not a distinct copy of the hash it
+points to.  You can ask the object for a copy with the I<hash> method.
+
+=cut
+
+sub table { 'pbx_extension'; }
+
+=item insert
+
+Adds this record to the database.  If there is an error, returns the error,
+otherwise returns false.
+
+=item delete
+
+Delete this record from the database.
+
+=item replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database.  If there is an error,
+returns the error, otherwise returns false.
+
+=item check
+
+Checks all fields to make sure this is a valid extension.  If there is
+an error, returns the error, otherwise returns false.  Called by the insert
+and replace methods.
+
+=cut
+
+sub check {
+  my $self = shift;
+
+  my $error = 
+    $self->ut_numbern('extensionnum')
+    || $self->ut_foreign_key('svcnum', 'svc_pbx', 'svcnum')
+    || $self->ut_number('extension')
+    || $self->ut_numbern('pin')
+    || $self->ut_textn('sip_password')
+    || $self->ut_textn('phone_name')
+  ;
+  return $error if $error;
+
+  $self->SUPER::check;
+}
+
+=back
+
+=head1 BUGS
+
+=head1 SEE ALSO
+
+L<FS::svc_pbx>, L<FS::Record>
+
+=cut
+
+1;
+

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

Summary of changes:
 FS/FS/{alarm_system.pm => pbx_extension.pm} |   59 +++++++++++++++------------
 1 files changed, 33 insertions(+), 26 deletions(-)
 copy FS/FS/{alarm_system.pm => pbx_extension.pm} (54%)




More information about the freeside-commits mailing list