X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=blobdiff_plain;f=web%2Fhtdocs%2Fdetails%2Fedit.mc;h=95686a176d80cd6908fc7894781df500a09cfd06;hp=038923537463fc19cd97eadcf53da261f1c368f7;hb=0bed5b77c0f02b285b1edf5b11ce57459aa02740;hpb=c64fb99a28eba8ae5e6e3f51a136c0b22a68e310 diff --git a/web/htdocs/details/edit.mc b/web/htdocs/details/edit.mc index 0389235..95686a1 100644 --- a/web/htdocs/details/edit.mc +++ b/web/htdocs/details/edit.mc @@ -1,4 +1,4 @@ -%# $Id: edit.mc,v 1.35 2007-07-16 11:56:14 mike Exp $ +%# $Id: edit.mc,v 1.37 2007-08-23 14:29:18 mike Exp $ <%args> $op $id => undef ### should be extracted using utf8param() @@ -40,6 +40,15 @@ my $protocol = utf8param($r, "protocol"); my $host = utf8param($r, "host"); my $port = utf8param($r, "port"); my $dbname = utf8param($r, "dbname"); + +if ((!defined $port || $port eq "") && + (defined $protocol && $protocol ne "")) { + # Port-guessing based on defaults for each protocol + $port = $protocol eq "Z39.50" ? 210 : 80; + warn "guessed port $port"; + $r->param(port => $port); +} + my $newid; if (defined $protocol && $protocol ne "" && defined $host && $host ne "" && @@ -59,6 +68,14 @@ if (!defined $id) { print qq[

Please specify protocol, host, port and database name.

\n]; undef $update; + } elsif ($host !~ /^\w+\.[\w.]*\w$/i) { + print qq[

+ This host name is not valid.

\n]; + undef $update; + } elsif ($port !~ /^\d*$/i) { + print qq[

+ This port number is not valid.

\n]; + undef $update; } else { # Creating new record, all necessary data is present. Check # that the new record is not a duplicate of an existing one.