X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_pkg%2Fglobal_Mixin.pm;h=1d2a6017af9a025f88a052d0fa02cc9172e4b21c;hb=581667942ed4683643f24d1a7bbbe499030f1ca4;hp=137db1cbc60f93ede240bfb109ce50bbfdadc829;hpb=071d7247b2fb2c6c8f815e36eed5c8c0c0ccb549;p=freeside.git diff --git a/FS/FS/part_pkg/global_Mixin.pm b/FS/FS/part_pkg/global_Mixin.pm index 137db1cbc..1d2a6017a 100644 --- a/FS/FS/part_pkg/global_Mixin.pm +++ b/FS/FS/part_pkg/global_Mixin.pm @@ -3,6 +3,17 @@ package FS::part_pkg::global_Mixin; use strict; use vars qw(%info); +use Tie::IxHash; +tie my %a2billing_types, 'Tie::IxHash', ( + 0 => 'Prepaid', + 1 => 'Postpaid', +); + +tie my %a2billing_simultaccess, 'Tie::IxHash', ( + 0 => 'Disabled', + 1 => 'Enabled', +); + %info = ( 'disabled' => 1, 'fields' => { @@ -29,13 +40,90 @@ use vars qw(%info); 'changing packages', 'type' => 'checkbox', }, - }, + 'delay_cancel' => { + 'name' => 'Automatic suspension period before cancelling', + 'type' => 'checkbox', + }, + + # miscellany--maybe put this in a separate module? + + 'a2billing_tariff' => { + 'name' => 'A2Billing tariff group ID', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + } + }, + 'a2billing_type' => { + 'name' => 'A2Billing card type', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + 'type' => 'select', + 'select_options' => \%a2billing_types, + }, + 'a2billing_simultaccess' => { + 'name' => 'A2Billing Simultaneous Access', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + 'type' => 'select', + 'select_options' => \%a2billing_simultaccess, + }, + 'a2billing_carrier_cost_min' => { + 'name' => 'A2Billing inbound carrier cost', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + 'a2billing_carrer_initblock_offp' => { + 'name' => 'A2Billing inbound carrier min duration', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + 'a2billing_carrier_increment_offp' => { + 'name' => 'A2Billing inbound carrier billing block', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + 'a2billing_retail_cost_min_offp' => { + 'name' => 'A2Billing inbound retail cost', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + 'a2billing_retail_initblock_offp' => { + 'name' => 'A2Billing inbound retail min duration', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + 'a2billing_retail_increment_offp' => { + 'name' => 'A2Billing inbound retail billing block', + 'display_if' => sub { + FS::part_export->count("exporttype = 'a2billing'") > 0; + }, + }, + + }, 'fieldorder' => [ qw( setup_fee recur_fee unused_credit_cancel unused_credit_suspend unused_credit_change + delay_cancel + + a2billing_tariff + a2billing_type + a2billing_simultaccess + a2billing_carrier_cost_min + a2billing_carrer_initblock_offp + a2billing_carrier_increment_offp + a2billing_retail_cost_min_offp + a2billing_retail_initblock_offp + a2billing_retail_increment_offp )], );