X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=blobdiff_plain;f=web%2Fhtdocs%2Fdetails%2Fdelete.mc;h=a1ae5f2700c93312a04c2f1a83cb2d690bf6ff74;hp=89cf5d38735c26ef712a6a4b41449818299cf0b6;hb=6381c4e99c6e46de25e915c2b7e176936421bd0e;hpb=d11f318e95f9557cdd09588c1f066a57e8af6029 diff --git a/web/htdocs/details/delete.mc b/web/htdocs/details/delete.mc index 89cf5d3..a1ae5f2 100644 --- a/web/htdocs/details/delete.mc +++ b/web/htdocs/details/delete.mc @@ -1,4 +1,4 @@ -%# $Id: delete.mc,v 1.6 2007-04-25 13:28:42 mike Exp $ +%# $Id: delete.mc,v 1.7 2007-06-27 11:09:32 mike Exp $ <%args> $id $really => 0 @@ -10,44 +10,16 @@ $really => 0 <% xml_encode($id) %>?

- Yes
- No
+ Yes
+ No

% } else { <%perl> - # We can't delete records using recordIdOpaque, since character - # sets are handled differently here in extended services from how - # they are used in the Alvis filter's record-parsing, and so - # non-ASCII characters come out differently in the two contexts. - # Instead, we must send a record whose contents indicate the ID of - # that which we wish to delete. There are two ways, both - # unsatisfactory: we could either fetch the actual record them - # resubmit it in the deletion request (which wastes a search and a - # fetch) or we could build a record by hand from the parsed-out - # components (which is error-prone and which I am not 100% certain - # will work since the other contents of the record will be - # different). The former evil seems to be the lesser. - my $conn = new ZOOM::Connection("localhost:8018/IR-Explain---1", 0, + my $db = ZOOM::IRSpy::connect_to_registry(); + my $conn = new ZOOM::Connection($db, 0, user => "admin", password => "fruitbat", elementSetName => "zeerex"); - my $rs = $conn->search(new ZOOM::Query::CQL(cql_target($id))); - if ($rs->size() == 0) { - $m->comp("/details/error.mc", - title => "Error", message => "No such ID '$id'"); - return 0; - } - my $rec = $rs->record(0); - my $xml = $rec->render(); - - my $p = $conn->package(); - $p->option(action => "recordDelete"); - $p->option(record => $xml); - $p->send("update"); - $p->destroy(); - - $p = $conn->package(); - $p->send("commit"); - $p->destroy(); + ZOOM::IRSpy::_delete_record($conn, $id);

Deleted record