summaryrefslogtreecommitdiff
path: root/FS/FS
diff options
context:
space:
mode:
authorivan <ivan>2010-04-30 02:32:39 +0000
committerivan <ivan>2010-04-30 02:32:39 +0000
commit6873aec01740ea7c70a5e20a3f3bce6e76bca410 (patch)
tree64298627d0396ab78310ce9f5059665a5f8c1bdd /FS/FS
parent2ac302e18d723563692cdbbd74f3e9e5331a3014 (diff)
communigate (phase 2): rules: show conditions/actions on rule browse, fix rule edit for conditions and actions without op/param, fix rule edit stickiness on errors. RT#7514
Diffstat (limited to 'FS/FS')
-rw-r--r--FS/FS/Mason.pm2
-rw-r--r--FS/FS/Schema.pm18
-rw-r--r--FS/FS/cgp_rule_action.pm2
-rw-r--r--FS/FS/cgp_rule_condition.pm4
4 files changed, 14 insertions, 12 deletions
diff --git a/FS/FS/Mason.pm b/FS/FS/Mason.pm
index 41c472d76..9ac9f6741 100644
--- a/FS/FS/Mason.pm
+++ b/FS/FS/Mason.pm
@@ -235,6 +235,8 @@ if ( -e $addl_handler_use_file ) {
use FS::cust_bill_pkg_discount;
use FS::svc_mailinglist;
use FS::cgp_rule;
+ use FS::cgp_rule_condition;
+ use FS::cgp_rule_action;
# Sammath Naur
if ( $FS::Mason::addl_handler_use ) {
diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm
index dcd618df1..07e5b309b 100644
--- a/FS/FS/Schema.pm
+++ b/FS/FS/Schema.pm
@@ -1801,11 +1801,11 @@ sub tables_hashref {
'cgp_rule_condition' => {
'columns' => [
- 'ruleconditionnum', 'serial', '', '', '', '',
- 'condition', 'varchar', '', $char_d, '', '',
- 'op', 'varchar', '', $char_d, '', '',
- 'params', 'varchar', '', 255, '', '',
- 'rulenum', 'int', '', '', '', '',
+ 'ruleconditionnum', 'serial', '', '', '', '',
+ 'condition', 'varchar', '', $char_d, '', '',
+ 'op', 'varchar', 'NULL', $char_d, '', '',
+ 'params', 'varchar', 'NULL', 255, '', '',
+ 'rulenum', 'int', '', '', '', '',
],
'primary_key' => 'ruleconditionnum',
'unique' => [],
@@ -1814,10 +1814,10 @@ sub tables_hashref {
'cgp_rule_action' => {
'columns' => [
- 'ruleactionnum', 'serial', '', '', '', '',
- 'action', 'varchar', '', $char_d, '', '',
- 'params', 'varchar', '', 255, '', '',
- 'rulenum', 'int', '', '', '', '',
+ 'ruleactionnum', 'serial', '', '', '', '',
+ 'action', 'varchar', '', $char_d, '', '',
+ 'params', 'varchar', 'NULL', 255, '', '',
+ 'rulenum', 'int', '', '', '', '',
],
'primary_key' => 'ruleactionnum',
'unique' => [],
diff --git a/FS/FS/cgp_rule_action.pm b/FS/FS/cgp_rule_action.pm
index 6dfd42427..170ab58db 100644
--- a/FS/FS/cgp_rule_action.pm
+++ b/FS/FS/cgp_rule_action.pm
@@ -111,7 +111,7 @@ sub check {
my $error =
$self->ut_numbern('ruleactionnum')
|| $self->ut_text('action')
- || $self->ut_text('params')
+ || $self->ut_textn('params')
|| $self->ut_foreign_key('rulenum', 'cgp_rule', 'rulenum')
;
return $error if $error;
diff --git a/FS/FS/cgp_rule_condition.pm b/FS/FS/cgp_rule_condition.pm
index f91b3e6f6..cfb671063 100644
--- a/FS/FS/cgp_rule_condition.pm
+++ b/FS/FS/cgp_rule_condition.pm
@@ -115,8 +115,8 @@ sub check {
my $error =
$self->ut_numbern('ruleconditionnum')
|| $self->ut_text('condition')
- || $self->ut_text('op')
- || $self->ut_text('params')
+ || $self->ut_textn('op')
+ || $self->ut_textn('params')
|| $self->ut_foreign_key('rulenum', 'cgp_rule', 'rulenum')
;
return $error if $error;