Bug Fixing : Adding item had a javascript Error.
authorHenri-Damien LAURENT <henridamien@koha-fr.org>
Fri, 19 Oct 2007 19:00:35 +0000 (21:00 +0200)
committerJoshua Ferraro <jmf@liblime.com>
Sat, 20 Oct 2007 19:12:01 +0000 (14:12 -0500)
So.
There are no more errors on saving an item.
There are still little problems when you duplicate a subfield :
Display table is not adapted
When you reedit, all the duplicate field values are concatenated.
But apart from that, it works.
Donot have time enough to work on it these days.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
cataloguing/additem.pl
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tmpl

index e99d0ce..3d32130 100755 (executable)
@@ -60,7 +60,7 @@ my $dbh = C4::Context->dbh;
 my $error = $input->param('error');
 my $biblionumber = $input->param('biblionumber');
 my $itemnumber = $input->param('itemnumber');
-
+warn Data::Dumper::Dumper($input->param());
 my $op = $input->param('op');
 
 # find itemtype
@@ -142,6 +142,9 @@ if ($op eq "additem") {
     # build indicator hash.
     my @ind_tag = $input->param('ind_tag');
     my @indicator = $input->param('indicator');
+  warn "tags :@tags"  ;
+  warn "subfields :@subfields"  ;
+  warn "values :@values"  ;
 #    my $itemnumber = $input->param('itemnumber');
     my $xml = TransformHtmlToXml(\@tags,\@subfields,\@values,\@indicator,\@ind_tag,'ITEM');
         my $itemrecord=MARC::Record::new_from_xml($xml, 'UTF-8');
@@ -346,7 +349,7 @@ foreach my $tag (sort keys %{$tagslib}) {
           }
       }
       $subfield_data{marc_value} =CGI::scrolling_list(
-          -name     => "tag_".$tag."_subfield_".$subfield."_".$index_subfield,
+          -name     => "field_value",
           -values   => \@authorised_values,
           -default  => $value,
           -labels   => \%authorised_lib,
@@ -363,7 +366,7 @@ foreach my $tag (sort keys %{$tagslib}) {
         $subfield_data{marc_value} =
             "<input type=\"text\"
                     id=\"".$subfield_data{id}."\"
-                    name=\"".$subfield_data{id}."\"
+                    name=\"field_value\"
                     value=\"$value\"
                     class=\"input_marceditor\"
                     tabindex=\"1\"
@@ -393,7 +396,7 @@ foreach my $tag (sort keys %{$tagslib}) {
                 "<input tabindex=\"1\"
                         type=\"text\"
                         id=\"".$subfield_data{id}."\"
-                        name=\"".$subfield_data{id}."\"
+                        name=\"field_value\"
                         value=\"$value\"
                         class=\"input_marceditor\"
                         onfocus=\"Focus$function_name(".$subfield_data{random}.")\"
@@ -409,7 +412,7 @@ foreach my $tag (sort keys %{$tagslib}) {
             "<input tabindex=\"1\"
                     type=\"hidden\"
                     id=\"".$subfield_data{id}."\"
-                    name=\"".$subfield_data{id}."\"
+                    name=\"field_value\"
                     size=\"67\"
                     maxlength=\"255\" 
                     value=\"$value\" \/>
@@ -419,7 +422,7 @@ foreach my $tag (sort keys %{$tagslib}) {
         $subfield_data{marc_value} =
             "<input type=\"text\"
                     id=\"".$subfield_data{id}."\"
-                    name=\"".$subfield_data{id}."\"
+                    name=\"field_value\"
                     class=\"input_marceditor\"
                     tabindex=\"1\"
                     size=\"67\"
@@ -444,7 +447,7 @@ foreach my $tag (sort keys %{$tagslib}) {
                 "<textarea cols=\"70\"
                            rows=\"4\"
                            id=\"".$subfield_data{id}."\"
-                           name=\"".$subfield_data{id}."\"
+                           name=\"field_value\"
                            class=\"input_marceditor\"
                            tabindex=\"1\"
                             size=\"67\"
@@ -456,7 +459,7 @@ foreach my $tag (sort keys %{$tagslib}) {
             $subfield_data{marc_value} =
                 "<input type=\"text\"
                         id=\"".$subfield_data{id}."\"
-                        name=\"".$subfield_data{id}."\"
+                        name=\"field_value\"
                         value=\"$value\"
                         tabindex=\"1\"
                         size=\"67\"
index 8dceafd..221353d 100644 (file)
@@ -56,7 +56,9 @@ function CloneSubfield(index){
     var original = document.getElementById(index); //original <div>
     var clone = original.cloneNode(true);
     var new_key = CreateKey();
-    var new_id  = original.getAttribute('id')+new_key;
+    var old_id =  original.getAttribute('id');
+    old_id=old_id.substr(12);
+    var new_id  = old_id+new_key;
     
     // set the attribute for the new 'div' subfields
     var inputs     = clone.getElementsByTagName('input');
@@ -68,21 +70,21 @@ function CloneSubfield(index){
     for(var i=0,len=inputs.length; i<len ; i++ ){
         id_input = inputs[i].getAttribute('id')+new_key;
         inputs[i].setAttribute('id',id_input);
-        inputs[i].setAttribute('name',inputs[i].getAttribute('name')+new_key);
+        inputs[i].setAttribute('name',inputs[i].getAttribute('name'));
     }
     
     // select 
     for(var i=0,len=selects.length; i<len ; i++ ){
         id_input = selects[i].getAttribute('id')+new_key;
         selects[i].setAttribute('id',selects[i].getAttribute('id')+new_key);
-        selects[i].setAttribute('name',selects[i].getAttribute('name')+new_key);
+        selects[i].setAttribute('name',selects[i].getAttribute('name'));
     }
     
     // textarea
     for(var i=0,len=textareas.length; i<len ; i++ ){
         id_input = textareas[i].getAttribute('id')+new_key;
         textareas[i].setAttribute('id',textareas[i].getAttribute('id')+new_key);
-        textareas[i].setAttribute('name',textareas[i].getAttribute('name')+new_key);
+        textareas[i].setAttribute('name',textareas[i].getAttribute('name'));
     }
     
     <!-- TMPL_UNLESS NAME='advancedMARCEditor' -->
@@ -138,9 +140,6 @@ function CreateKey(){
 
 <h1>Items for <!-- TMPL_VAR name="title" --> <!-- TMPL_IF NAME="author" --> by <!-- TMPL_VAR name="author" --><!-- /TMPL_IF --> (Record #<!-- TMPL_VAR NAME="biblionumber" -->)</h1>
 
-    <form method="post" action="/cgi-bin/koha/cataloguing/additem.pl" name="f">
-    <input type="hidden" name="op" value="<!-- TMPL_VAR NAME="op" -->" />
-    <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR NAME="biblionumber" -->" />
 <div id="cataloguing_additem_itemlist">
     <!-- TMPL_IF name="item_loop" -->
         <h2>Existing items</h2>
@@ -165,6 +164,9 @@ function CreateKey(){
 </div>
 
 <div id="cataloguing_additem_newitem">
+    <form method="post" action="/cgi-bin/koha/cataloguing/additem.pl" name="f">
+    <input type="hidden" name="op" value="<!-- TMPL_VAR NAME="op" -->" />
+    <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR NAME="biblionumber" -->" />
     <!-- TMPL_IF name="opisadd" -->
         <h2>Add Item</h2>
     <!-- TMPL_ELSE -->
@@ -184,6 +186,8 @@ function CreateKey(){
    
             </div>   
         <!-- /tmpl_loop -->
+    <input type="hidden" name="indicator" value=" " />
+    <input type="hidden" name="indicator" value=" " />
     <input type="hidden" name="itemnumber" value="<!-- TMPL_VAR NAME="itemnumber" -->" />
     <!-- TMPL_IF name="barcode_not_unique" -->
         ERROR : Barcode already exists !