+sub description {
+ my $self = shift;
+ my $desc = $self->description_short;
+
+ ( my $months = $self->months ) =~ s/\.0+$//;
+ $months =~ s/(\.\d*[1-9])0+$/$1/;
+ if ($months) {
+ if ($months == 1) {
+ $desc .= " for 1 month";
+ } else {
+ $desc .= " for $months months";
+ }
+ }
+
+ $desc .= ', applies to setup' if $self->setup;
+
+ $desc;
+}
+
+sub classname {
+ my $self = shift;
+ my $discount_class = $self->discount_class;
+ $discount_class ? $discount_class->classname : '(none)';
+}
+
+sub discount_class {
+ my $self = shift;
+ qsearchs('discount_class', { 'classnum' => $self->classnum });
+}
+
+