Created attachment 39275 [details] [review] Bug 14213: Cataloging plugin in cloned field does not work A code change for report 10480 in cataloging.js does not work well in case you clone a field with a plugin on a subfield. The events (click, focus, etc.) do not work on the subfield of the clone. This patch corrects the situation by finding the right html element for adding event binding. NOTE: The test plan uses EXAMPLE.pl since many old plugins do not operate on the correct field value when cloning. This is corrected in bug 13437. Test plan: [1] Attach EXAMPLE.pl to field 007, 246h and 260c. In sql for 007: update marc_subfield_structure set value_builder='EXAMPLE.pl' where tagfield='007' and tagsubfield='@'; [2] Clone field 007. Verify that focus and click operate on both fields. Check also that the plugin works on the value corresponding with the button you clicked. [3] Clone field 246. Do the same checks on both subfields $h. [4] Clone subfield 260c. Do the same checks again.
Created attachment 39285 [details] [review] Bug 14213: Cataloging plugin in cloned field does not work A code change for report 10480 in cataloging.js does not work well in case you clone a field with a plugin on a subfield. The events (click, focus, etc.) do not work on the subfield of the clone. This patch corrects the situation by finding the right html element for adding event binding. NOTE: The test plan uses EXAMPLE.pl since many old plugins do not operate on the correct field value when cloning. This is corrected in bug 13437. Test plan: [1] Attach EXAMPLE.pl to field 007, 246h and 260c. In sql for 007: update marc_subfield_structure set value_builder='EXAMPLE.pl' where tagfield='007' and tagsubfield='@'; [2] Clone field 007. Verify that focus and click operate on both fields. Check also that the plugin works on the value corresponding with the button you clicked. [3] Clone field 246. Do the same checks on both subfields $h. [4] Clone subfield 260c. Do the same checks again. Test Remarks: ============ 1/ Setup a new framework (B213) based off 'Default' and fired off an SQL statement to update value_builder values for 007, 246$h and 269$c (UPDATE `marc_subfield_structure` SET value_builder = 'EXAMPLE.pl' WHERE frameworkcode = 'B213' AND ( (tagfield = '007' AND tagsubfield = '@') OR ( tagfield LIKE '246' AND tagsubfield = 'h') OR (tagfield = '260' AND tagsubfield = 'c')) 2/ Tested step 2, 3 and 4 of the given test plan above. The missing plugin support in the cloned fields were noted. 3/ Applied patch 4/ Re-tested steps 2, 3 and 4 as before. The defined plugins were correctly cloned and found to be functional. Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>
Created attachment 39291 [details] [review] [PASSED QA] Bug 14213: Cataloging plugin in cloned field does not work A code change for report 10480 in cataloging.js does not work well in case you clone a field with a plugin on a subfield. The events (click, focus, etc.) do not work on the subfield of the clone. This patch corrects the situation by finding the right html element for adding event binding. NOTE: The test plan uses EXAMPLE.pl since many old plugins do not operate on the correct field value when cloning. This is corrected in bug 13437. Test plan: [1] Attach EXAMPLE.pl to field 007, 246h and 260c. In sql for 007: update marc_subfield_structure set value_builder='EXAMPLE.pl' where tagfield='007' and tagsubfield='@'; [2] Clone field 007. Verify that focus and click operate on both fields. Check also that the plugin works on the value corresponding with the button you clicked. [3] Clone field 246. Do the same checks on both subfields $h. [4] Clone subfield 260c. Do the same checks again. Test Remarks: ============ 1/ Setup a new framework (B213) based off 'Default' and fired off an SQL statement to update value_builder values for 007, 246$h and 269$c (UPDATE `marc_subfield_structure` SET value_builder = 'EXAMPLE.pl' WHERE frameworkcode = 'B213' AND ( (tagfield = '007' AND tagsubfield = '@') OR ( tagfield LIKE '246' AND tagsubfield = 'h') OR (tagfield = '260' AND tagsubfield = 'c')) 2/ Tested step 2, 3 and 4 of the given test plan above. The missing plugin support in the cloned fields were noted. 3/ Applied patch 4/ Re-tested steps 2, 3 and 4 as before. The defined plugins were correctly cloned and found to be functional. Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Patch pushed to master. Good catch Marcel!