BIG COMMIT: minimal fix to authorities search
[koha.git] / cataloguing / value_builder / marc21_field_008_authorities.pl
index 9da4ae2..6ad1082 100755 (executable)
@@ -1,3 +1,4 @@
+
 #!/usr/bin/perl
 
 
@@ -31,33 +32,27 @@ use C4::Output;
 plugin_parameters : other parameters added when the plugin is called by the dopop function
 
 =cut
+
 # find today's date
-my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
-$year = substr($year,1,2);
-$mon +=1;
-my $date = "$year-$mon-$mday";
-my $res  = "";
-if (length($mon)==1) {
-       $mon='0'.$mon;
-}
-if (length($mday)==1) {
-        $mday='0'.$mday;
-}
-my $dateentered = "$year$mon$mday";
+my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); 
+
+$year +=1900; $mon +=1;
+my $dateentered = substr($year,2,2).sprintf ("%0.2d", $mon).sprintf ("%0.2d",$mday);
 sub plugin_parameters {
-my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
-return "";
+       my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
+       return "";
 }
 
 sub plugin_javascript {
-my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
-my $function_name= $field_number;
-my $res="
+       my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
+       my $function_name= $field_number;
+       my $res="
 <script type=\"text/javascript\">
 //<![CDATA[
 
 function Focus$function_name(subfield_managed) {
-return 1;
+    document.getElementById(\"$field_number\").value='$dateentered' + 't        xxu||||| |||| 00| 0 eng d';
+    return 1;
 }
 
 function Blur$function_name(subfield_managed) {
@@ -66,25 +61,25 @@ function Blur$function_name(subfield_managed) {
 
 function Clic$function_name(i) {
        defaultvalue=document.getElementById(\"$field_number\").value;
-       newin=window.open(\"plugin_launcher.pl?plugin_name=marc21_field_008_authorities.pl&index=$field_number&result=\"+defaultvalue,\"unimarc field 100\",'width=1000,height=600,toolbar=false,scrollbars=yes');
+       newin=window.open(\"plugin_launcher.pl?plugin_name=marc21_field_008.pl&index=$field_number&result=\"+defaultvalue,\"unimarc field 100\",'width=1000,height=600,toolbar=false,scrollbars=yes');
 
 }
 //]]>
 </script>
 ";
 
-return ($function_name,$res);
+       return ($function_name,$res);
 }
 sub plugin {
-my ($input) = @_;
+       my ($input) = @_;
        my $index= $input->param('index');
        my $result= $input->param('result');
 
 
        my $dbh = C4::Context->dbh;
 
-my ($template, $loggedinuser, $cookie)
-    = get_template_and_user({template_name => "cataloguing/value_builder/marc21_field_008_authorities.tmpl",
+       my ($template, $loggedinuser, $cookie)
+    = get_template_and_user({template_name => "cataloguing/value_builder/marc21_field_008.tmpl",
                             query => $input,
                             type => "intranet",
                             authnotrequired => 0,
@@ -92,7 +87,8 @@ my ($template, $loggedinuser, $cookie)
                             debug => 1,
                             });
 #      $result = "      t        xxu           00  0 eng d" unless $result;
-       $result = "      t        xxu||||| |||| 00| 0 eng d" unless $result;
+       $result = "$dateentered"."t        xxu||||| |||| 00| 0 eng d" unless $result;
+       my $f1 = substr($result,0,6);
        my $f6 = substr($result,6,1);
        my $f710 = substr($result,7,4);
        my $f1114 = substr($result,11,4);
@@ -111,8 +107,12 @@ my ($template, $loggedinuser, $cookie)
        my $f38 = substr($result,38,1);
        my $f39 = substr($result,39,1);
 
+if ((!$f1) ||($f1 =~ m/ /)){
+       $f1=$dateentered;
+}
+
        $template->param(                               index => $index,
-                                                       dateentered => $dateentered,
+                                                       f1 => $f1,
                                                        f6 => $f6,
                                                        "f6$f6" => $f6,
                                                        f710 => $f710,