X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=Commands%2FDef.pm;h=9b2addbd255489a8fc73b8485cb455fa6851c4a0;hb=5f3e2c69d303e9196a76dd10607b595cac6658a8;hp=89ceeee3f7ce30b34ec41e6d2e8df654e2a09466;hpb=5e02deb33fbdb994d72da23e8de85e633ec6654c;p=NDIRC.git
diff --git a/Commands/Def.pm b/Commands/Def.pm
index 89ceeee..9b2addb 100644
--- a/Commands/Def.pm
+++ b/Commands/Def.pm
@@ -187,5 +187,45 @@ WHERE id = $2
}
}
+sub setcalc
+ : Help(Usage: .setcalc callId calc | sets the calc for the given call.)
+ : Type(def)
+ : ACL(irc_setcalc)
+{
+ my ($self,$c,$msg) = @_;
+ my ($id,$calc) = $msg =~ /^(\d+) (.+)$/ or die 'ARGS';
+ my $dbh = $c->model;
+
+ $dbh->begin_work;
+ my $rows = $dbh->do(q{UPDATE calls SET calc = $2 WHERE id = $1}
+ ,undef,$id, $calc);
+ if ($rows == 1){
+ $c->reply("Updated calc call $id");
+ $calc = CGI::escapeHTML($calc);
+ $c->def_log($id , 'Updated calc to: [URL]'.$calc.'[/URL]');
+ $dbh->commit;
+ }else{
+ $c->reply("$id is not a valid call");
+ $dbh->rollback;
+ }
+}
+
+sub getcalc
+ : Help(Usage: .getcalc callId | receives the calc for the given call)
+ : Type(def)
+ : ACL(irc_getcalc)
+{
+ my ($self,$c,$msg) = @_;
+ my ($id) = $msg =~ /^(\d+)$/ or die 'ARGS';
+ my $dbh = $c->model;
+
+ my $calc = $dbh->selectrow_array(q{
+SELECT calc FROM calls WHERE id = $1}
+ ,undef,$id);
+ $calc //= "Bad call id, there is no such call.";
+ $c->reply("Calc for call $id: $calc");
+}
+
+
1;