Stop unnecessary warnings in get_language
[koha.git] / cataloguing / value_builder / dateaccessioned.pl
index 19f7227..5e834a4 100755 (executable)
@@ -1,7 +1,5 @@
 #!/usr/bin/perl
 
-# $Id: usmarc_field_952v.pl,v 1.1.2.2 2006/09/20 02:59:53 kados Exp $
-
 # Copyright 2000-2002 Katipo Communications
 #
 # This file is part of Koha.
 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
 #
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA  02111-1307 USA
-
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
+use strict;
+use warnings;
 
 =head1
 
-plugin_parameters : other parameters added when the plugin is called by the dopop function
+plugin_parameters : useless here
 
 =cut
+
 sub plugin_parameters {
-       my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
+       my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
        return "";
 }
 
@@ -35,9 +35,9 @@ sub plugin_parameters {
 
 plugin_javascript : the javascript function called when the user enters the subfield.
 contain 3 javascript functions :
-* one called when the field is entered (OnFocus). Named FocusXXX
-* one called when the field is leaved (onBlur). Named BlurXXX
-* one called when the ... link is clicked (<a href="javascript:function">) named ClicXXX
+* one called when the   field  is entered (OnFocus) named FocusXXX
+* one called when the   field  is  left   (onBlur ) named BlurXXX
+* one called when the ... link is clicked (onClick) named ClicXXX
 
 returns :
 * XXX
@@ -45,57 +45,62 @@ returns :
 the 3 scripts are inserted after the <input> in the html code
 
 =cut
-sub plugin_javascript {
-       my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
-       my $function_name= "dateaccessioned".(int(rand(100000))+1);
 
-       # find today's date
-       my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
-                                                               localtime(time);
-       $year +=1900;
-       $mon +=1;
-       $pmon = sprintf("%0*d", "2",$mon);
+sub plugin_javascript {
+       # my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
+       my $function_name = "dateaccessioned".(int(rand(100000))+1);
 
-       $pmday = sprintf("%0*d", "2",$mday);
-       my $date = "$year-$pmon-$pmday";
+    require C4::Dates;
+       my $date = C4::Dates->today('iso');
 
        # find the tag/subfield mapped to items.dateaccessioned
-       my ($tag,$subfield) =  GetMarcFromKohaField("items.dateaccessioned");
-       my $res  = "
-<script type=\"text/javascript\">
+       my ($tag,$subfield) =  GetMarcFromKohaField("items.dateaccessioned","");
+       my $res  = <<END_OF_JS;
+<script type="text/javascript">
 //<![CDATA[
+//  
+// from: cataloguing/value_builder/dateaccessioned.pl
+
 function Blur$function_name(index) {
-//need this?
+    //date validation could go here
+}
+
+function Focus$function_name(subfield_managed, id, force) {
+    //var summary = "";
+    //for (i=0 ; i<document.f.field_value.length ; i++) {
+    //  summary += i + ": " + document.f.tag[i].value + " " + document.f.subfield[i].value + ": " + document.f.field_value[i].value + "\\n"; 
+    //}
+    //alert("Got focus, subfieldmanaged: " + subfield_managed + "\\n" + summary);
+    set_to_today(id);
+    return 0;
 }
 
-function Focus$function_name(subfield_managed) {
-       for (i=0 ; i<document.f.field_value.length ; i++) {
-                if (document.f.tag[i].value == '$tag' && document.f.subfield[i].value == '$subfield') {
-                                               if (document.f.field_value[i].value == '') {
-                                                       document.f.field_value[i].value = '$date';
-                                               }
-                }
-        }
-return 0;
+function Clic$function_name(id) {
+    set_to_today(id, 1);
+    return 0;
 }
 
-function Clic$function_name(subfield_managed) {
+function set_to_today(id, force) {
+    if (! id) { alert(_("Bad id ") + id + _(" sent to set_to_today()")); return 0; }
+    if (\$("#" + id).val() == '' || \$("#" + id).val() == '0000-00-00' || force) {
+        \$("#" + id).val("$date");
+    }
 }
 //]]>
 </script>
-";
-       return ($function_name,$res);
+END_OF_JS
+       return ($function_name, $res);
 }
 
 =head1
 
-plugin : the true value_builded. The screen that is open in the popup window.
+plugin: useless here.
 
 =cut
 
 sub plugin {
-my ($input) = @_;
-return "";
+#    my ($input) = @_;
+    return "";
 }
 
 1;