summaryrefslogtreecommitdiff
path: root/FS/FS/TicketSystem
diff options
context:
space:
mode:
authorjeff <jeff>2007-09-24 15:47:52 +0000
committerjeff <jeff>2007-09-24 15:47:52 +0000
commit2f3b4161da680cd0fff8c91dbdc50fe5e974610e (patch)
treeb38079387c295996bd50faba7636343ac85aebd5 /FS/FS/TicketSystem
parent91caf036bc222d20d078e31f1d28c2d6c86805e1 (diff)
self-service support usage improvements (1733)
Diffstat (limited to 'FS/FS/TicketSystem')
-rw-r--r--FS/FS/TicketSystem/RT_External.pm48
1 files changed, 48 insertions, 0 deletions
diff --git a/FS/FS/TicketSystem/RT_External.pm b/FS/FS/TicketSystem/RT_External.pm
index ea9c2b5..cd6834c 100644
--- a/FS/FS/TicketSystem/RT_External.pm
+++ b/FS/FS/TicketSystem/RT_External.pm
@@ -280,5 +280,53 @@ sub baseurl {
$external_url;
}
+sub _retrieve_single_value {
+ my( $self, $sql ) = @_;
+
+ warn "$me $sql" if $DEBUG;
+ my $sth = $dbh->prepare($sql) or die $dbh->errstr. "preparing $sql";
+ $sth->execute or die $sth->errstr. "executing $sql";
+
+ my $arrayref = $sth->fetchrow_arrayref;
+ $arrayref ? $arrayref->[0] : $arrayref;
+}
+
+sub transaction_creator {
+ my( $self, $transaction_id ) = @_;
+
+ my $sql = "SELECT name from transactions JOIN users ON ".
+ "transactions.creator=users.id WHERE transactions.id = ".
+ $transaction_id;
+
+ $self->_retrieve_single_value($sql);
+}
+
+sub transaction_ticketid {
+ my( $self, $transaction_id ) = @_;
+
+ my $sql = "SELECT objectid from transactions WHERE transactions.id = ".
+ $transaction_id;
+
+ $self->_retrieve_single_value($sql);
+}
+
+sub transaction_subject {
+ my( $self, $transaction_id ) = @_;
+
+ my $sql = "SELECT subject from transactions JOIN tickets ON objectid=".
+ "tickets.id WHERE transactions.id = ". $transaction_id;
+
+ $self->_retrieve_single_value($sql);
+}
+
+sub transaction_status {
+ my( $self, $transaction_id ) = @_;
+
+ my $sql = "SELECT status from transactions JOIN tickets ON objectid=".
+ "tickets.id WHERE transactions.id = ". $transaction_id;
+
+ $self->_retrieve_single_value($sql);
+}
+
1;