summaryrefslogtreecommitdiff
path: root/FS/FS/part_event/Condition.pm
diff options
context:
space:
mode:
authorivan <ivan>2010-09-19 03:02:09 +0000
committerivan <ivan>2010-09-19 03:02:09 +0000
commit71863412e2d2fd3c48c9c1220e6bf49122db270b (patch)
treee1c0eb967c28884db5902cc5ed6d5668a73a9e0a /FS/FS/part_event/Condition.pm
parent7863d7a397e90a07d0d5139fa3de872651cc9ac6 (diff)
another (hopefully significant) billing optimization, RT#6802
Diffstat (limited to 'FS/FS/part_event/Condition.pm')
-rw-r--r--FS/FS/part_event/Condition.pm22
1 files changed, 22 insertions, 0 deletions
diff --git a/FS/FS/part_event/Condition.pm b/FS/FS/part_event/Condition.pm
index ddd8a61..90b8385 100644
--- a/FS/FS/part_event/Condition.pm
+++ b/FS/FS/part_event/Condition.pm
@@ -306,6 +306,28 @@ sub condition_sql_option {
)";
}
+#c.f. part_event_condition_option.pm / part_event_condition_option_option
+#used for part_event/Condition/payby.pm
+sub condition_sql_option_option {
+ my( $class, $option ) = @_;
+
+ ( my $condname = $class ) =~ s/^.*:://;
+
+ my $optionnum =
+ "( SELECT optionnum FROM part_event_condition_option
+ WHERE part_event_condition_option.eventconditionnum =
+ cond_$condname.eventconditionnum
+ AND part_event_condition_option.optionname = '$option'
+ AND part_event_condition_option.optionvalue = 'HASH'
+ )";
+
+ "( SELECT optionname FROM part_event_condition_option_option
+ WHERE optionnum = $optionnum
+ )";
+
+}
+
+
=item condition_sql_option_age_from OPTION FROM_TIMESTAMP
This is a class method that returns an SQL fragment that will retreive a