version 1.66, 2001/03/22 13:26:59
|
version 1.75, 2001/03/22 14:24:39
|
Line 94 sub handler {
|
Line 94 sub handler {
|
END |
END |
|
|
$closebutton=<<END if $ENV{'form.catalogmode'} eq 'interactive'; |
$closebutton=<<END if $ENV{'form.catalogmode'} eq 'interactive'; |
<input type="button" name="close" value="CLOSE" onClick="self.close()"> |
<input type="button" name="close" value='CLOSE' onClick="self.close()"> |
END |
END |
|
|
# ------------------------------------------------ First, check out environment |
# ------------------------------------------------ First, check out environment |
Line 267 ENDDOCUMENT
|
Line 267 ENDDOCUMENT
|
$r->print(<<ENDDOCUMENT); |
$r->print(<<ENDDOCUMENT); |
<font color="#800000">Search historic archives</font> |
<font color="#800000">Search historic archives</font> |
<br> |
<br> |
<input type="submit" name="basicsubmit" value="SEARCH"> |
<input type="submit" name="basicsubmit" value='SEARCH' /> |
<input type="reset" name="reset" value="RESET"> |
<input type="reset" name="reset" value='RESET' /> |
$closebutton |
$closebutton |
$basicviewselect |
$basicviewselect |
</p> |
</p> |
Line 276 $basicviewselect
|
Line 276 $basicviewselect
|
<h3>Advanced Search</h3> |
<h3>Advanced Search</h3> |
$scrout |
$scrout |
<p> |
<p> |
<input type="submit" name="advancedsubmit" value="SEARCH"> |
<input type="submit" name="advancedsubmit" value='SEARCH' /> |
<input type="reset" name="reset" value="RESET"> |
<input type="reset" name="reset" value='RESET' /> |
$closebutton |
$closebutton |
$advancedviewselect |
$advancedviewselect |
</p> |
</p> |
Line 292 ENDDOCUMENT
|
Line 292 ENDDOCUMENT
|
|
|
sub simpletextfield { |
sub simpletextfield { |
my ($name,$value)=@_; |
my ($name,$value)=@_; |
return '<input type=text name="'.$name.'" size=20 value="'.$value.'">'; |
return '<input type=text name=\''.$name. |
|
'\' size=20 value=\''.$value.'\' />'; |
} |
} |
|
|
sub simplecheckbox { |
sub simplecheckbox { |
my ($name,$value)=@_; |
my ($name,$value)=@_; |
my $checked=''; |
my $checked=''; |
$checked="CHECKED" if $value eq 'on'; |
$checked="CHECKED" if $value eq 'on'; |
return '<input type=checkbox name="'.$name.'" '. $checked . '>'; |
return '<input type=checkbox name=\''.$name.'\' '. $checked . '>'; |
} |
} |
|
|
sub searchphrasefield { |
sub searchphrasefield { |
Line 311 END
|
Line 312 END
|
my $uctitle=uc($title); |
my $uctitle=uc($title); |
return "\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:</b>". |
return "\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:</b>". |
"</FONT> $instruction<br>". |
"</FONT> $instruction<br>". |
'<input type=text name="'.$name.'" size=80 value="'.$value.'">'; |
'<input type=text name="'.$name.'" size=80 value=\''.$value.'\'>'; |
} |
} |
|
|
sub dateboxes { |
sub dateboxes { |
Line 464 sub selectbox {
|
Line 465 sub selectbox {
|
my $selout="\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:". |
my $selout="\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:". |
"</b></font><br>".'<select name="'.$name.'">'; |
"</b></font><br>".'<select name="'.$name.'">'; |
map { |
map { |
$selout.='<option value="'.$_.'"'; |
$selout.='<option value=\''.$_.'\''; |
if ($_ eq $value) { $selout.=' selected'; } |
if ($_ eq $value) { $selout.=' selected'; } |
$selout.='>'.$options{$_}.'</option>'; |
$selout.='>'.$options{$_}.'</option>'; |
} sort keys %options; |
} sort keys %options; |
Line 487 sub advancedsearch {
|
Line 488 sub advancedsearch {
|
'lastrevisiondateend_day','lastrevisiondateend_year', |
'lastrevisiondateend_day','lastrevisiondateend_year', |
'notes','abstract','mime','language','owner', |
'notes','abstract','mime','language','owner', |
'custommetadata') { |
'custommetadata') { |
$ENV{"form.$field"}=~s/[^\w\s\(\)\-\"\']//g; |
$ENV{"form.$field"}=~s/[^\w\s\(\)\=\-\"\']//g; |
} |
} |
for my $field ('title','author','subject','keywords','url','version', |
for my $field ('title','author','subject','keywords','url','version', |
'notes','abstract','mime','language','owner', |
'notes','abstract','mime','language','owner', |
Line 791 sub build_custommetadata_query {
|
Line 792 sub build_custommetadata_query {
|
-build => 'Text::Query::BuildAdvancedString'); |
-build => 'Text::Query::BuildAdvancedString'); |
$q->prepare($logic_statement); |
$q->prepare($logic_statement); |
my $matchexp=${$q}{'-parse'}{'-build'}{'matchstring'}; |
my $matchexp=${$q}{'-parse'}{'-build'}{'matchstring'}; |
return $matchexp; |
# quick fix to change literal into xml tag-matching |
|
# will eventually have to write a separate builder module |
|
my $oldmatchexp=$matchexp; |
|
$matchexp=~s/(\w+)\\\=(\w+)/\\\<$1\\\>\[\^\\\<\]\*$2\[\^\\\<\]\*\\\<\\\/$1\\\>/g; |
|
return $oldmatchexp . $matchexp; |
} |
} |
|
|
# - Recursively parse a reverse notation expression into a SQL query expression |
# - Recursively parse a reverse notation expression into a SQL query expression |
Line 1013 sub make_persistent {
|
Line 1018 sub make_persistent {
|
if (/^form\./ && !/submit/) { |
if (/^form\./ && !/submit/) { |
my $name=$_; |
my $name=$_; |
my $key=$name; |
my $key=$name; |
$ENV{$key}=~s/\"/\\\"/g; |
$ENV{$key}=~s/\'//g; # do not mess with html field syntax |
$name=~s/^form\.//; |
$name=~s/^form\.//; |
$persistent.=<<END; |
$persistent.=<<END; |
<INPUT TYPE='hidden' NAME='$name' VALUE='$ENV{$key}'> |
<input type='hidden' name='$name' value='$ENV{$key}' /> |
END |
END |
} |
} |
} (keys %ENV); |
} (keys %ENV); |