diff options
author | Mitch Jackson <mitch@freeside.biz> | 2018-02-16 18:13:27 -0600 |
---|---|---|
committer | Mitch Jackson <mitch@freeside.biz> | 2018-02-16 18:21:50 -0600 |
commit | 3117b156cf3d118ae6a76c823311bfd941fbdf86 (patch) | |
tree | cb4d1bb664deb0b587dab51f7c26d9067f2f79f9 | |
parent | 024e1169b90e76d4ecd61e6b8e7dbf1ade83bef1 (diff) |
RT# 79549 Requre a Rate Plan to use voip_cdr Price Plan
-rw-r--r-- | FS/FS/part_pkg.pm | 17 | ||||
-rw-r--r-- | FS/FS/part_pkg/voip_cdr.pm | 8 |
2 files changed, 18 insertions, 7 deletions
diff --git a/FS/FS/part_pkg.pm b/FS/FS/part_pkg.pm index da53715c6..fb0570647 100644 --- a/FS/FS/part_pkg.pm +++ b/FS/FS/part_pkg.pm @@ -787,11 +787,17 @@ sub check { =item check_options -For a passed I<$options> hashref, validates any options that -have 'validate' subroutines defined in the info hash, -then validates the entire hashref if the price plan has -its own 'validate' subroutine defined in the info hash -(I<$options> values might be altered.) +Pass an I<$options> hashref that contains the values to be +inserted or updated for any FS::part_pkg::MODULE.pm. + +For each key in I<$options>, validates the value by calling +the 'validate' subroutine defined for that option e.g. +FS::part_pkg::MODULE::plan_info()->{$KEY}->{validate}. The +option validation function is only called when the hashkey for +that option exists in I<$options>. + +Then the module validation function is called, from +FS::part_pkg::MODULE::plan_info()->{validate} Returns error message, or empty string if valid. @@ -2610,4 +2616,3 @@ schema.html from the base documentation. =cut 1; - diff --git a/FS/FS/part_pkg/voip_cdr.pm b/FS/FS/part_pkg/voip_cdr.pm index 8085c1995..1fb3bec84 100644 --- a/FS/FS/part_pkg/voip_cdr.pm +++ b/FS/FS/part_pkg/voip_cdr.pm @@ -360,6 +360,13 @@ tie my %accountcode_tollfree_field, 'Tie::IxHash', ) ], 'weight' => 41, + 'validate' => sub { + # Validation function for FS::part_pkg::check_options() + my $options = shift; + return "Please select a rate plan for price plan VoIP/telco CDR rating (standard)" + unless $options->{ratenum}; + return; + }, ); sub price_info { @@ -724,4 +731,3 @@ sub hide_svc_detail { 1; - |